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

# Obtener

> Obtiene un producto por su ID.



## OpenAPI

````yaml /api/openapi.json get /products/{productId}
openapi: 3.1.0
info:
  title: Riqra API
  version: '1.0'
  contact:
    email: soporte@riqra.com
    url: https://www.riqra.com/
    name: Riqra Support
  description: >-
    Usando nuestra API puedes integrar tu ERP o tu sistema actual de
    administración con [Riqra](https://www.riqra.com/).
servers:
  - url: https://sandbox.api.riqra.com
    description: Sandbox
  - description: Producción
    url: https://api.riqra.com
security:
  - API Key: []
tags:
  - name: Almacenes
  - name: Banners
  - name: Categorías
  - name: Clientes
  - name: Clientes - Direcciones
  - name: Cobertura
  - name: Comercio
  - name: Cupones
  - name: Inventario
  - name: Líneas de Crédito
  - name: Lista de Precios
  - name: Lista de Precios - Precios
  - name: Marcas
  - name: Pedidos
  - name: Productos
  - name: Productos Sugeridos
  - name: Promociones
  - name: Stock
  - name: Subcategorías
  - name: Variantes
paths:
  /products/{productId}:
    parameters:
      - schema:
          type: string
        name: productId
        in: path
        required: true
        description: ID del producto.
    get:
      tags:
        - Productos
      summary: Obtener
      description: Obtiene un producto por su ID.
      operationId: get-products-productId
      parameters: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductResponseItem'
        '404':
          description: Not Found
components:
  schemas:
    ProductResponseItem:
      title: ProductResponseItem
      type: object
      description: ''
      properties:
        data:
          $ref: '#/components/schemas/Product'
    Product:
      title: Product
      type: object
      x-examples: {}
      properties:
        id:
          $ref: '#/components/schemas/ProductId'
        name:
          $ref: '#/components/schemas/ProductName'
        description:
          $ref: '#/components/schemas/ProductDescription'
        shortDescription:
          type: string
          description: Breve descripción o presentación del producto.
        seo:
          $ref: '#/components/schemas/ProductSeo'
        isPublished:
          $ref: '#/components/schemas/ProductIsPublished'
        isFeatured:
          $ref: '#/components/schemas/ProductIsFeatured'
        order:
          $ref: '#/components/schemas/ProductOrder'
        extraFields:
          $ref: '#/components/schemas/ProductExtraFields'
        mainVariant:
          $ref: '#/components/schemas/ProductVariant'
        subcategories:
          type: array
          description: Lista de IDs de las categorías a las que pertenece el producto.
          items:
            type: integer
        attributes:
          type: array
          description: >-
            Atributos que rigen las definiciones de los atributos de las
            variantes, incluida la principal.
          items:
            type: string
      required:
        - id
        - name
        - description
        - seo
        - isPublished
        - isFeatured
        - order
        - extraFields
        - mainVariant
        - subcategories
        - attributes
    ProductId:
      type: integer
      title: ProductId
      format: int64
      description: ID del producto.
    ProductName:
      title: ProductName
      description: Nombre del producto.
      type: string
    ProductDescription:
      title: ProductDescription
      type: string
      description: Detalles sobre el producto, puede ser contenido HTML.
    ProductSeo:
      title: ProductSeo
      type: object
      description: Atributos para el SEO.
      properties:
        title:
          type: string
          description: Título del producto para el SEO.
        description:
          type: string
          description: Descripción de la categoría para el SEO.
    ProductIsPublished:
      title: ProductIsPublic
      description: Indica si el producto debe mostrarse o no.
      type: boolean
    ProductIsFeatured:
      title: ProductIsFeatured
      type: boolean
      description: Indica si el producto será destacado.
    ProductOrder:
      type: integer
      title: ProductOrder
      description: Orden del producto entre a todos los demás productos.
      format: int64
    ProductExtraFields:
      title: ProductExtraFields
      description: Objeto JSON válido de campos adicionales.
      type: object
    ProductVariant:
      title: ProductVariant
      type: object
      properties:
        id:
          $ref: '#/components/schemas/Id'
        sku:
          $ref: '#/components/schemas/ProductVariantSku'
        erpCode:
          type: string
        price:
          type: number
          format: float
          description: Precio de la lista de precios por defecto.
        priceIsTaxExempt:
          type: boolean
          description: >-
            Indica si el precio de la variante está o no exento del cálculo de
            impuestos.
        stock:
          type: integer
          format: int64
          description: Stock del almacén por defecto.
        salesUnitFactor:
          $ref: '#/components/schemas/ProductVariantSalesUnitFactor'
        jumpFactor:
          $ref: '#/components/schemas/ProductVariantJumpFactor'
        images:
          $ref: '#/components/schemas/ProductImages'
        order:
          type: integer
          description: >-
            Orden de variantes entre todas las demás variantes, si existe más de
            una.
        attributes:
          type: array
          description: >-
            Atributos con sus valores que siguen los nombres dictados por el
            producto padre (principal).
          uniqueItems: true
          items:
            type: object
            properties:
              name:
                type: string
              value:
                type: string
        extraFields:
          $ref: '#/components/schemas/ProductExtraFields'
        weight:
          type: number
          description: Peso de la variante.
        length:
          type: number
          description: Largura de la variante.
        width:
          type: number
          description: Anchura de la variante.
        height:
          type: number
          description: Altura de la variante.
      required:
        - id
        - sku
        - erpCode
        - price
        - stock
        - images
        - order
    Id:
      title: Id
      type: integer
      description: ID del recurso.
    ProductVariantSku:
      title: ProductVariantSku
      description: SKU(Stock Keeping Unit) de la variante del producto.
      type: string
    ProductVariantSalesUnitFactor:
      type: number
      title: ProductVariantSalesUnitFactor
      x-examples: {}
      description: |-
        La cantidad de ventas de este producto es un múltiplo de este valor.

        El valor debe tener como máximo 2 valores decimales.
      default: 1
      format: float
      exclusiveMinimum: 0
      examples:
        - 3.14
    ProductVariantJumpFactor:
      type: integer
      title: ProductVariantJumpFactor
      x-examples: {}
      description: >-
        JumpFactor de un producto: es un múltiplo en el que saltará el contador.
        Ejemplo: si jumpFactor es 4, la cantidad mínima a comprar será 4,
        entonces el contador pasará de 4 a 8, de 8 a 12 y así sucesivamente.


        El valor debe ser un número entero positivo.
      default: 1
      format: int64
      minimum: 1
      examples:
        - 4
    ProductImages:
      title: ProductImages
      type: array
      maxItems: 5
      items:
        type: object
        properties:
          url:
            $ref: '#/components/schemas/ImageUrl'
          order:
            type: integer
            description: Orden de la imagen respecto a las otras imágenes.
        required:
          - url
    ImageUrl:
      type: string
      title: ImageUrl
      format: uri
      description: URL válida de la imagen.
  securitySchemes:
    API Key:
      name: api-key
      type: apiKey
      in: header
      description: >-
        Todas las llamadas al API tienen que contener este header junto a la
        clave para poder autenticar y autorizar al cliente.

````