---
title: "List custom-data records"
method: GET
path: "/v1/custom-data"
---

# List custom-data records

`GET /v1/custom-data`

Paginated collection of the account’s custom-data records. Page mode for browsing; cursor (keyset) mode — required for full exports — forces dot_number ascending order (lexicographic; dot_number is a string). Use updated_after for incremental sync after an initial export. Full exports typically exceed the default daily quota; contact support to arrange a limit increase first.

## Query parameters

- `limit` integer
- `page` integer
- `cursor` string
- `dot_number` string
- `updated_after` string, date-time
- `updated_before` string, date-time
- `sort_by` 'updated_at' | 'dot_number'
- `sort_order` 'asc' | 'desc'

## Response `200`

Records with page- or cursor-mode pagination

- CustomDataCollectionResponse
  - `total_results` integer — Page mode only. May be approximate when no filters are applied; exact when filtered.
  - `fields` CustomDataField[]
    - `field_key` string — Key used inside custom_data objects and in POST /v1/custom-data/lookup field projections
    - `display_name` string, nullable
    - `data_type` string, nullable — e.g. number, boolean, text — from the account’s CRM configuration
  - `records` CustomDataRecord[]
    - `dot_number` string — Echoes the requested DOT number
    - `custom_data` object — Only the account’s enabled fields, keyed by field_key. Missing values are null.
    - `updated_at` string, date-time, nullable — When the record was last loaded into AlphaLoops (not real-time CRM state)
  - `pagination` union — Page mode: page/limit/total_results/total_pages. Cursor mode: limit/next_cursor/has_more (next_cursor null when done), no totals.
    - Pagination
      - `page` integer
      - `limit` integer
      - `total_results` integer
      - `total_pages` integer
    - object
      - `limit` integer
      - `next_cursor` string, nullable — Pass as ?cursor= for the next page; null when the export is complete
      - `has_more` boolean

## Other responses

- `400` — Invalid parameters
- `401` — Invalid or missing API key
- `403` — Custom data is not enabled for this account. Not an auth failure and not transient — do not retry with backoff; probe GET /v1/custom-data/fields instead.
- `429` — Too many requests. Check X-RateLimit-Remaining and Retry-After headers.
- `503` — The account’s custom data configuration is invalid. Contact support; retrying will not help.

---

[API](https://skmtc.net/runalphaloops/apis/alphaloops-fmcsa-carrier-data-api.md) · [All operations](https://skmtc.net/runalphaloops/apis/alphaloops-fmcsa-carrier-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/runalphaloops/alphaloops-fmcsa-carrier-data-api/revisions/ae58c064a7af/schema)
