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

# Product Details

> Fetch detailed information about a product from a given URL. Requests are async by default, or use mode=sync to wait up to 30 seconds for completion.



## OpenAPI

````yaml https://app.stainless.com/api/spec/documented/henry-sdk/openapi.documented.yml post /product/details
openapi: 3.1.0
info:
  title: Henry Labs API
  version: 1.5.0
  description: Playground for Henry Labs API endpoints
  contact:
    name: Henry Labs API Support
    email: support@henrylabs.ai
servers:
  - url: https://api.henrylabs.ai/v1
    description: Production server
security:
  - ApiKeyAuth: []
tags:
  - name: Product
    description: Product search, details, and data enrichment
  - name: Cart
    description: Universal user shopping cart management
  - name: Orders
    description: Order management post purchase
  - name: Merchants
    description: Merchant information and status
  - name: Card
    description: Card tokenization and management
paths:
  /product/details:
    post:
      tags:
        - Product
      summary: Product Details
      description: >-
        Fetch detailed information about a product from a given URL. Requests
        are async by default, or use mode=sync to wait up to 30 seconds for
        completion.
      operationId: productDetails
      requestBody:
        content:
          application/json:
            example:
              link: https://www.nike.com/u/custom-nike-ja-3-by-you-10002205
              variant:
                size: '10'
                color: Black
              country: US
              mode: async
            schema:
              $ref: '#/components/schemas/productDetailsInput'
      responses:
        '201':
          description: >-
            Product details queued successfully, use refId to check status and
            retrieve results
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/productDetailsStatusResponse'
        '400':
          description: Bad request - Invalid parameters
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  status:
                    type: string
                  message:
                    type: string
                required:
                  - success
                  - status
                  - message
                additionalProperties: false
        '401':
          description: Unauthorized - Invalid API key
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  status:
                    type: string
                  message:
                    type: string
                required:
                  - success
                  - status
                  - message
                additionalProperties: false
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: JavaScript
          source: |-
            import HenrySDK from '@henrylabs/sdk';

            const client = new HenrySDK({
              apiKey: process.env['HENRY_SDK_API_KEY'], // This is the default and can be omitted
            });

            const response = await client.products.details({
              link: 'https://www.nike.com/u/custom-nike-ja-3-by-you-10002205',
              country: 'US',
              mode: 'async',
            });

            console.log(response.refId);
components:
  schemas:
    productDetailsInput:
      type: object
      properties:
        mode:
          description: >-
            Response mode. Use sync to wait up to 30 seconds for the backing
            worker flow to complete.
          example: async
          type: string
          enum:
            - async
            - sync
        link:
          type: string
          format: uri
          description: Direct product URL
          example: https://www.nike.com/u/custom-nike-ja-3-by-you-10002205
        selectedOptions:
          description: >-
            An ordered array of option values to select for the product. Will be
            selected in the order listed.
          example:
            - regular
            - black
            - 10-w
          type: array
          items:
            type: string
        country:
          description: Country code for the product's location
          example: US
          type: string
        skipCache:
          default: false
          description: >-
            When true, bypass any cached product details and force a fresh
            fetch. Fresh results still repopulate the cache.
          example: false
          type: boolean
      required:
        - link
    productDetailsStatusResponse:
      type: object
      properties:
        refId:
          type: string
          pattern: ^[a-zA-Z]{3}-ref_[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[0-9a-f]{4}$
        status:
          type: string
          enum:
            - pending
            - processing
            - complete
            - failed
        result:
          $ref: '#/components/schemas/productDetailsResponseData'
        error:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
      required:
        - refId
        - status
      additionalProperties: false
    productDetailsResponseData:
      type: object
      properties:
        link:
          type: string
          format: uri
        merchant:
          type: string
        host:
          type: string
        sku:
          type: string
        name:
          type: string
        description:
          type: string
        images:
          type: array
          items:
            type: object
            properties:
              isFeatured:
                type: boolean
              url:
                type: string
            required:
              - url
            additionalProperties: false
        price:
          type: object
          properties:
            value:
              type: number
            currency:
              type: string
              enum:
                - USD
                - EUR
                - AUD
                - SGD
                - TWD
                - GBP
                - CAD
                - MXN
                - NPR
                - INR
                - DKK
                - NOK
                - SEK
                - CHF
                - PLN
                - CZK
                - JPY
                - NZD
                - HKD
          required:
            - value
            - currency
          additionalProperties: false
        originalPrice:
          type: object
          properties:
            value:
              type: number
            currency:
              type: string
              enum:
                - USD
                - EUR
                - AUD
                - SGD
                - TWD
                - GBP
                - CAD
                - MXN
                - NPR
                - INR
                - DKK
                - NOK
                - SEK
                - CHF
                - PLN
                - CZK
                - JPY
                - NZD
                - HKD
          required:
            - value
            - currency
          additionalProperties: false
        availability:
          type: string
          enum:
            - in_stock
            - limited_stock
            - out_of_stock
            - preorder
            - backorder
        options:
          $ref: '#/components/schemas/__schema0'
        reviews:
          type: object
          properties:
            rating:
              type: number
            count:
              type: integer
              minimum: -9007199254740991
              maximum: 9007199254740991
            histogram:
              type: array
              items:
                type: object
                properties:
                  stars:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                  count:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                required:
                  - stars
                  - count
                additionalProperties: false
            criticRatings:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                  rating:
                    type: string
                  link:
                    type: string
                required:
                  - name
                  - rating
                additionalProperties: false
            userReviews:
              type: array
              items:
                type: object
                properties:
                  title:
                    type: string
                  text:
                    type: string
                  author:
                    type: string
                  rating:
                    type: number
                  date:
                    type: string
                  source:
                    type: string
                  images:
                    type: array
                    items:
                      type: string
                required:
                  - text
                additionalProperties: false
            insights:
              type: array
              items:
                type: object
                properties:
                  title:
                    type: string
                  snippets:
                    type: array
                    items:
                      type: string
                required:
                  - title
                  - snippets
                additionalProperties: false
          additionalProperties: false
        sections:
          type: array
          items:
            type: object
            properties:
              title:
                type: string
              body:
                type: string
            required:
              - title
              - body
            additionalProperties: false
      required:
        - link
        - merchant
        - host
        - name
      additionalProperties: false
    __schema0:
      anyOf:
        - type: object
          properties:
            status:
              type: string
              const: found
            label:
              type: string
            values:
              type: array
              items:
                type: object
                properties:
                  label:
                    type: string
                  value:
                    type: string
                  availability:
                    type: string
                    enum:
                      - in_stock
                      - limited_stock
                      - out_of_stock
                      - preorder
                      - backorder
                  images:
                    type: array
                    items:
                      type: object
                      properties:
                        isFeatured:
                          type: boolean
                        url:
                          type: string
                          format: uri
                      required:
                        - url
                      additionalProperties: false
                  link:
                    type: string
                  nextOption:
                    $ref: '#/components/schemas/__schema0'
                required:
                  - value
                additionalProperties: false
          required:
            - status
            - values
          additionalProperties: false
        - type: object
          properties:
            status:
              type: string
              const: unknown
            message:
              type: string
          required:
            - status
            - message
          additionalProperties: false
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````