---
title: "Specify variant for pricing rules"
description: "Specify company location catalog variant to query pricing rules."
doc_type: openapi
doc_category: openapi
doc_version: v20270301
source_url:
  html: 'https://developer.shopline.com/docs/admin-rest-api/product/catalog/specify-variant-for-pricing-rules'
  md: 'https://developer.shopline.com/docs/admin-rest-api/product/catalog/specify-variant-for-pricing-rules.md'
---
# Specify variant for pricing rules

Specify company location catalog variant to query pricing rules.

- **Base URL:** `https://{handle}.myshopline.com/admin/openapi`
- **Required Scopes:** `read_products`
- **API Version:** v20270301
- **API Type:** Admin
- **API Protocol:** RESTful

## Endpoint

```http
GET /company_location_catalog/:catalog_id/:variant_id.json
```

## Base URL

* `https://{handle}.myshopline.com/admin/openapi`

  * `{handle}`: `handle` : The store's unique identifier, which is the prefix of the store's domain name. For example, if a store's domain name is `open001.myshopline.com` , the store handle is `open001` .

## Required Permissions

* `read_products`

## Request

### Path Parameters

* `catalog_id`

  string (required)

  The ID of company location catalog.

* `variant_id`

  string (required)

  The ID of the variant in the catalog.

### Request Headers

* `Content-Type`

  string (required)

  The field must be set to the fixed value `application/json; charset=utf-8`.

