POST /data/projects/{project_id}/metadata-descriptors

Create a new metadata descriptor. It serves to describe extra fields listed in the data attribute of entities.

Path parameters

  • project_id string(uuid) Required

    Project unique identifier

application/json

Body Required

  • entity_type string

    Entity type for the metadata descriptor

    Values are Asset, Shot, Edit, Episode, or Sequence. Default value is Asset.

  • name string Required

    Name of the metadata descriptor

  • data_type string Required

    Type of data (string, number, boolean, etc.)

  • for_client string

    Whether the descriptor is for client

    Default value is False.

  • choices array[string]

    List of choices for the descriptor

  • departments array[string]

    List of departments for the descriptor

Responses

  • 201 application/json

    Metadata descriptor created

    Hide response attributes Show response attributes object
    • id string(uuid)

      Metadata descriptor unique identifier

    • name string

      Metadata descriptor name

    • data_type string

      Metadata descriptor data type

  • 400

    Invalid parameters

POST /data/projects/{project_id}/metadata-descriptors
curl -X POST "http://api.example.com/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
  "entity_type": "Asset",
  "name": "Custom Field",
  "data_type": "string",
  "for_client": "True",
  "choices": [
    "option1",
    "option2"
  ],
  "departments": [
    "department1",
    "department2"
  ]
}'
import requests

url = "http://api.example.com/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Accept": "application/json",
    "Content-Type": "application/json"
}
params = {}
payload = {
    "entity_type": "Asset",
    "name": "Custom Field",
    "data_type": "string",
    "for_client": "True",
    "choices": [
        "option1",
        "option2"
    ],
    "departments": [
        "department1",
        "department2"
    ]
}

response = requests.post(
    url,
    headers=headers,
    params=params,
    json=payload
)

response.raise_for_status()

if response.content:
    print(response.json())
curl \
 --request POST 'http://api.example.com/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{"entity_type":"Asset","name":"Custom Field","data_type":"string","for_client":"True","choices":["option1","option2"],"departments":["department1","department2"]}'
Request examples
{
  "entity_type": "Asset",
  "name": "Custom Field",
  "data_type": "string",
  "for_client": "True",
  "choices": [
    "option1",
    "option2"
  ],
  "departments": [
    "department1",
    "department2"
  ]
}
Response examples (201)
{
  "id": "a24a6ea4-ce75-4665-a070-57453082c25",
  "name": "Custom Field",
  "data_type": "string"
}