Menú

Referencia de la API · Cuentas

Campos personalizados

child_orgs · custom_fields · 7 operaciones

GET/v1/accounts/custom-fields

List the account custom fields

child_orgs.custom_fields.list

LecturaIdempotenteDesde 2026-11-01

Lists the custom fields the workspace defined for its accounts, in their order: name, slug (the key of the value in each account's custom_fields), type (text, number, select, multiselect, date, daterange, checkbox, user, rating, progress, files…), options of selects, required flag, help text, group and visibility in the table and the drawer. Up to 100 fields. Read the values of one account with child_orgs.custom_fields.get_values.

Alcance
child_orgs:read
Permiso
Ver el módulo
Tool del MCP
child_orgs_custom_fields_listEn la superficie completa; en la compacta, mb_execute_operation con id: "child_orgs.custom_fields.list".

Costo declarado: hasta 201 lecturas y 0 escrituras por llamada (cuentan en el cupo diario).

Parámetros

Sin parámetros.

Respuesta

dataarray<object>

Errores

Ejemplo

curl "https://api.mb-suite.com/v1/accounts/custom-fields" \
  -H "Authorization: Bearer $MB_API_KEY"

Probar con tu API key de prueba

Con una API key de prueba el pedido va siempre a tu organización de práctica: datos de ejemplo que puedes reiniciar.

curl "https://api.mb-suite.com/v1/accounts/custom-fields" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/accounts/custom-fields

Create an account custom field

child_orgs.custom_fields.create

EscrituraDesde 2026-11-01

Defines a custom field for the workspace's accounts, at the end of the order: name, type, options for select and multiselect, required flag, default value, help text, group and visibility in the table and the drawer. The slug (lowercase letters, digits and underscores) is derived from the name unless given and must be unique in the workspace (custom_field_slug_taken, 409); up to 100 fields (limit_reached, 409, details.resource account_custom_fields). Owners and admins. Returns the field.

Alcance
child_orgs:write
Permiso
Editar en el módulo · Solo owner, admin
Tool del MCP
child_orgs_custom_fields_createEn la superficie completa; en la compacta, mb_execute_operation con id: "child_orgs.custom_fields.create".

Costo declarado: hasta 2 lecturas y 1 escrituras por llamada (cuentan en el cupo diario).

Parámetros

namestringcuerporequerido

The field's name as the app shows it (up to 80 characters).

typeenumcuerporequerido

The kind of value: text, longtext, number, currency (an amount), currency_code (an ISO 4217 code; currencyCode is accepted too), country, date, datetime, daterange, select or multiselect (with options), url, email, phone, checkbox, user or member (one member of the workspace or the account: the field holds their uid; the two are the same), members (a list of members' uids), rating, progress or files.

Valores: text, longtext, number, currency, currencyCode, country, date, datetime, daterange, select, multiselect, url, email, phone, checkbox, user, member, members, rating, progress, files, currency_code

slugstringcuerpoopcional

The key of the value in each account's custom_fields (lowercase letters, digits and underscores; derived from the name when absent). It cannot change later.

optionsarray<object>cuerpoopcional

For select and multiselect: the choices (up to 100), each with value, label and an optional color.

is_requiredbooleancuerpoopcional

Whether the app marks the field as required.

default_valueanycuerpoopcional

The value a new account gets (up to 2 KB, of the field's type).

help_textstringcuerpoopcional

A hint shown under the field (up to 300 characters).

group_namestringcuerpoopcional

The group the field is shown in, in the account's profile (up to 60 characters).

show_in_tablebooleancuerpoopcional

Whether the Accounts table shows it as a column.

show_in_drawerbooleancuerpoopcional

Whether the account's side panel shows it.

Respuesta

field_idstring
fieldobject

Errores

Ejemplo

curl -X POST "https://api.mb-suite.com/v1/accounts/custom-fields" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "name": "NAME",
  "type": "text"
}'

Probar con tu API key de prueba

Con una API key de prueba el pedido va siempre a tu organización de práctica: datos de ejemplo que puedes reiniciar.

curl -X POST "https://api.mb-suite.com/v1/accounts/custom-fields" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "name": "NAME",
  "type": "text"
}'
PATCH/v1/accounts/custom-fields/{field_id}

Update an account custom field

child_orgs.custom_fields.update

EscrituraIdempotenteDesde 2026-11-01

Changes the name, options, required flag, default value, help text, group, visibility or order of an account custom field; null clears the help text, the group or the default value. The slug and the type do not change (the stored values depend on them). Fields not sent keep their value. Owners and admins. Returns the field.

Alcance
child_orgs:write
Permiso
Editar en el módulo · Solo owner, admin
Tool del MCP
child_orgs_custom_fields_updateEn la superficie completa; en la compacta, mb_execute_operation con id: "child_orgs.custom_fields.update".

Costo declarado: hasta 1 lecturas y 1 escrituras por llamada (cuentan en el cupo diario).

Parámetros

field_idstringrutarequerido

Custom field definition id (from child_orgs.custom_fields.list).

namestringcuerpoopcional

The field's name as the app shows it (up to 80 characters).

optionsarray<object>cuerpoopcional

For select and multiselect: the choices (up to 100), each with value, label and an optional color. Replaces the whole list.

is_requiredbooleancuerpoopcional

Whether the app marks the field as required.

default_valueany | nullcuerpoopcional

The value a new account gets (up to 2 KB, of the field's type). null removes it.

help_textstring | nullcuerpoopcional

A hint shown under the field (up to 300 characters). null removes it.

group_namestring | nullcuerpoopcional

The group the field is shown in, in the account's profile (up to 60 characters). null removes it.

show_in_tablebooleancuerpoopcional

Whether the Accounts table shows it as a column.

show_in_drawerbooleancuerpoopcional

Whether the account's side panel shows it.

orderintegercuerpoopcional

Its position among the account fields (0 = the first); child_orgs.custom_fields.reorder sets the whole order at once.

Respuesta

fieldobject

Errores

Ejemplo

curl -X PATCH "https://api.mb-suite.com/v1/accounts/custom-fields/{field_id}" \
  -H "Authorization: Bearer $MB_API_KEY"

Probar con tu API key de prueba

Con una API key de prueba el pedido va siempre a tu organización de práctica: datos de ejemplo que puedes reiniciar.

curl -X PATCH "https://api.mb-suite.com/v1/accounts/custom-fields/{field_id}" \
  -H "Authorization: Bearer $MB_TEST_KEY"
DELETE/v1/accounts/custom-fields/{field_id}

Delete an account custom field

child_orgs.custom_fields.delete

IrreversibleDesde 2026-11-01

Deletes the definition of an account custom field. The values the accounts stored under its slug are kept and simply stop being shown; the definition stays 30 days in the trash and, restored, shows them again. Owners and admins. Outside the app it needs a dry run and a confirm_token, except a REST DELETE with a key allowed to delete.

Con una API key, este DELETE se ejecuta directo: el registro queda 30 días en la papelera y la respuesta trae su trash_item_id. Con un token OAuth, y por el MCP, pide dry_run → confirm_token.

Alcance
child_orgs:write y «Permitir eliminar» (child_orgs:delete en OAuth)
Permiso
Editar en el módulo · Solo owner, admin
Tool del MCP
child_orgs_custom_fields_deleteEn la superficie completa; en la compacta, mb_execute_operation con id: "child_orgs.custom_fields.delete".

Costo declarado: hasta 1 lecturas y 1 escrituras por llamada (cuentan en el cupo diario).

Parámetros

field_idstringrutarequerido

Custom field definition id (from child_orgs.custom_fields.list).

Respuesta

oktrue
trash_item_idstring

The trash item this deletion left: the item_id of platform.trash.restore (POST /trash/{item_id}/restore). Missing if nothing went to the trash.

trash_item_idsarray<string>

Only when the deletion left more than one copy: all of them, the first being trash_item_id.

trash_expires_atnumber

When the copy leaves the trash for good (epoch ms): 30 days after the deletion.

Errores

Ejemplo

curl -X DELETE "https://api.mb-suite.com/v1/accounts/custom-fields/{field_id}" \
  -H "Authorization: Bearer $MB_API_KEY"

Probar con tu API key de prueba

Con una API key de prueba el pedido va siempre a tu organización de práctica: datos de ejemplo que puedes reiniciar.

curl -X DELETE "https://api.mb-suite.com/v1/accounts/custom-fields/{field_id}" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/accounts/custom-fields/reorder

Reorder the account custom fields

child_orgs.custom_fields.reorder

EscrituraIdempotenteDesde 2026-11-01

Sets the order of the account custom fields, shared by everyone in the workspace (columns of the Accounts table and the account drawer): the ids sent go first, in that order; the fields not sent keep their relative order after them. Unknown ids are refused. Owners and admins. Returns every field id with its new position.

Alcance
child_orgs:write
Permiso
Editar en el módulo · Solo owner, admin
Tool del MCP
child_orgs_custom_fields_reorderEn la superficie completa; en la compacta, mb_execute_operation con id: "child_orgs.custom_fields.reorder".

Costo declarado: hasta 200 lecturas y 200 escrituras por llamada (cuentan en el cupo diario).

Parámetros

ordered_idsarray<string>cuerporequerido

Field ids in the new order. Fields not listed keep their relative order after these.

Respuesta

dataarray<object>

Errores

Ejemplo

curl -X POST "https://api.mb-suite.com/v1/accounts/custom-fields/reorder" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "ordered_ids": [
    "ORDERED_ID"
  ]
}'

Probar con tu API key de prueba

Con una API key de prueba el pedido va siempre a tu organización de práctica: datos de ejemplo que puedes reiniciar.

curl -X POST "https://api.mb-suite.com/v1/accounts/custom-fields/reorder" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "ordered_ids": [
    "ORDERED_ID"
  ]
}'
GET/v1/accounts/{account_id}/custom-fields

