Menú

Referencia de la API · CRM

Territorios

crm · territories · 4 operaciones

GET/v1/crm/territories

List sales territories

crm.territories.list

LecturaIdempotenteDesde 2026-11-01

Lists the organization's sales territories by name (up to 500), each with the countries (ISO codes), regions and industries it covers and the sellers assigned to it (assigned_user_ids). An assignment rule with method territory routes a lead to the first of its territories that covers the lead's country or region and rotates among that territory's sellers.

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

Costo declarado: hasta 500 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/crm/territories" \
  -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/crm/territories" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/crm/territories

Create a sales territory

crm.territories.create

EscrituraDesde 2026-11-01

Creates a sales territory with a name, optional description, the countries (ISO 3166-1 alpha-2 codes such as ar or mx, or global: country_invalid otherwise), regions and industries it covers, and the sellers assigned to it (assigned_user_ids: people with access to the organization, from crm.team.list; may be empty; recipient_without_access otherwise). Use its id in an assignment rule's territory_ids (method territory). Requires manage_assignment (owners, admins and CRM admins).

Alcance
crm:write
Permiso
Editar en el módulo · Acción del CRM: manage_assignment
Tool del MCP
crm_territories_createEn la superficie completa; en la compacta, mb_execute_operation con id: "crm.territories.create".

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

Parámetros

namestringcuerporequerido

The territory's name, up to 120 characters.

assigned_user_idsarray<string>cuerporequerido

The sellers the territory's leads rotate among, up to 200: people with access to the organization (user ids from crm.team.list; AI agents are not assigned by territory).

descriptionstringcuerpoopcional

A description, up to 500 characters.

countriesarray<string>cuerpoopcional

ISO 3166-1 alpha-2 country codes (ar, mx, us…; case-insensitive) or global, up to 100: a lead from one of them matches the territory.

regionsarray<string>cuerpoopcional

Regions or states as the leads bring them, up to 100.

industriesarray<string>cuerpoopcional

Industries, up to 100.

Respuesta

territory_idstring

Errores

Ejemplo

curl -X POST "https://api.mb-suite.com/v1/crm/territories" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "name": "NAME",
  "assigned_user_ids": [
    "ASSIGNED_USER_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/crm/territories" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "name": "NAME",
  "assigned_user_ids": [
    "ASSIGNED_USER_ID"
  ]
}'
PATCH/v1/crm/territories/{territory_id}

Update a sales territory

crm.territories.update

EscrituraIdempotenteDesde 2026-11-01

Updates a territory: only the fields sent change (description null clears it; each list sent replaces the current one), validated like at creation; with nothing to change, no_changes. Requires manage_assignment.

Alcance
crm:write
Permiso
Editar en el módulo · Acción del CRM: manage_assignment
Tool del MCP
crm_territories_updateEn la superficie completa; en la compacta, mb_execute_operation con id: "crm.territories.update".

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

Parámetros

territory_idstringrutarequerido

The territory's id, from crm.territories.list.

namestringcuerpoopcional

New name.

descriptionstring | nullcuerpoopcional

New description; null clears it.

countriesarray<string>cuerpoopcional

The whole new list: ISO 3166-1 alpha-2 country codes (ar, mx, us…; case-insensitive) or global, up to 100: a lead from one of them matches the territory.

regionsarray<string>cuerpoopcional

The whole new list of regions.

industriesarray<string>cuerpoopcional

The whole new list of industries.

assigned_user_idsarray<string>cuerpoopcional

The whole new list: The sellers the territory's leads rotate among, up to 200: people with access to the organization (user ids from crm.team.list; AI agents are not assigned by territory).

Respuesta

oktrue

Errores

Ejemplo

curl -X PATCH "https://api.mb-suite.com/v1/crm/territories/{territory_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/crm/territories/{territory_id}" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/crm/territories/{territory_id}/delete

Delete a sales territory

crm.territories.delete

IrreversibleIdempotenteDesde 2026-11-01

Deletes a territory for good: territories do not go to the trash. Assignment rules that list it simply skip it from then on (remove it from their territory_ids with crm.assignment_rules.update to keep them tidy); the dry run names the territory and those rules. territory_not_found when the id does not exist (also in the dry run). Requires manage_assignment.

Pide confirmación: primero dry_run: true (vista previa y confirm_token, que vale 10 minutos y una sola vez), después el mismo cuerpo con confirm_token. En unas pocas, solo con ciertos datos: la descripción dice cuándo. Por qué y cómo: Vista previa y confirmación.

Alcance
crm:write y «Permitir eliminar» (crm:delete en OAuth)
Permiso
Editar en el módulo · Acción del CRM: manage_assignment
Tool del MCP
crm_territories_deleteEn la superficie completa; en la compacta, mb_execute_operation con id: "crm.territories.delete".

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

Parámetros

territory_idstringrutarequerido

The territory's id, from crm.territories.list.

Respuesta

oktrue

Errores

Ejemplo

curl -X POST "https://api.mb-suite.com/v1/crm/territories/{territory_id}/delete" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "dry_run": true
}'

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/crm/territories/{territory_id}/delete" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "dry_run": true
}'