Creates a custom directory record. The request body uses a `values` map where keys are directory field IDs. Use `response_profile` query param to control the response size.
Creating, updating and deleting records requires custom-properties management permission OR settings.allow_editing=true on the directory. This setting is checked by these API endpoints, not only by the card UI. Unknown field IDs are rejected (400, code 3); missing required fields are rejected (400, code 4). Email, phone and URL format errors return 400 with an errors object keyed by field ID. Record values are returned as an array, although the write request uses a map.
| Name | Type | Reference |
|---|---|---|
| directory_idrequired | string | Directory ID |
| Name | Value |
|---|---|
| Content-Type | application/json |
| Name | Type | Constraints | Description |
|---|---|---|---|
values required | object | Map keyed by active directory field UUIDs. Use an object for one value or an array of objects for multiple values. Object keys by type: value_text for string/email/url/phone and checkbox (strings true/false); value_number for number; value_date for date; user_uid for user; select_value_uid for select; catalog_value_uid for catalog; directory_record_id for directory_link. Reference values use UUIDs, not numeric IDs. The file type is not a multipart upload endpoint. Required non-checkbox fields must be provided. |
| Name | Type | Constraints | Description |
|---|---|---|---|
| response_profile | string | none | summary | details | full | Default: full (also used for unrecognized values). none returns only {id}; summary includes values and direct select/catalog/user/linkedRecord relations; details additionally includes the linked records' directory, fields and values; full additionally expands the next linked-record level. |
| Description | Response type | Example |
|---|---|---|
| Success | Object |
| Name | Type | Description |
|---|---|---|
| id | string | Record ID (UUID) |
| custom_directory_id | string | Directory ID (UUID) |
| display_value | null | string | Pre-computed record display value |
| condition | enum | Record condition: active | inactive | removed |
| author_uid | string | Author user UID (UUID) |
| updater_uid | string | Updater user UID (UUID) |
| created | string | Create date |
| updated | string | Last update timestamp |
| author | object | Author user object |
| updater | object | Updater user object |
| values | array of objects | Field values for the record |
| Description | Response type | Example |
|---|---|---|
| Validation error | Object |
A schema has not been defined for this response code.
| Description | Response type | Example |
|---|---|---|
| Invalid token | String |
| Description | Response type | Example |
|---|---|---|
| Not found | Object |
A schema has not been defined for this response code.
Create custom directory record
{
"values": {
"c1d2e3f4-1111-4aaa-8bbb-ccccdddd0001": {
"value_text": "Alice"
},
"c1d2e3f4-1111-4aaa-8bbb-ccccdddd0002": {
"value_text": "alice@example.com"
}
}
}Path Parameters
1 curl --request POST \
2 --url 'https://example.kaiten.ru/api/latest/company/custom-directories/{directory_id}/records' \
3 --header 'Accept: application/json' \
4 --header 'Content-Type: application/json'
5 Response
ClickTry It!to start a request and see the response here!