> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nedzo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List contact custom fields

> Page through the custom fields contacts can hold.

Every plan can use this endpoint. A contact's values are in its `customFields`, keyed by field name. Set them through create, update, upsert or bulk import.

`type` is one of `text` (the default), `number`, `date` or `boolean`.

## Query Parameters

**workspaceId** `string` *required*

The workspace. Required.

**limit** `integer` (default: 100)

Fields per page, from 1 to 1000

**offset** `integer` (default: 0)

How many fields to skip, up to 10,000,000

The list is paged, oldest first. It returns `{ items, total, limit, offset, hasMore }`; keep adding `limit` to `offset` while `hasMore` is true.

```bash cURL theme={null}
curl -X GET "https://api.nedzo.ai/v1/contacts/custom-fields?workspaceId=789e4567-e89b-12d3-a456-426614174000&limit=100&offset=0" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

```json Response theme={null}
{
  "items": [
    { "id": "5c1d2e3f-4a5b-4c6d-8e7f-9a0b1c2d3e4f", "workspaceId": "789e4567-e89b-12d3-a456-426614174000", "name": "Lead Source", "type": "text", "position": 0, "createdAt": "2026-10-11T12:00:00Z", "updatedAt": "2026-10-11T12:00:00Z" }
  ],
  "total": 1,
  "limit": 100,
  "offset": 0,
  "hasMore": false
}
```

## Errors

| Status | When |
| - | - |
| `400` | `limit` or `offset` is out of range, `workspaceId` is not a UUID, or `workspaceId` is missing. |
| `404` | The workspace is not in this key's scope. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.