# Product categories

## Get all product categories

Returns all categories of products. Note this operation uses [Pagination](/connector-api/guidelines/pagination.md) and supports [Portfolio Access Tokens](/connector-api/concepts/multi-property.md).

### Request

`[PlatformAddress]/api/connector/v1/productCategories/getAll`

```javascript
{
  "ClientToken": "E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D",
  "AccessToken": "C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D",
  "Client": "Sample Client 1.0.0",
  "EnterpriseIds": [
    "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "4d0201db-36f5-428b-8d11-4f0a65e960cc"
  ],
  "ProductCategoryIds": [
    "5228623e-b2cf-4f9f-8bd6-71cbe3ec5e6f",
    "63bc87d3-edf5-4d06-a601-6052a2ad709d"
  ],
  "ServiceIds": [
    "9b3a6c54-63aa-4383-b50e-b0030078184b",
    "c0f71466-6c0b-4993-88ac-1794f6b7e958"
  ],
  "UpdatedUtc": {
    "StartUtc": "2023-05-05T00:00:00Z",
    "EndUtc": "2023-05-10T00:00:00Z"
  },
  "Limitation": {
    "Count": 10
  }
}
```

| Property             | Type                                                                 | Contract                      | Description                                                                                                                               |
| -------------------- | -------------------------------------------------------------------- | ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `ClientToken`        | string                                                               | required                      | Token identifying the client application.                                                                                                 |
| `AccessToken`        | string                                                               | required                      | Access token of the client application.                                                                                                   |
| `Client`             | string                                                               | required                      | Name and version of the client application.                                                                                               |
| `EnterpriseIds`      | array of string                                                      | optional, max 1000 items      | Unique identifiers of the Enterprises. If not specified, the operation returns data for all enterprises within scope of the Access Token. |
| `ProductCategoryIds` | array of string                                                      | optional, max 1000 items      | Unique identifiers of `ProductCategory`.                                                                                                  |
| `ServiceIds`         | array of string                                                      | required, max 1000 items      | Unique identifiers of `Service` to which the product categories belong.                                                                   |
| `UpdatedUtc`         | [Time interval](/connector-api/operations/_objects.md#time-interval) | optional, max length 3 months | Interval in which the product categories were updated.                                                                                    |
| `Limitation`         | [Limitation](/connector-api/guidelines/pagination.md#limitation)     | required                      | Limitation on the quantity of data returned and optional Cursor for the starting point of data.                                           |

### Response

```javascript
{
  "ProductCategories": [
    {
      "Id": "5c0804f9-d03a-4b13-a57d-b00300781a41",
      "ServiceId": "9b3a6c54-63aa-4383-b50e-b0030078184b",
      "Names": {
        "en-US": "Alcohol 1"
      },
      "ShortNames": {
        "en-US": "Alcohol 1"
      },
      "Descriptions": {},
      "ParentProductCategory": [
        {
          "Id": "0b82f6d8-e5eb-4711-9069-40db2b8d968f"
        },
        {
          "Names": {
            "en-US": "Alcoholic beverages"
          }
        }
      ],
      "CreatedUtc": "2023-06-09T13:32:32Z",
      "UpdatedUtc": "2023-06-09T13:32:32Z",
      "Ordering": 1
    },
    {
      "Id": "f0709b02-f1a4-46b2-9c1e-744b5ecd6980",
      "ServiceId": "9b3a6c54-63aa-4383-b50e-b0030078184b",
      "Names": {
        "en-US": "Lemonade 1"
      },
      "ShortNames": {
        "en-US": "Lemonade 1"
      },
      "Descriptions": {},
      "ParentProductCategory": [
        {
          "Id": "aa4f3930-3f9d-4df7-9c6b-5aba5b2f6f7e"
        },
        {
          "Names": {
            "en-US": "Lemonades"
          }
        }
      ],
      "CreatedUtc": "2023-06-09T13:32:32Z",
      "UpdatedUtc": "2023-06-09T13:32:32Z",
      "Ordering": 1
    }
  ],
  "Cursor": "f0709b02-f1a4-46b2-9c1e-744b5ecd6980"
}
```

| Property            | Type                                           | Contract                 | Description                                                                                                                                                      |
| ------------------- | ---------------------------------------------- | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ProductCategories` | array of [Product category](#product-category) | required, max 1000 items | Product categories.                                                                                                                                              |
| `Cursor`            | string                                         | optional                 | Unique identifier of the last product category returned. This can be used in `Limitation` in a subsequent request to fetch the next batch of product categories. |

#### Product category

| Property                | Type                                                                   | Contract | Description                                                                                                                                |
| ----------------------- | ---------------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `Id`                    | string                                                                 | required | Unique identifier of the product category.                                                                                                 |
| `EnterpriseId`          | string                                                                 | required | Unique identifier of the enterprise to which the product category belongs.                                                                 |
| `ServiceId`             | string                                                                 | required | Unique identifier of the `Service` of the resource category.                                                                               |
| `Names`                 | [Localized text](/connector-api/operations/_objects.md#localized-text) | required | All translations of the name.                                                                                                              |
| `ShortNames`            | [Localized text](/connector-api/operations/_objects.md#localized-text) | required | All translations of the short name.                                                                                                        |
| `Descriptions`          | [Localized text](/connector-api/operations/_objects.md#localized-text) | required | All translations of the description.                                                                                                       |
| `ParentProductCategory` | [Parent product category](#parent-product-category)                    | optional | Parent product category, if set.                                                                                                           |
| `UpdatedUtc`            | string                                                                 | required | Date and time of the product category update in UTC timezone in ISO 8601 format.                                                           |
| `CreatedUtc`            | string                                                                 | required | Date and time of the product category creation in UTC timezone in ISO 8601 format.                                                         |
| `Ordering`              | integer                                                                | required | Ordering of the category, lower number corresponds to lower category (note that neither uniqueness nor continuous sequence is guaranteed). |

#### Parent product category

| Property | Type                                                                   | Contract | Description                                |
| -------- | ---------------------------------------------------------------------- | -------- | ------------------------------------------ |
| `Id`     | string                                                                 | required | Unique identifier of the product category. |
| `Names`  | [Localized text](/connector-api/operations/_objects.md#localized-text) | required | All translations of the name.              |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mews.com/connector-api/operations/productcategories.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
