> ## Documentation Index
> Fetch the complete documentation index at: https://docs.x-mart.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Este endpoint permite agregar una lista al sistema

> This endpoint allows you to add a list in the system. Important: Each submitted request is processed as a new configuration, so if a product, category, modifier, etc. is not sent all your configuration will be deleted.



## OpenAPI

````yaml POST /api/v3/products
openapi: 3.0.1
info:
  title: Api V3 documentación
  description: >-
    A sample API that uses a plant store as an example to demonstrate features
    in the OpenAPI specification
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.artisn.desarrollo-redbrand.com/api
  - url: https://api.kfc-group.desarrollo-redbrand.com
  - url: https://{apiId}.execute-api.{region}.amazonaws.com/{stage}
    description: API Gateway (PRIVATE; invocación típica vía VPC endpoint).
    variables:
      apiId:
        default: '{api-id}'
        description: ID del API REST desplegado.
      region:
        default: us-east-1
      stage:
        default: dev
        description: Mismo valor que parámetro EnvironmentName del stack.
security:
  - bearerAuth: []
paths:
  /api/v3/products:
    post:
      summary: Add a product list
      description: >-
        This endpoint allows you to add a list in the system. Important: Each
        submitted request is processed as a new configuration, so if a product,
        category, modifier, etc. is not sent all your configuration will be
        deleted.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                list:
                  type: object
                  description: >-
                    General information of the list where the defined products
                    will be added
                  properties:
                    listName:
                      type: string
                      description: Name that identifies the list
                modifierGroups:
                  type: array
                  description: >-
                    Allows you to define a list of modifiers that will be used
                    in the list
                  items:
                    type: object
                    properties:
                      modifierId:
                        type: string
                      modifier:
                        type: string
                      minOptions:
                        type: integer
                      maxOptions:
                        type: integer
                      visible:
                        type: boolean
                      position:
                        type: integer
                      type:
                        type: string
                      modifierOptions:
                        type: array
                        items:
                          type: object
                          properties:
                            optionId:
                              type: string
                            productId:
                              type: string
                            default:
                              type: boolean
                            position:
                              type: integer
                            additionalInfo:
                              type: object
                              additionalProperties: true
                              description: Additional information using key-value pairs
                products:
                  type: array
                  description: >-
                    Allows you to define the products or items, as well as their
                    organization in the list
                  items:
                    type: object
                    properties:
                      productId:
                        type: string
                      name:
                        type: string
                      type:
                        type: string
                        enum:
                          - PRODUCT
                          - MODIFIER
                          - COMPLEMENT
                      description:
                        type: string
                      standardTime:
                        type: boolean
                      featured:
                        type: boolean
                      modifierId:
                        type: string
                      taxesInfo:
                        type: array
                        items:
                          type: object
                          properties:
                            vatRatePercentage:
                              type: integer
                            name:
                              type: string
                            type:
                              type: string
                      priceInfo:
                        type: object
                        properties:
                          price:
                            type: number
                          pointPrice:
                            type: integer
                          suggestedPrice:
                            type: number
                          suggestedPointPrice:
                            type: integer
                      schedules:
                        type: array
                        items:
                          type: object
                          properties:
                            day:
                              type: string
                              enum:
                                - MONDAY
                                - TUESDAY
                                - WEDNESDAY
                                - THURSDAY
                                - FRIDAY
                                - SATURDAY
                                - SUNDAY
                                - SPECIAL
                            startDate:
                              type: string
                              format: date
                            endDate:
                              type: string
                              format: date
                            startTime:
                              type: string
                              format: time
                            endTime:
                              type: string
                              format: time
                      upselling:
                        type: array
                        items:
                          type: string
                        description: Set of unique product identifiers used in the upsell
                      crossSelling:
                        type: array
                        items:
                          type: string
                        description: >-
                          Set of unique product identifiers used in
                          cross-selling
                      tags:
                        type: array
                        items:
                          type: string
                        description: Allows you to assign tags to the product
                      images:
                        type: array
                        items:
                          type: object
                          properties:
                            imageCategoryId:
                              type: string
                            fileUrl:
                              type: string
                      productModifiers:
                        type: array
                        description: Allows you to associate modifiers to the product
                        items:
                          type: object
                          properties:
                            modifierId:
                              type: string
                            position:
                              type: integer
                      additionalInfo:
                        type: object
                        additionalProperties: true
                        description: >-
                          Allows you to define additional information using
                          key-value pairs
                categories:
                  type: array
                  description: >-
                    Allows you to define product categories as well as their
                    organization in the list
                  items:
                    type: object
                    properties:
                      categoryId:
                        type: string
                      categoryName:
                        type: string
                      displayInList:
                        type: boolean
                      featured:
                        type: boolean
                      crossSellingCategory:
                        type: boolean
                      position:
                        type: integer
                      images:
                        type: array
                        items:
                          type: object
                          properties:
                            imageCategoryId:
                              type: string
                            fileUrl:
                              type: string
                      childCategories:
                        type: array
                        items:
                          type: object
                          properties:
                            categoryId:
                              type: string
                            categoryName:
                              type: string
                      productListing:
                        type: array
                        items:
                          type: object
                          properties:
                            productId:
                              type: string
                            position:
                              type: integer
                      schedules:
                        type: array
                        items:
                          type: object
                          properties:
                            day:
                              type: string
                            startDate:
                              type: string
                            endDate:
                              type: string
                            startTime:
                              type: string
                            endTime:
                              type: string
                ecommerceChannelId:
                  type: integer
                  description: >-
                    Unified sales channel identifier, refers to the standardized
                    channel identifier
                channelReferenceName:
                  type: string
                  description: >-
                    Unique reference name, used for search and association of
                    the standardized channel.
      responses:
        '200':
          description: List successfully registered
          content:
            application/json:
              schema:
                type: object
                properties:
                  listId:
                    type: string
                  name:
                    type: string
                  active:
                    type: boolean
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````