---
title: "Create a Custom Field"
method: POST
path: "/v1/accounts/{{account_id}}/video_fields/custom_fields"
tags: ["Custom Fields"]
---

# Create a Custom Field

`POST /v1/accounts/{{account_id}}/video_fields/custom_fields`

Create a new custom field for the account

## Path parameters

- `account_id` string, required

## Headers

- `Content-Type` string, required
- `Authorization` string, required

## Request body

- CustomField
  - `description` string — description (instruction for user)
  - `display_name` string — display name
  - `enum_values` string[] — Array of string values for select type fields (by default the maximum is 100 values; this can be increased up to 1000 by submitting a [request to Support](https://supportportal.brightcove.com/)). This field is **required** for `enum` types, and **not allowed** for `string` types.
  - `id` string — Data name for the field (used to access it in searches, etc.) Note the following **requirements** for the custom field `id`: - all lowercase - no spaces (use underscore [_] instead) - max length: 128 single-byte characters - must be unique among all custom fields for the account - must not be one of the [Reserved names](https://studio.support.brightcove.com/admin/creating-custom-metadata-fields.html#reserved) Note that updating it will trigger an internal process to update the `id` in any videos that have the custom field.
  - `required` boolean — whether field must have a value before video can be active
  - `type` string — custom field type (enum or string)

## Response `200`

200

- CustomField
  - `description` string — description (instruction for user)
  - `display_name` string — display name
  - `enum_values` string[] — Array of string values for select type fields (by default the maximum is 100 values; this can be increased up to 1000 by submitting a [request to Support](https://supportportal.brightcove.com/)). This field is **required** for `enum` types, and **not allowed** for `string` types.
  - `id` string — Data name for the field (used to access it in searches, etc.) Note the following **requirements** for the custom field `id`: - all lowercase - no spaces (use underscore [_] instead) - max length: 128 single-byte characters - must be unique among all custom fields for the account - must not be one of the [Reserved names](https://studio.support.brightcove.com/admin/creating-custom-metadata-fields.html#reserved) Note that updating it will trigger an internal process to update the `id` in any videos that have the custom field.
  - `required` boolean — whether field must have a value before video can be active
  - `type` string — custom field type (enum or string)

## Other responses

- `401` — UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token
- `403` — NOT_AVAILABLE: The resource you are requesting is temporarily unavailable
- `404` — RESOURCE_NOT_FOUND: The api could not find the resource you requested
- `405` — METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint
- `429` — TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second
- `500` — UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later.

## Changes

- **2023-04-29** `d5befff2511b` — 1 info
  - endpoint added
- **2023-04-28** `5285220c7df0` — 1 breaking
  - api path removed without deprecation
- **2023-03-26** `751db20334e4` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/brightcovelearning/apis/brightcove-cms-api-reference/changes/v1/accounts/:{account_id}/video_fields/custom_fields/post.md)

---

[API](https://skmtc.dev/brightcovelearning/apis/brightcove-cms-api-reference.md) · [All operations](https://skmtc.dev/brightcovelearning/apis/brightcove-cms-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/brightcovelearning/brightcove-cms-api-reference/revisions/1b6182a4560a/schema)
