---
title: "Create a property"
method: POST
path: "/accounts/{account_id}/custom_metadata/properties"
tags: ["Custom Metadata"]
---

# Create a property

`POST /accounts/{account_id}/custom_metadata/properties`

Create a new custom metadata property.

## Path parameters

- `account_id` string, required

## Headers

- `X-PhraseApp-OTP` string

## Request body

- object
  - `name` string, required — name of the property
  - `data_type` 'boolean' | 'date' | 'link' | 'multi_select' | 'number' | 'single_select' | 'string' | 'text', required — data type of the property
  - `project_ids` string[] — ids of projects that the property belongs to
  - `description` string — description of property
  - `value_options` string[] — value options of property (only applies to single or multi select properties)

## Response `200`

OK

- CustomMetadataProperty
  - `id` string
  - `name` string
  - `description` string
  - `data_type` 'boolean' | 'date' | 'link' | 'multi_select' | 'number' | 'single_select' | 'string' | 'text' — data type of the property
  - `user` UserPreview
    - `id` string
    - `username` string
    - `name` string
    - `gravatar_uid` string
  - `projects` ProjectShort[]
    - `id` string
    - `name` string
    - `main_format` string
    - `created_at` string, date-time
    - `updated_at` string, date-time
  - `value_options` string[]
  - `created_at` string, date-time
  - `updated_at` string, date-time

## Other responses

- `400` — Bad request. The request could not be parsed or a parameter failed validation. Verify the request body, the content type, and the parameter types, then retry.
- `404` — Not found. The requested resource does not exist or is not visible to the authenticated user. Verify the identifiers in the request path and that the token has access to them, then retry.
- `422` — Unprocessable entity. The request was well-formed but failed validation. The response body lists each offending field in the `errors` array, with its resource, field, and a human-readable message. Correct the listed fields and retry.
- `429` — Too many requests. The rate limit has been exceeded. Wait until the time indicated by the `X-Rate-Limit-Reset` response header before retrying.

---

[API](https://skmtc.net/phrase/apis/control-hub-service.md) · [All operations](https://skmtc.net/phrase/apis/control-hub-service/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/phrase/control-hub-service/revisions/98ecac7ba2bf/schema)