Get an account's custom field values

child_orgs.custom_fields.get_values

LecturaIdempotenteDesde 2026-11-01

Returns the values of the account custom fields stored in one account, keyed by slug (only fields defined today; empty fields are absent). Value formats: text as strings, numbers, timestamps in milliseconds for dates, { from, to } for date ranges, option values for selects, member uids for people, and the uploaded files' metadata for files fields. Needs to see the account (members only see their assigned ones).

Alcance
child_orgs:read
Permiso
Ver el módulo
Tool del MCP
child_orgs_custom_fields_get_valuesEn la superficie completa; en la compacta, mb_execute_operation con id: "child_orgs.custom_fields.get_values".

Costo declarado: hasta 201 lecturas y 0 escrituras por llamada (cuentan en el cupo diario).

Parámetros

account_idstringrutarequerido

Account id: a child organization of this workspace (the ids of platform.orgs.list).

Respuesta

account_idstring
custom_fieldsobject

Errores

Ejemplo

curl "https://api.mb-suite.com/v1/accounts/{account_id}/custom-fields" \
  -H "Authorization: Bearer $MB_API_KEY"

Probar con tu API key de prueba

Con una API key de prueba el pedido va siempre a tu organización de práctica: datos de ejemplo que puedes reiniciar.

curl "https://api.mb-suite.com/v1/accounts/{account_id}/custom-fields" \
  -H "Authorization: Bearer $MB_TEST_KEY"
