Skip to content

pos-get-variant-detail

Method: GET
Path: /pos/catalog/products/{product_id}/variants/{variant_id}

Tags: POS

Summary

Retrieve variant detail

Description

Retrieves the details of a particular variant. Supply the unique product ID, and variant ID.

Pos SDK Usage

SDK Method: pos.getVariantDetail()

Example:

typescript
const { data, error } = await pos.getVariantDetail(
  {
    product_id: "prod_123",
    variant_id: "var_456"
  }
);

if (error) {
  console.error("Failed to get variant details:", error.message);
} else {
  console.log("Variant:", data.variant.name);
  console.log("SKU:", data.variant.sku);
  console.log("Price:", data.variant.price);
  console.log("Stock:", data.variant.stock);
}

// Override customer group ID for this specific request
const { data: overrideData, error: overrideError } = await pos.getVariantDetail(
  {
    product_id: "prod_123",
    variant_id: "var_456"
  },
  {
    "x-customer-group-id": "wholesale_customers" // Override default SDK config
  }
);

TypeScript Definition

typescript
"pos-get-variant-detail": {
        parameters: {
            query?: {
                /** @description Determines whether to include or exlude inventory details in response json */
                inventory?: boolean;
            };
            header?: {
                /** @description This param is used to determine product pricing, promotions, and subscription rates.  If a valid customer group id is provided, pricing details will be retrieved accordingly.  If no matching data is found for the specified customer group id, the system will fall back to the default customer group id.  If no data is found for the default group either, the highest applicable price will be returned. */
                "x-customer-group-id"?: components["parameters"]["CustomerGroupId"];
            };
            path: {
                /** @description product id */
                product_id: string;
                /** @description variant id */
                variant_id: string;
            };
            cookie?: never;
        };
        requestBody?: never;
        responses: {
            /** @description Success response */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": {
                        /** @example Products retrieved successfully. */
                        message: string;
                        success: boolean;
                        content: {
                            variant: components["schemas"]["VariantDetail"];
                        };
                    };
                };
            };
            401: components["responses"]["Unauthorized"];
            404: components["responses"]["NotFound"];
        };
    };

Component References

ReferenceResolves To
components["parameters"]["CustomerGroupId"]CustomerGroupId
components["schemas"]["VariantDetail"]VariantDetail
components["responses"]["Unauthorized"]Unauthorized
components["responses"]["NotFound"]NotFound

Parameters

  • x-customer-group-id (header): This param is used to determine product pricing, promotions, and subscription rates. If a valid customer group id is provided, pricing details will be retrieved accordingly. If no matching data is found for the specified customer group id, the system will fall back to the default customer group id. If no data is found for the default group either, the highest applicable price will be returned.
  • inventory (query): Determines whether to include or exlude inventory details in response json
  • product_id (path): product id
  • variant_id (path): variant id

Responses

200

Success response

401

Not authorized for given operation on the Resource

404

Requested resource not found

OpenAPI Definition

json
{
  "tags": [
    "POS"
  ],
  "operationId": "pos-get-variant-detail",
  "summary": "Retrieve variant detail",
  "description": "Retrieves the details of a particular variant. Supply the unique product ID, and variant ID.",
  "parameters": [
    {
      "$ref": "#/components/parameters/CustomerGroupId"
    },
    {
      "name": "inventory",
      "in": "query",
      "description": "Determines whether to include or exlude inventory details in response json",
      "schema": {
        "type": "boolean"
      }
    },
    {
      "name": "product_id",
      "in": "path",
      "description": "product id",
      "required": true,
      "schema": {
        "type": "string",
        "examples": [
          "01H7YK0C86V9PGT0HXRJVEZXJQ"
        ]
      }
    },
    {
      "name": "variant_id",
      "in": "path",
      "description": "variant id",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "description": "Success response",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "message",
              "success",
              "content"
            ],
            "properties": {
              "message": {
                "type": "string",
                "examples": [
                  "Products retrieved successfully."
                ]
              },
              "success": {
                "type": "boolean"
              },
              "content": {
                "properties": {
                  "variant": {
                    "$ref": "#/components/schemas/VariantDetail"
                  }
                },
                "required": [
                  "variant"
                ],
                "type": "object"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "404": {
      "$ref": "#/components/responses/NotFound"
    }
  },
  "security": [
    {
      "Authorization": []
    }
  ],
  "x-speakeasy-group": "pos",
  "x-speakeasy-ignore": true,
  "x-speakeasy-name-override": "getVariantDetail"
}

Auto-generated from OpenAPI spec and TypeScript definitions

Last updated: