---
title: "Create contact field"
method: POST
path: "/v2/teams/{teamKey}/contacts/fields"
tags: ["Contacts"]
---

# Create contact field

`POST /v2/teams/{teamKey}/contacts/fields`

## Request

- Base URL: `https://api.streak.com/api`
- URL: `https://api.streak.com/api/v2/teams/{teamKey}/contacts/fields`
- Auth: HTTP bearer

Creates a custom contact field for a team and assigns its field key.

## Path parameters

- `teamKey` string, required

## Request body

- DirectoryFieldBody: A complete custom field definition for team contacts or organizations.
  - `name` string, required: Display name for the field. Leading and trailing spaces are removed.
  - `type` 'TEXT_INPUT' | 'DROPDOWN' | 'CHECKBOX' | 'DATE' | 'PERSON' | 'FORMULA' | 'TAG' | 'TEAM_CONTACT' | 'TEAM_ORGANIZATION', required
  - `defaultValue` string, nullable: Default text for the field. Omit to leave the field without a default.
  - `dropdownSettings` object, nullable: Complete option list for a team dropdown field.
    - `items` TeamDropdownItem[], required: Dropdown options in display order.
      - `key` string, required: Stable key for the option.
      - `name` string, required: Display name for the option.
  - `tagSettings` object, nullable: Complete tag list for a team tag field.
    - `tags` TeamTagItem[], required: Tags in display order.
      - `key` string, required: Stable key for the tag.
      - `tag` string, required: Display label for the tag.

## Response `200`

OK

- TeamField: A custom contact or organization field definition.
  - `name` string, required: Display name for the field.
  - `key` string, required: Stable key for the field.
  - `type` 'TEXT_INPUT' | 'DROPDOWN' | 'CHECKBOX' | 'DATE' | 'PERSON' | 'FORMULA' | 'TAG' | 'TEAM_CONTACT' | 'TEAM_ORGANIZATION', required
  - `defaultValue` string, nullable: Default textual field value, when one is configured.
  - `lastDefaultValueUpdatedTimestamp` integer, nullable: Timestamp when the default value last changed, in epoch milliseconds.
  - `lastUpdatedTimestamp` integer, nullable: Timestamp when the field definition last changed, in epoch milliseconds.
  - `dropdownSettings` object, nullable: Options configured for a team dropdown field.
    - `items` TeamDropdownItem[], required: Dropdown options in display order.
      - `key` string, required: Stable key for the option.
      - `name` string, required: Display name for the option.
  - `tagSettings` object, nullable: Tags configured for a team tag field.
    - `tags` TeamTagItem[], required: Tags in display order.
      - `key` string, required: Stable key for the tag.
      - `tag` string, required: Display label for the tag.

## Changes

- **2026-10-22** `2ca4abc12d85`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/streakyc/apis/streak/changes/v2/teams/:teamKey/contacts/fields/post.md)

---

[API](https://skmtc.dev/streakyc/apis/streak.md) - [All operations](https://skmtc.dev/streakyc/apis/streak/llms.txt) - [OpenAPI document](https://skmtc.dev/streakyc/apis/streak/revisions/3648671fd1cf?raw)
