---
title: "List Products"
source_url: https://docs.rapyd.net/en/list-products.html
lang: en
---

# List Products

Retrieve a list of all products.

Use the optional query parameters to filter the results. You can filter the results further by specifying one or more Product fields as additional query parameters.

### Parameters

### Request Query Parameters

- - ending_before
  - The ID of the product created after the last product you want to retrieve.
- - limit
  - The maximum number of products to return. Range: 1-100. Default is 10.
- - starting_after
  - The ID of the product created before the first product you want to retrieve.

### Request Header Parameters

- - access_key
  - Unique access key provided by Rapyd for each authorized user.

    See [Developers](https://docs.rapyd.net/en/developers.md "Developers").
- - Content-Type
  - Indicates that the data appears in JSON format. Set to **application/json**.
- - salt
  - Random string. Recommended length: 8-16 characters.
- - signature
  - Signature calculated for each request individually.

    See [Request Signatures](https://docs.rapyd.net/en/request-signatures.md "Request Signatures").
- - timestamp
  - Timestamp for the request, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time") (seconds).

### Response Parameters

- - active
  - Indicates whether the product is currently available for purchase.
- - attributes
  - Array of strings. Up to 5 unique alphanumeric strings defined by the merchant. Each string defines the key in a key-value pair in the `attributes` object in the corresponding `sku` objects.
- - created_at
  - Time of creation of this product, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time").
- - description
  - Full text description of the product.
- - id
  - Unique string for identification of the product.
- - images
  - Array of Base64-encoded images.
- - metadata
  - A JSON object defined by the client. See [Metadata](https://docs.rapyd.net/en/metadata.md "Metadata").
- - name
  - The name of the product or service that appears in the line items in invoices.
- - package_dimensions
  - Physical attributes of the SKU item. Object containing the following fields. These fields are represented as numbers, but it is the responsibility of the merchant to define and interpret the relevant units of length and weight.

    - - height
      - Height of the package, in units defined by the client.
    - - length
      - Length of the package, in units defined by the client.
    - - weight
      - Weight of the package, in units defined by the client.
    - - width
      - Width of the package, in units defined by the client.
- - shippable
  - Indicates whether the product can be shipped.
- - skus
  - Array of objects. An array of SKUs associated with this product. Relevant when `type` is **goods**. For more information about the 'sku' object, see [Create SKU](https://docs.rapyd.net/en/create-sku.md "Create SKU").
- - statement_descriptor
  - Description that is suitable for a customer's statement. Limited to 22 characters.

    Relevant when `type` is **service**. Must be null when `type` is **goods**.
- - type
  - One of the following:

    - **services** - Relevant to subscriptions and plans.
    - **goods** - Relevant to orders and SKUs.
- - unit_label
  - Determines what one unit of this product is called on customers’ receipts and invoices, such as minutes, viewings, kilometers or packages.

    Relevant when `type` is **service**. Must be null when `type` is **goods**.
- - updated_at
  - Time that this product was last updated, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time").

### Code Samples

- - .NET

    - ```
      using System;

      namespace RapydApiRequestSample
      {
          class Program
          {
              static void Main(string[] args)
              {
                  try
                  {
                      int limit = 2;

                      string result = RapydApiRequestSample.Utilities.MakeRequest("GET", $"/v1/products?limit={limit}");

                      Console.WriteLine(result);
                  }
                  catch (Exception e)
                  {
                      Console.WriteLine("Error completing request: " + e.Message);
                  }
              }
          }
      }
      ```
- - JavaScript

    - ```javascript
      const makeRequest = require('<path-to-your-utility-file>/utilities').makeRequest;

      async function main() {
        try {
          const result = await makeRequest(
            'GET',
            '/v1/products&limit=2'
          );

          console.log(result);
        } catch (error) {
          console.error('Error completing request', error);
        }
      }
      ```
- - PHP

    - ```php

      <?php
      $path = $_SERVER['DOCUMENT_ROOT'];
      $path .= "/<path-to-your-utility-file>/utilities.php";
      include($path);

      try {
          $object = make_request('get', '/v1/products&limit=2');
          var_dump($object);
      } catch(Exception $e) {
          echo "Error: $e";
      }
      ?>
      ```
- - Python

    - ```python
      from pprint import pprint

      from utilities import make_request

      result = make_request(method='get', path=f'/v1/products&limit=2')
      pprint(result)
      ```

- /v1/products

- List Products
- ```curl
  curl -X get 'https://sandboxapi.rapyd.net/v1/products?limit=2' \
  -H 'access_key: your-access-key-here' \
  -H 'Content-Type: application/json' \
  -H 'salt: your-random-string-here' \
  -H 'signature: your-calculated-signature-here' \
  -H 'timestamp: your-unix-timestamp-here'
  ```
- ```json
  {
      "status": {
          "error_code": "",
          "status": "SUCCESS",
          "message": "",
          "response_code": "",
          "operation_id": "091b6c2b-736c-434d-9026-9c183eb2f344"
      },
      "data": [
          {
              "id": "product_4f179cc0ed7cc2c04bc70ce524cc4afb",
              "active": true,
              "attributes": [
                  "arm rest",
                  "color"
              ],
              "created_at": 1757242631,
              "description": "The ultimate in comfort for the dedicated gamer.",
              "images": [],
              "metadata": {},
              "name": "Gamer's Chair",
              "package_dimensions": {
                  "height": 10,
                  "length": 20,
                  "weight": 30,
                  "width": 40
              },
              "shippable": true,
              "skus": [],
              "statement_descriptor": "",
              "type": "goods",
              "unit_label": "",
              "updated_at": 1757242631
          },
          {
              "id": "product_fdbe0fa3c6c7aec44d1b7cca7736486e",
              "active": true,
              "attributes": [
                  "location",
                  "size"
              ],
              "created_at": 1756283215,
              "description": "Monthly parking - covered area, compact car",
              "images": [],
              "metadata": {},
              "name": "Monthly parking",
              "package_dimensions": {
                  "height": 0,
                  "length": 0,
                  "weight": 0,
                  "width": 0
              },
              "shippable": false,
              "skus": [],
              "statement_descriptor": "",
              "type": "services",
              "unit_label": "",
              "updated_at": 1756283215
          }
      ]
  }
  ```
