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

# List website products

> Lista productos, categorías y árbol usando el menú guardado en preferences.



## OpenAPI

````yaml get /ordering/customers/{externalCustomerId}/websites/{domain}/products
openapi: 3.1.0
info:
  title: Justo API
  version: 3.0.0
servers:
  - url: https://api.service.getjusto.com/v3
    description: Production server
security: []
paths:
  /ordering/customers/{externalCustomerId}/websites/{domain}/products:
    get:
      tags:
        - Ordering API
      summary: List website products
      description: >-
        Lista productos, categorías y árbol usando el menú guardado en
        preferences.
      operationId: orderingListWebsiteProducts
      parameters:
        - in: path
          name: externalCustomerId
          required: true
          description: ID del customer en el sistema externo. Es independiente por app.
          schema:
            type: string
        - in: path
          name: domain
          required: true
          description: Dominio canónico del website Justo.
          schema:
            type: string
      responses:
        '200':
          description: List website products
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    $ref: '#/components/schemas/OrderingMenuData'
                required:
                  - success
                  - data
        '400':
          description: Invalid request
        '401':
          description: Invalid bearer token
        '404':
          description: Resource not found
      security:
        - bearerAuth: []
components:
  schemas:
    OrderingMenuData:
      type: object
      description: Menú publicado.
      properties:
        menu:
          type: object
          description: Datos del menú.
          properties:
            _id:
              type: string
              description: ID del menú.
            categoryIds:
              type: array
              description: IDs de categorías ordenadas.
              items:
                type: string
                description: ID de categoría.
          additionalProperties: true
        products:
          type: object
          description: Productos indexados por ID.
          additionalProperties:
            $ref: '#/components/schemas/OrderingProduct'
        categories:
          type: object
          description: Categorías indexadas por ID.
          additionalProperties:
            $ref: '#/components/schemas/OrderingProductCategory'
        categoryTree:
          type: array
          description: Árbol de categorías.
          items:
            $ref: '#/components/schemas/OrderingCategoryTreeItem'
      additionalProperties: true
    OrderingProduct:
      type: object
      description: Producto de menú.
      properties:
        _id:
          type: string
          description: ID del producto.
        name:
          type: string
          description: Nombre del producto.
        description:
          oneOf:
            - type: string
              description: Descripción del producto.
            - type: 'null'
          description: Descripción del producto.
        externalId:
          oneOf:
            - type: string
              description: ID externo configurado por el comercio.
            - type: 'null'
          description: ID externo configurado por el comercio.
        priority:
          type: number
          description: Prioridad de ordenamiento.
        informativeStamps:
          oneOf:
            - type: object
              description: Sellos informativos del producto.
              properties: {}
              additionalProperties: true
            - type: 'null'
          description: Sellos informativos del producto.
        availabilityAt:
          type: object
          description: Precio y disponibilidad del producto en el menú consultado.
          properties:
            menuId:
              type: string
              description: ID del menú.
            basePrice:
              type: number
              description: Precio base.
            finalPrice:
              type: number
              description: Precio final.
            available:
              type: boolean
              description: Indica si está disponible.
            visible:
              type: boolean
              description: Indica si está visible.
            notAvailableMessage:
              oneOf:
                - type: string
                  description: Mensaje de no disponibilidad.
                - type: 'null'
              description: Mensaje de no disponibilidad.
            hideDiscountBadge:
              oneOf:
                - type: boolean
                  description: Indica si se oculta el badge de descuento.
                - type: 'null'
              description: Indica si se oculta el badge de descuento.
          additionalProperties: true
        nicknames:
          type: array
          description: Alias de búsqueda del producto.
          items:
            type: string
            description: Alias.
        categories:
          type: array
          description: Categorías del producto.
          items:
            $ref: '#/components/schemas/OrderingProductCategory'
        images:
          type: array
          description: Imágenes del producto.
          items:
            $ref: '#/components/schemas/OrderingImage'
        maxPurchaseQuantity:
          oneOf:
            - type: number
              description: Cantidad máxima por compra.
            - type: 'null'
          description: Cantidad máxima por compra.
        websiteId:
          type: string
          description: ID del website.
        websiteName:
          type: string
          description: Nombre del website.
        menuId:
          type: string
          description: ID del menú consultado.
        urlVideo:
          oneOf:
            - type: string
              description: URL de video del producto.
            - type: 'null'
          description: URL de video del producto.
        modifiers:
          type: array
          description: Modificadores del producto.
          items:
            $ref: '#/components/schemas/OrderingProductModifier'
        altImg:
          oneOf:
            - type: string
              description: Texto alt de imagen.
            - type: 'null'
          description: Texto alt de imagen.
        titleImg:
          oneOf:
            - type: string
              description: Título de imagen.
            - type: 'null'
          description: Título de imagen.
        measurementUnit:
          oneOf:
            - type: string
              description: Unidad de medida.
            - type: 'null'
          description: Unidad de medida.
        measurementValue:
          oneOf:
            - type: number
              description: Valor de medida.
            - type: 'null'
          description: Valor de medida.
        translations:
          oneOf:
            - type: object
              description: Traducciones del producto.
              properties: {}
              additionalProperties: true
            - type: 'null'
          description: Traducciones del producto.
        path:
          type: string
          description: Path del producto dentro del website.
      additionalProperties: true
    OrderingProductCategory:
      type: object
      description: Categoría de menú.
      properties:
        _id:
          type: string
          description: ID de la categoría.
        name:
          type: string
          description: Nombre de la categoría.
        index:
          type: number
          description: Posición de la categoría.
        translations:
          oneOf:
            - type: object
              description: Traducciones de la categoría.
              properties: {}
              additionalProperties: true
            - type: 'null'
          description: Traducciones de la categoría.
      additionalProperties: true
    OrderingCategoryTreeItem:
      type: object
      description: Nodo del árbol de categorías.
      properties:
        _id:
          type: string
          description: ID de la categoría.
        name:
          type: string
          description: Nombre de la categoría.
        subCategories:
          type: array
          description: Subcategorías.
          items:
            $ref: '#/components/schemas/OrderingCategoryTreeItem'
        translations:
          oneOf:
            - type: object
              description: Traducciones de la categoría.
              properties: {}
              additionalProperties: true
            - type: 'null'
          description: Traducciones de la categoría.
      additionalProperties: true
    OrderingImage:
      type: object
      description: Imagen publicada por Justo o por el comercio.
      properties:
        _id:
          type: string
          description: ID de la imagen.
        url:
          type: string
          description: URL original de la imagen.
        colorsData:
          type: object
          description: Colores calculados de la imagen.
          properties:
            blurhash:
              type: string
              description: Blurhash de la imagen.
            background:
              type: string
              description: Color de fondo sugerido.
            front:
              type: string
              description: Color frontal sugerido.
          additionalProperties: true
        dimensions:
          type: object
          description: Dimensiones originales de la imagen.
          properties:
            width:
              type: number
              description: Ancho en pixeles.
            height:
              type: number
              description: Alto en pixeles.
          additionalProperties: true
        resizedData:
          type: object
          description: URLs de versiones redimensionadas.
          properties:
            thumbnailURL:
              type: string
              description: URL thumbnail.
            smallURL:
              type: string
              description: URL pequeña.
            mediumURL:
              type: string
              description: URL mediana.
            largeURL:
              type: string
              description: URL grande.
            extraLargeURL:
              type: string
              description: URL extra grande.
          additionalProperties: true
      additionalProperties: true
    OrderingProductModifier:
      type: object
      description: Modificador de un producto.
      properties:
        _id:
          type: string
          description: ID del modificador.
        name:
          type: string
          description: Nombre del modificador.
        shortName:
          oneOf:
            - type: string
              description: Nombre corto del modificador.
            - type: 'null'
          description: Nombre corto del modificador.
        description:
          oneOf:
            - type: string
              description: Descripción del modificador.
            - type: 'null'
          description: Descripción del modificador.
        isImageModifier:
          type: boolean
          description: Indica si se muestra como modificador visual.
        min:
          type: number
          description: Mínimo de opciones a seleccionar.
        max:
          type: number
          description: Máximo de opciones a seleccionar.
        optional:
          type: boolean
          description: Indica si el modificador es opcional.
        options:
          type: array
          description: Opciones del modificador.
          items:
            $ref: '#/components/schemas/OrderingProductModifierOption'
        translations:
          oneOf:
            - type: object
              description: Traducciones del modificador.
              properties: {}
              additionalProperties: true
            - type: 'null'
          description: Traducciones del modificador.
      additionalProperties: true
    OrderingProductModifierOption:
      type: object
      description: Opción seleccionable de un modificador.
      properties:
        _id:
          type: string
          description: ID de la opción.
        name:
          type: string
          description: Nombre de la opción.
        availabilityAt:
          type: object
          description: Precio y disponibilidad de la opción en el menú.
          properties:
            menuId:
              type: string
              description: ID del menú.
            price:
              type: number
              description: Precio adicional.
            available:
              type: boolean
              description: Indica si está disponible.
          additionalProperties: true
        images:
          type: array
          description: Imágenes de la opción.
          items:
            $ref: '#/components/schemas/OrderingImage'
        max:
          type: number
          description: Máximo seleccionable de esta opción.
        requiresAtLeastOneModifierOption:
          type: boolean
          description: Indica si requiere otra opción seleccionada.
        requiresModifierOptionIds:
          type: array
          description: IDs de opciones requeridas.
          items:
            type: string
            description: ID de opción.
        translations:
          oneOf:
            - type: object
              description: Traducciones de la opción.
              properties: {}
              additionalProperties: true
            - type: 'null'
          description: Traducciones de la opción.
      additionalProperties: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT Token

````