---
title: "Get a collection of status records"
method: GET
path: "/customers/{customer_id}/status-records"
tags: ["Customers"]
---

# Get a collection of status records

`GET /customers/{customer_id}/status-records`

Get information about all status records on a customer account.

Customer statuses represent the customer's standing or tier within a loyalty program - for example, Silver, Gold, or Platinum. Each status record has a validity period; only one status can be active at a time. This endpoint returns all status records, including expired and inactive ones.

To assign a new status, use [POST /customers/actions/set-status-record](https://carecloud.readme.io/reference/postcustomerssetstatusrecord) (enterprise interface only).

## Path parameters

- `customer_id` string, required

## Query parameters

- `count` integer
- `offset` integer
- `sort_field` string
- `sort_direction` 'ASC' | 'DESC'
- `valid_now` true | false

## Headers

- `Accept-Language` string

## Response `200`

OK

- object
  - `data` object
    - `status_records` StatusRecord[] — List of status records.
      - `status_record_id` string — The unique ID of the status record.
      - `status_id` string, required — The unique ID of the status. [GET /statuses](https://carecloud.readme.io/reference/getstatuses)
      - `customer_id` string, required — The unique ID of the customer. [GET /customers](https://carecloud.readme.io/reference/getcustomers)
      - `valid_from` string — Timestamp from which the status record is valid. Format: `YYYY-MM-DD HH:MM:SS`. All times are in the local timezone.
      - `valid_to` string — Timestamp until which the status record is valid. Format: `YYYY-MM-DD HH:MM:SS`. All times are in the local timezone.
      - `purchase_conditions` PurchaseConditions — Structure contains purchase conditions of the status record.
        - `keep_status_turnover` QualificationTurnover[] — Missing turnover to keep current status in every active currency.
          - `currency_id` string, required — The unique ID of the currency. [GET /currencies](https://carecloud.readme.io/reference/getcurrencies)
          - `value` number, float, required — Value of turnover in the currency
          - `due_date` string — Due date by which the turnover conditions must be fulfilled in ISO-8601 format (`YYYY-MM-DD`). If the value is null, the date is unlimited.
        - `next_status_turnover` QualificationTurnover[] — Missing turnover to the next status in every active currency.
          - `currency_id` string, required — The unique ID of the currency. [GET /currencies](https://carecloud.readme.io/reference/getcurrencies)
          - `value` number, float, required — Value of turnover in the currency
          - `due_date` string — Due date by which the turnover conditions must be fulfilled in ISO-8601 format (`YYYY-MM-DD`). If the value is null, the date is unlimited.
        - `keep_status_points` number, float — Amount of points a customer needs to keep current status.
        - `next_status_points` number, float — Amount of points a customer needs to move to the following status.
        - `next_status_id` string — ID of the following status. [GET /statuses](https://carecloud.readme.io/reference/getstatuses)
      - `last_change` string — Timestamp of the last change. Format: `YYYY-MM-DD HH:MM:SS`. All times are in the local timezone.
      - `state` 0 | 1 | 2 — State of the reward. *Possible values are: 0 - deleted / 1 - active / 2 - non active*
    - `total_items` integer — The number of all found status records.

## Other responses

- `400` — Bad input parameter. The response body's `error.error_data.invalid_params[]` array lists the parameters that caused the failure, each carrying a `reason` code. See the `BadRequestErrorBody` schema for the generic reason taxonomy. Operations with domain-specific business rules document additional reasons at the operation level.
- `401` — The client has invalid credentials or auth token.
- `403` — The client does not exist or the client tried to access an unauthorized property or resource.
- `404` — The resource was not found.
- `405` — The resource does not support the specified HTTP method.
- `429` — Too many requests - more than the resource limit.
- `500` — Server is not working as expected.
- `503` — Temporary state when the service is temporarily unavailable, overloaded or there is a maintenance window.

---

[API](https://skmtc.net/crmcarecloud/apis/rest-api-reference.md) · [All operations](https://skmtc.net/crmcarecloud/apis/rest-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/crmcarecloud/rest-api-reference/revisions/329c06dbf8d9/schema)
