---
title: "Create a contact field"
method: POST
path: "/api/reach/v1/profiles/{profileUuid}/contacts/fields"
tags: ["Reach: Contact Fields"]
---

# Create a contact field

`POST /api/reach/v1/profiles/{profileUuid}/contacts/fields`

Define a new custom contact field in a profile.

The `slug` is derived from the label and, like the field type, cannot be changed later.
Use the returned uuid to set values on contacts.

## Path parameters

- `profileUuid` string, required

## Request body

- ReachV1ContactsFieldsStoreRequest — Define a custom contact field for the profile
  - `type` 'text' | 'number' | 'date' | 'single_choice' | 'multi_choice', required — Immutable once the field exists
  - `label` string, required
  - `options` string[] — Required for single_choice and multi_choice, ignored for the scalar types. Labels must be unique regardless of casing.

## Response `200`

Success response

- ReachV1ContactsFieldsContactFieldResource
  - `uuid` string
  - `type` 'text' | 'number' | 'date' | 'single_choice' | 'multi_choice'
  - `label` string
  - `slug` string — Derived from the label on creation and immutable afterwards
  - `options` ReachV1ContactsFieldsContactFieldOptionResource[] — Available choices. Always empty for the scalar field types.
    - `uuid` string
    - `label` string
    - `sort_order` integer
  - `created_at` string, date-time

## Other responses

- `401` — Unauthenticated response
- `422` — Validation error response
- `500` — Error response

---

[API](https://skmtc.net/hostinger/apis/hostinger-api.md) · [All operations](https://skmtc.net/hostinger/apis/hostinger-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hostinger/hostinger-api/versions/796bd5194565/schema)