* `Authorization`

  string (required)

   The access token for the API resource. Refer to [App authorization](https://developer.shopline.com/docs/apps/api-instructions-for-use/app-authorization.md?lang=en) to obtain the access token, and then pass the obtained token in the Bearer format. 

## Response

### Status Codes

* `200`

  For the complete list of codes and messages, see [Http status code](https://developer.shopline.com/docs/apps/api-instructions-for-use/http-status-code.md?lang=en).

* `401`

  

* `429`

  

### Response Headers

* `traceId`

  A globally unique identifier for the request. It is used to track the request flow throughout the system, allowing for easy location and debugging when issues arise.

### Response Body

#### 200

* `percent`

  integer

  The adjustment value based on `percent_type`, formatted as a percentage.
  - When decreasing the price, the value is limited to 0-100.
  - When increasing the price, the value is limited to 0-10,000.

* `percent_type`

  integer

  The type of percentage adjustment, with a value of `1` for decreasing the price and a value of `2` for increasing the price.

* `price`

  string

  Fixed price

* `price_adjustment_method`

  integer

  The type of price adjustment, with a value of `1` for percentage and a value of `2` for fixed price (default).

* `quantity_price_breaks`

  array<object>

  Gradient pricing list.

  * `price`

    string

    Fixed price, valid only when `price_adjustment_method=2`.

  * `minimum_qty`

    integer

    Gradient-based minimum purchase quantity.

  * `percent`

    integer

    The adjustment value based on `percent_type`, formatted as a percentage.
    - When decreasing the price, the value is limited to 0-100.
    - When increasing the price, the value is limited to 0-10,000.

  * `percent_type`

    integer

    The type of percentage adjustment, with a value of `1` for decreasing the price and a value of `2` for increasing the price.

* `quantity_rules`

  object

  Rules for purchase quantity

  * `minimum`

    integer

    Minimum purchase quantity.

  * `increment`

    integer

    Purchase quantity increment where each increase must be a multiple of the increment.

  * `maximum`

    integer

    Maximum purchase quantity.

* `variant_id`

  string

  The ID of the variant in the catalog.


#### 401

* `errors`

  string

  Error message. 


#### 429

* `errors`

  string

  Error message. 


## OpenAPI Definition

```json
{
  "description": "Specify company location catalog variant to query pricing rules.",
  "externalDocs": {
    "description": "Permission point used by the interface is `read_products` , For more information about the use of permission points, see",
    "url": "ec20/3cv5d7wpfgr6a8z5/xabczf5442284vkq?lang=en",
    "errorTableDescription": ""
  },
  "operationId": "LCnBK94M",
  "parameters": [
    {
      "name": "catalog_id",
      "in": "path",
      "description": "The ID of company location catalog.",
      "required": true,
      "style": "simple",
      "schema": {
        "name": "catalog_id",
        "description": "The ID of company location catalog.",
        "type": "string",
        "example": "6598087148213149672"
      },
      "example": "6598087148213149672"
    },
    {
      "name": "variant_id",
      "in": "path",
      "description": "The ID of the variant in the catalog.",
      "required": true,
      "style": "simple",
      "schema": {
        "name": "variant_id",
        "description": "The ID of the variant in the catalog.",
        "type": "string",
        "example": "18064649853096752677070520"
      },
      "example": "18064649853096752677070520"
    },
    {
      "name": "Content-Type",
      "in": "header",
      "description": "The field must be set to the fixed value `application/json; charset=utf-8`.",
      "required": true,
      "style": "string",
      "schema": {
        "name": "Content-Type",
        "type": "string",
        "example": "application/json; charset=utf-8"
      }
    },
    {
      "name": "Authorization",
      "in": "header",
      "description": " The access token for the API resource. Refer to [App authorization](https://developer.shopline.com/docs/apps/api-instructions-for-use/app-authorization.md?lang=en) to obtain the access token, and then pass the obtained token in the Bearer format. ",
      "required": true,
      "style": "string",
      "schema": {
        "name": "Authorization",
        "description": " The access token for the API. Please refer to [App authorization](https://developer.shopline.com/docs/apps/api-instructions-for-use/app-authorization.md?lang=en) to obtain the access token, and then put the obtained access token into the API request header in Bearer Token.",
        "type": "string",
        "example": "Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhcHBJZCI6MCwiYXBwS2V5IjoiNzU2ZjI1NWE2NjdlZTcwNTk1MzM0ZjVjYzk4NzU5MzBmN2E3NGZjMSIsImV4cCI6MTg3OTQ4MjA3NiwiaXNzIjoieXNvdWwiLCJzZWxsZXJJZCI6IjIwMDAyMzQ4ODAiLCJzdG9yZUlkIjoiMTY3MjM2OTcyOTYwNiIsInRpbWVzdGFtcCI6MTc4NDc4NzY3NjY2MSwidmVyc2lvbiI6IlYyIn0.3ZzbGAH4cLU1QR2VPEvMOQInUDvus-C4amkINSQIPuNVlXsFKj0sAt1c0KnUy9MWUOFV9cHlkf7J90r2y1FzpA"
      },
      "example": "Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhcHBJZCI6MCwiYXBwS2V5IjoiNzU2ZjI1NWE2NjdlZTcwNTk1MzM0ZjVjYzk4NzU5MzBmN2E3NGZjMSIsImV4cCI6MTg3OTQ4MjA3NiwiaXNzIjoieXNvdWwiLCJzZWxsZXJJZCI6IjIwMDAyMzQ4ODAiLCJzdG9yZUlkIjoiMTY3MjM2OTcyOTYwNiIsInRpbWVzdGFtcCI6MTc4NDc4NzY3NjY2MSwidmVyc2lvbiI6IlYyIn0.3ZzbGAH4cLU1QR2VPEvMOQInUDvus-C4amkINSQIPuNVlXsFKj0sAt1c0KnUy9MWUOFV9cHlkf7J90r2y1FzpA"
    }
  ],
  "responses": {
    "200": {
      "description": "For the complete list of codes and messages, see [Http status code](https://developer.shopline.com/docs/apps/api-instructions-for-use/http-status-code.md?lang=en).",
      "headers": {
        "traceId": {
          "description": "A globally unique identifier for the request. It is used to track the request flow throughout the system, allowing for easy location and debugging when issues arise."
        }
      },
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "percent": {
                "name": "percent",
                "description": "The adjustment value based on `percent_type`, formatted as a percentage.\n- When decreasing the price, the value is limited to 0-100.\n- When increasing the price, the value is limited to 0-10,000.",
                "type": "integer",
                "example": 50
              },
              "percent_type": {
                "name": "percent_type",
                "description": "The type of percentage adjustment, with a value of `1` for decreasing the price and a value of `2` for increasing the price.",
                "type": "integer",
                "example": 1
              },
              "price": {
                "name": "price",
                "description": "Fixed price",
                "type": "string",
                "example": "100"
              },
              "price_adjustment_method": {
                "name": "price_adjustment_method",
                "description": "The type of price adjustment, with a value of `1` for percentage and a value of `2` for fixed price (default).",
                "type": "integer",
                "example": 1
              },
              "quantity_price_breaks": {
                "name": "quantity_price_breaks",
                "description": "Gradient pricing list.",
                "type": "array",
                "items": {
                  "name": "quantity_price_breaks",
                  "description": "Gradient pricing list.",
                  "type": "object",
                  "properties": {
                    "price": {
                      "name": "price",
                      "description": "Fixed price, valid only when `price_adjustment_method=2`.",
                      "type": "string",
                      "example": "100"
                    },
                    "minimum_qty": {
                      "name": "minimum_qty",
                      "description": "Gradient-based minimum purchase quantity.",
                      "type": "integer",
                      "example": 2
                    },
                    "percent": {
                      "name": "percent",
                      "description": "The adjustment value based on `percent_type`, formatted as a percentage.\n- When decreasing the price, the value is limited to 0-100.\n- When increasing the price, the value is limited to 0-10,000.",
                      "type": "integer",
                      "example": 50
                    },
                    "percent_type": {
                      "name": "percent_type",
                      "description": "The type of percentage adjustment, with a value of `1` for decreasing the price and a value of `2` for increasing the price.",
                      "type": "integer",
                      "example": 1
                    }
                  },
                  "example": {
                    "price": "100",
                    "minimum_qty": 2,
                    "percent": 50,
                    "percent_type": 1
                  }
                },
                "example": [
                  {
                    "price": "100",
                    "minimum_qty": 2,
                    "percent": 50,
                    "percent_type": 1
                  }
                ]
              },
              "quantity_rules": {
                "name": "quantity_rules",
                "description": "Rules for purchase quantity",
                "type": "object",
                "properties": {
                  "minimum": {
                    "name": "minimum",
                    "description": "Minimum purchase quantity.",
                    "type": "integer",
                    "example": 2
                  },
                  "increment": {
                    "name": "increment",
                    "description": "Purchase quantity increment where each increase must be a multiple of the increment.",
                    "type": "integer",
                    "example": 2
                  },
                  "maximum": {
                    "name": "maximum",
                    "description": "Maximum purchase quantity.",
                    "type": "integer",
                    "example": 8
                  }
                },
                "example": {
                  "increment": 2,
                  "maximum": 8,
                  "minimum": 2
                }
              },
              "variant_id": {
                "name": "variant_id",
                "description": "The ID of the variant in the catalog.",
                "type": "string",
                "example": "18064649853096752677070520"
              }
            },
            "example": {
              "quantity_rules": {
                "increment": 2,
                "maximum": 8,
                "minimum": 2
              },
              "variant_id": "18064649853096752677070520",
              "percent": 50,
              "percent_type": 1,
              "price": "100",
              "price_adjustment_method": 1,
              "quantity_price_breaks": [
                {
                  "minimum_qty": 2,
                  "percent": 50,
                  "percent_type": 1,
                  "price": "100"
                }
              ]
            }
          }
        }
      }
    },
    "401": {
      "headers": {
        "traceId": {
          "description": "A globally unique identifier for the request. It is used to track the request flow throughout the system, allowing for easy location and debugging when issues arise."
        }
      },
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "errors": {
                "description": "Error message. ",
                "type": "string"
              }
            },
            "required": [
              "errors"
            ]
          }
        }
      }
    },
    "429": {
      "headers": {
        "traceId": {
          "description": "A globally unique identifier for the request. It is used to track the request flow throughout the system, allowing for easy location and debugging when issues arise."
        }
      },
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "errors": {
                "description": "Error message. ",
                "type": "string"
              }
            },
            "required": [
              "errors"
            ]
          }
        }
      }
    }
  },
  "security": [
    {
      "oauth2": []
    }
  ],
  "method": "get",
  "path": "/company_location_catalog/:catalog_id/:variant_id.json",
  "servers": [
    {
      "url": "https://{handle}.myshopline.com/admin/openapi",
      "variables": {
        "handle": {
          "default": "openapiceshidianpu",
          "description": "`handle` : The store's unique identifier, which is the prefix of the store's domain name. For example, if a store's domain name is `open001.myshopline.com` , the store handle is `open001` ."
        }
      }
    }
  ],
  "info": {
    "title": "Specify variant for pricing rules",
    "version": "v20270301"
  },
  "authIndexes": [
    "read_products"
  ]
}
```