PATCH/v1/accounts/{account_id}/custom-fields

Set an account's custom field values

child_orgs.custom_fields.set_values

EscrituraIdempotenteDesde 2026-11-01

Writes custom field values of one account, keyed by slug (child_orgs.custom_fields.list). By default only the fields sent change and null clears one; with replace: true the account keeps exactly the fields sent. Each new value is validated against its field's type (custom_field_invalid; custom_field_unknown for a slug that does not exist): text, numbers, timestamps in milliseconds for dates, { from, to } for date ranges, option values for selects, uids of workspace members for people, 0–5 for rating and 0–100 for progress. Files are uploaded in the app (custom_field_not_writable). Owners, admins and members, on accounts they can see. Returns the stored values and the slugs that changed.

Alcance
child_orgs:write
Permiso
Editar en el módulo · Solo owner, admin, member
Tool del MCP
child_orgs_custom_fields_set_valuesEn la superficie completa; en la compacta, mb_execute_operation con id: "child_orgs.custom_fields.set_values".

Costo declarado: hasta 202 lecturas y 1 escrituras por llamada (cuentan en el cupo diario).

Parámetros

account_idstringrutarequerido

Account id: a child organization of this workspace (the ids of platform.orgs.list).

custom_fieldsobjectcuerporequerido

Values keyed by field slug; null clears a field.

replacebooleancuerpoopcional

true: the account keeps exactly the fields sent (the rest are cleared). Default false: only the fields sent change.

Respuesta

account_idstring
custom_fieldsobject
changedarray<string>

Errores

Ejemplo

curl -X PATCH "https://api.mb-suite.com/v1/accounts/{account_id}/custom-fields" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "custom_fields": {}
}'

Probar con tu API key de prueba

Con una API key de prueba el pedido va siempre a tu organización de práctica: datos de ejemplo que puedes reiniciar.

curl -X PATCH "https://api.mb-suite.com/v1/accounts/{account_id}/custom-fields" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "custom_fields": {}
}'