# Retrieve a custom field

`GET https://api.cademi.com.br/api/v3/settings/user-profile/custom-fields/{custom_field_id}`

Operation ID: `custom_fields.get` · API v3

Retrieves a custom field definition by its public ID.

The response includes an `ETag` representing the current revision. Send this value in the `If-Match` header when updating the custom field to avoid overwriting a newer version.

Required permissions: `custom_fields.read`.

## Parameters

| Name | In | Type | Required | Description |
|---|---|---|---|---|
| `custom_field_id` | path | string | yes |  |

## Responses

### 200

Returns the requested custom field.

Body: `data`: CustomField.

Fields of CustomField:

| Field | Type | Required | Description |
|---|---|---|---|
| `created_at` | string (date-time) | yes |  |
| `id` | string | yes |  |
| `label` | string | yes |  |
| `object` | string, one of `custom_field` | yes |  |
| `position` | integer | yes |  |
| `required` | boolean | yes |  |
| `revision` | string | yes |  |
| `type` | string, one of `text`, `number`, `date` | yes |  |
| `updated_at` | string (date-time) | yes |  |

### 401

The credential is missing, malformed, expired, or revoked.

Body: Error.

### 403

The current credentials do not have the permission required by this operation.

Body: Error.

### 404

The custom field was not found or is not accessible with the current credentials.

Body: Error.

Full schema: https://cademi.dev/openapi/v3.json
