---
title: "Get catalog products"
description: "Retrieve the list of products published in the catalog."
doc_type: openapi
doc_category: openapi
doc_version: v20270301
source_url:
  html: 'https://developer.shopline.com/docs/admin-rest-api/product/catalog/get-catalog-products'
  md: 'https://developer.shopline.com/docs/admin-rest-api/product/catalog/get-catalog-products.md'
---
# Get catalog products

Retrieve the list of products published in the catalog.

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

## Endpoint

```http
GET /company_location_catalog/:catalog_id/products.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_product_listings`

## Request

### Path Parameters

* `catalog_id`

  string (required)

  The ID of company location catalog.

### Query Parameters

* `limit`

  integer (optional)

  Limit the number of queries. The default value is 50 and the value cannot exceed 250.

* `page_info`

  string (optional)

  The unique identifier for pagination queries, used to locate a specific page. 
  
  This parameter value is obtained from the `link` value in the response header of this API after you have queried the pagination information. 
  
  For example, if the `link` value you obtained is `<https://{handle}.myshopline.com/admin/openapi/{version}/company_location_catalog/:catalog_id/products.json?limit=1&page_info=eyJzaW5jZUlkIjoiMTYwNTc1OTAxNTM4OTA4Mjk1MjExMTI3ODgiLCJkaXJlY3Rpb24iOiJuZXh0IiwibGltaXQiOjF9>; rel="next"` , the value of `page_info` is `eyJzaW5jZUlkIjoiMTYwNTc1OTAxNTM4OTA4Mjk1MjExMTI3ODgiLCJkaXJlY3Rpb24iOiJuZXh0IiwibGltaXQiOjF9` . 
  For more information on how to use pagination, refer to [Paging Mechanism](https://developer.shopline.com/docs/apps/api-instructions-for-use/paging-mechanism.md).

### 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.

* `link`

  The URL link that provides the pagination data. You can obtain `page_info` from this parameter for subsequent pagination requests. 
  
  This parameter is returned when the requested page has a previous or next page. 
  
  For more information on how to use pagination, refer to [Paging Mechanism](https://developer.shopline.com/docs/apps/api-instructions-for-use/paging-mechanism.md).

### Response Body

#### 200

* `individual_price_products_count`

  integer

  Number of products with tiered pricing.

* `product_ids`

  array<string>

  List of published product IDs

* `products_count`

  integer

  Total number of published products in the catalog.


#### 401

* `errors`

  string

  Error message. 


#### 429

* `errors`

  string

  Error message. 


## OpenAPI Definition

```json
{
  "description": "Retrieve the list of products published in the catalog.",
  "externalDocs": {
    "description": "Permission point used by the interface is `read_product_listings` , For more information about the use of permission points, see",
    "url": "ec20/3cv5d7wpfgr6a8z5/xabczf5442284vkq?lang=en",
    "errorTableDescription": ""
  },
  "operationId": "784I1Wgx",
  "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": "limit",
      "in": "query",
      "description": "Limit the number of queries. The default value is 50 and the value cannot exceed 250.",
      "style": "form",
      "explode": true,
      "schema": {
        "name": "limit",
        "description": "Limit the number of queries. The default value is 50 and the value cannot exceed 250.",
        "type": "integer",
        "example": 100
      },
      "example": 100
    },
    {
      "name": "page_info",
      "in": "query",
      "description": "The unique identifier for pagination queries, used to locate a specific page. \n\nThis parameter value is obtained from the `link` value in the response header of this API after you have queried the pagination information. \n\nFor example, if the `link` value you obtained is `<https://{handle}.myshopline.com/admin/openapi/{version}/company_location_catalog/:catalog_id/products.json?limit=1&page_info=eyJzaW5jZUlkIjoiMTYwNTc1OTAxNTM4OTA4Mjk1MjExMTI3ODgiLCJkaXJlY3Rpb24iOiJuZXh0IiwibGltaXQiOjF9>; rel=\"next\"` , the value of `page_info` is `eyJzaW5jZUlkIjoiMTYwNTc1OTAxNTM4OTA4Mjk1MjExMTI3ODgiLCJkaXJlY3Rpb24iOiJuZXh0IiwibGltaXQiOjF9` . \nFor more information on how to use pagination, refer to [Paging Mechanism](https://developer.shopline.com/docs/apps/api-instructions-for-use/paging-mechanism.md).",
      "style": "form",
      "explode": true,
      "schema": {
        "name": "page_info",
        "description": "The caller does not need to use and care about this field, which is automatically encapsulated by SHOPLINE.",
        "type": "string",
        "example": "eyJzaW5jZUlkIjoiMTYwNTc4NTY3NjcxMTc3MDcyNTEwNjAyODIiLCJkaXJlY3Rpb24iOiJuZXh0In0="
      },
      "example": "eyJzaW5jZUlkIjoiMTYwNTc4NTY3NjcxMTc3MDcyNTEwNjAyODIiLCJkaXJlY3Rpb24iOiJuZXh0In0="
    },
    {
      "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."
        },
        "link": {
          "description": "The URL link that provides the pagination data. You can obtain `page_info` from this parameter for subsequent pagination requests. \n\nThis parameter is returned when the requested page has a previous or next page. \n\nFor more information on how to use pagination, refer to [Paging Mechanism](https://developer.shopline.com/docs/apps/api-instructions-for-use/paging-mechanism.md).",
          "example": "<https://{handle}.myshopline.com/admin/openapi/{version}/company_location_catalog/:catalog_id/products.json?limit=20&page_info=eyJzaW5jZUlkIjoiMTYwNTc1OTAxNTM4OTA4Mjk1MjExMTI3ODgiLCJkaXJlY3Rpb24iOiJuZXh0IiwibGltaXQiOjF9>; rel=\"previous\",<https://{handle}.myshopline.com/admin/openapi/{version}/company_location_catalog/:catalog_id/products.json?limit=20&page_info=eyJzaW5jZUlkIjoiMTYwNTc1OTAxNTM4OTA4Mjk1MjExMTI3ODgiLCJkaXJlY3Rpb24iOiJwcmUiLCJsaW1pdCI6MX0=>; rel=\"next\""
        }
      },
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "individual_price_products_count": {
                "name": "individual_price_products_count",
                "description": "Number of products with tiered pricing.",
                "type": "integer",
                "example": 1
              },
              "product_ids": {
                "name": "product_ids",
                "description": "List of published product IDs",
                "type": "array",
                "items": {
                  "name": "product_ids",
                  "description": "List of published product IDs",
                  "type": "string",
                  "example": "16064649853088531841170520"
                },
                "example": [
                  "16064649853088531841170520"
                ]
              },
              "products_count": {
                "name": "products_count",
                "description": "Total number of published products in the catalog.",
                "type": "integer",
                "example": 20
              }
            },
            "example": {
              "individual_price_products_count": 1,
              "product_ids": [
                "16064649853088531841170520"
              ],
              "products_count": 20
            }
          }
        }
      }
    },
    "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/products.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": "Get catalog products",
    "version": "v20270301"
  },
  "authIndexes": [
    "read_product_listings"
  ]
}
```