Menu

Referência da API · Phones

Linhas

crm_phones · lines · 6 operações

GET/v1/phones/lines

List the organization's phone lines

crm_phones.lines.list

LeituraIdempotenteDesde 2026-11-01

Lists the phone numbers the organization bought in Phones, in the order of Settings → Lines (manual order first, then newest), paginated by cursor (limit up to 200): number, name, country, type, capabilities (voice, sms, mms), status (active, cancelling = release scheduled at cancel_at, suspended_unpaid, released), destination (which part of the product uses the line: crm or support), monthly list price in USD cents, who pays it (own subscription or the parent workspace), who rings on incoming calls, ring timeout, voicemail, call recording and whether it is dedicated to WhatsApp. Released lines are history and are left out unless include_released=true or status=released. Filters (status, destination) apply to the lines read, up to 500. Buying and releasing numbers is done on the Phones screen. Requires view access to Phones.

Escopo
crm_phones:read
Permissão
Ver o módulo
Tool do MCP
crm_phones_lines_listNa superfície completa; na compacta, mb_execute_operation com id: "crm_phones.lines.list".

Custo declarado: até 500 leituras e 0 escritas por chamada (contam na cota diária).

Parâmetros

limitintegerqueryopcional

How many items this page brings at most (see the maximum and the default in the schema).

Padrão: 50

cursorstringqueryopcional

The next_cursor of the previous page, exactly as it came (only for the same list and filters); without it, the first page.

statusenumqueryopcional

Only the lines in this status: active, cancelling, suspended_unpaid, suspended, releasing or released.

Valores: active, cancelling, released, suspended_unpaid, suspended, releasing

destinationenumqueryopcional

Only the lines of this part of the product: crm or support.

Valores: crm, support

include_releasedbooleanqueryopcional

Also the released lines (history: the number went back to the carrier).

Resposta

dataarray<object>
has_moreboolean
next_cursorstring

Erros

Exemplo

curl "https://api.mb-suite.com/v1/phones/lines" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl "https://api.mb-suite.com/v1/phones/lines" \
  -H "Authorization: Bearer $MB_TEST_KEY"
GET/v1/phones/lines/{line_id}

Get one phone line

crm_phones.lines.get

LeituraIdempotenteDesde 2026-11-01

Returns one phone line of the organization by its id (the id crm_phones.lines.list returns): number, name, country, type, capabilities, status, destination, monthly price, billing mode, incoming-call settings (receivers, ring timeout in seconds, voicemail and its greeting, recording and the notice version accepted) and whether it is dedicated to WhatsApp (whatsapp_phone_number_id is the WhatsApp line in crm.lines.list). Not found (line_not_found) if the id is not a line of this organization. Requires view access to Phones.

Escopo
crm_phones:read
Permissão
Ver o módulo
Tool do MCP
crm_phones_lines_getNa superfície completa; na compacta, mb_execute_operation com id: "crm_phones.lines.get".

Custo declarado: até 1 leituras e 0 escritas por chamada (contam na cota diária).

Parâmetros

line_idstringrotaobrigatório

The phone line: an id from crm_phones.lines.list.

Resposta

idstring
phone_numberstring
friendly_namestring | null
country_isostring
typestring

local, mobile, toll-free, national or international.

capabilitiesarray<string>

voice, sms, mms and/or fax.

statusstring

active, cancelling (release scheduled at cancel_at), suspended_unpaid, suspended, releasing or released.

destinationstring

The part of the product that uses the line: crm or support.

monthly_cost_usd_centsnumber

The monthly list price, in USD cents.

billing_modestring

Who pays it: own_subscription or parent_child_billing (the parent workspace).

purchased_atnumber | null
cancel_atnumber | null

With a release scheduled: when the number is released.

release_scheduled_atnumber | null
inbound_receiversarray<string>

The members who ring on an incoming call, all at once.

inbound_timeout_secnumber
voicemail_enabledboolean
voicemail_greetingstring | null
recording_enabledboolean
recording_enabled_atnumber | null
recording_notice_ack_versionstring | null
whatsapp_lockedboolean

Dedicated to WhatsApp: it makes no outbound voice calls and cannot be the default line.

whatsapp_phone_number_idstring | null

The CRM WhatsApp line on this number (crm.lines.list), if any.

sort_ordernumber | null
created_by_idstring | null
created_atnumber
updated_atnumber

Erros

Exemplo

curl "https://api.mb-suite.com/v1/phones/lines/{line_id}" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl "https://api.mb-suite.com/v1/phones/lines/{line_id}" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/phones/lines/{line_id}/rename

Rename a phone line

crm_phones.lines.rename

EscritaIdempotenteDesde 2026-11-01

Sets the name people see for a phone line (friendly_name, 1 to 80 characters) in the dialer, the call log and the lists. Only the name changes: the number, its destination and its incoming-call settings stay. Idempotent. Returns the line. Requires edit access to Phones.

Escopo
crm_phones:write
Permissão
Editar no módulo
Tool do MCP
crm_phones_lines_renameNa superfície completa; na compacta, mb_execute_operation com id: "crm_phones.lines.rename".

Custo declarado: até 1 leituras e 1 escritas por chamada (contam na cota diária).

Parâmetros

line_idstringrotaobrigatório

The phone line: an id from crm_phones.lines.list.

friendly_namestringcorpoobrigatório

The name the app shows for the line (up to 80 characters).

Resposta

idstring
phone_numberstring
friendly_namestring | null
country_isostring
typestring

local, mobile, toll-free, national or international.

capabilitiesarray<string>

voice, sms, mms and/or fax.

statusstring

active, cancelling (release scheduled at cancel_at), suspended_unpaid, suspended, releasing or released.

destinationstring

The part of the product that uses the line: crm or support.

monthly_cost_usd_centsnumber

The monthly list price, in USD cents.

billing_modestring

Who pays it: own_subscription or parent_child_billing (the parent workspace).

purchased_atnumber | null
cancel_atnumber | null

With a release scheduled: when the number is released.

release_scheduled_atnumber | null
inbound_receiversarray<string>

The members who ring on an incoming call, all at once.

inbound_timeout_secnumber
voicemail_enabledboolean
voicemail_greetingstring | null
recording_enabledboolean
recording_enabled_atnumber | null
recording_notice_ack_versionstring | null
whatsapp_lockedboolean

Dedicated to WhatsApp: it makes no outbound voice calls and cannot be the default line.

whatsapp_phone_number_idstring | null

The CRM WhatsApp line on this number (crm.lines.list), if any.

sort_ordernumber | null
created_by_idstring | null
created_atnumber
updated_atnumber

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/phones/lines/{line_id}/rename" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "friendly_name": "FRIENDLY_NAME"
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/phones/lines/{line_id}/rename" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "friendly_name": "FRIENDLY_NAME"
}'
POST/v1/phones/lines/{line_id}/destination

Move a phone line to another part of the product

crm_phones.lines.set_destination

EscritaIdempotenteDesde 2026-11-01

Moves a phone line to another destination: crm (the CRM's dialer and inbox) or support. Every number is bought in the CRM and, once it is set up, moved where it is used; its calls and messages move with it (each inbox filters by line). Idempotent: moving it to the destination it already has changes nothing (changed=false). Returns from, to and changed. For a WhatsApp line use crm_phones.whatsapp_lines.set_destination. Requires edit access to Phones; moving a line into or out of a part of the product with restricted access also needs edit access to that part (403 module_access_denied) and, for a key, its write scope (403 scope_insufficient).

Escopo
crm_phones:write
Permissão
Editar no módulo
Tool do MCP
crm_phones_lines_set_destinationNa superfície completa; na compacta, mb_execute_operation com id: "crm_phones.lines.set_destination".

Custo declarado: até 1 leituras e 1 escritas por chamada (contam na cota diária).

Parâmetros

line_idstringrotaobrigatório

The phone line: an id from crm_phones.lines.list.

destinationenumcorpoobrigatório

The part of the product that uses the line: crm or support.

Valores: crm, support

Resposta

line_idstring
fromstring
tostring
changedboolean

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/phones/lines/{line_id}/destination" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "destination": "crm"
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/phones/lines/{line_id}/destination" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "destination": "crm"
}'
PATCH/v1/phones/lines/{line_id}/inbound

Configure how a line handles incoming calls

crm_phones.lines.configure_inbound

EscritaIdempotenteDesde 2026-11-01

Sets how a phone line handles incoming calls: receivers, if sent, replaces the whole list of people (user ids, up to 10; an empty list rings nobody) who ring at the same time (to add one person use crm_phones.lines.add_receiver), each one with access to Phones (receiver_without_phones_access otherwise); inbound_timeout_sec how long it rings before voicemail (10 to 60); voicemail_enabled and voicemail_greeting (up to 200 characters; an empty greeting keeps the current one); recording_enabled records every call on the line. Turning recording on means the organization accepts the recording notice (the people on the call must be told it is recorded): send recording_notice_accepted=true or it fails with recording_notice_required; who accepted it and when are stored. Fields not sent stay as they are, the receivers included. Idempotent. Returns the line. Requires edit access to Phones.

Escopo
crm_phones:write
Permissão
Editar no módulo
Tool do MCP
crm_phones_lines_configure_inboundNa superfície completa; na compacta, mb_execute_operation com id: "crm_phones.lines.configure_inbound".

Custo declarado: até 21 leituras e 1 escritas por chamada (contam na cota diária).

Parâmetros

line_idstringrotaobrigatório

The phone line: an id from crm_phones.lines.list.

receiversarray<string>corpoopcional

The people who ring at the same time (user ids, up to 10), replacing the whole list; an empty list rings nobody. Without it, the people who ring today stay.

inbound_timeout_secintegercorpoopcional

How many seconds it rings before voicemail (10 to 60).

voicemail_enabledbooleancorpoopcional

Whether an unanswered call goes to voicemail.

voicemail_greetingstringcorpoopcional

The voicemail greeting read to the caller (up to 200 characters; empty keeps the current one).

recording_enabledbooleancorpoopcional

Record every call on the line (turning it on needs recording_notice_accepted).

recording_notice_acceptedbooleancorpoopcional

true accepts, for the organization, the recording notice (the people on the call must be told it is recorded).

Resposta

idstring
phone_numberstring
friendly_namestring | null
country_isostring
typestring

local, mobile, toll-free, national or international.

capabilitiesarray<string>

voice, sms, mms and/or fax.

statusstring

active, cancelling (release scheduled at cancel_at), suspended_unpaid, suspended, releasing or released.

destinationstring

The part of the product that uses the line: crm or support.

monthly_cost_usd_centsnumber

The monthly list price, in USD cents.

billing_modestring

Who pays it: own_subscription or parent_child_billing (the parent workspace).

purchased_atnumber | null
cancel_atnumber | null

With a release scheduled: when the number is released.

release_scheduled_atnumber | null
inbound_receiversarray<string>

The members who ring on an incoming call, all at once.

inbound_timeout_secnumber
voicemail_enabledboolean
voicemail_greetingstring | null
recording_enabledboolean
recording_enabled_atnumber | null
recording_notice_ack_versionstring | null
whatsapp_lockedboolean

Dedicated to WhatsApp: it makes no outbound voice calls and cannot be the default line.

whatsapp_phone_number_idstring | null

The CRM WhatsApp line on this number (crm.lines.list), if any.

sort_ordernumber | null
created_by_idstring | null
created_atnumber
updated_atnumber

Erros

Exemplo

curl -X PATCH "https://api.mb-suite.com/v1/phones/lines/{line_id}/inbound" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X PATCH "https://api.mb-suite.com/v1/phones/lines/{line_id}/inbound" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/phones/lines/{line_id}/receivers

Add a person who rings on a line's incoming calls

crm_phones.lines.add_receiver

EscritaIdempotenteDesde 2026-11-01

Adds one person (user_id) to the people who ring when a line gets a call. The person must be a direct member of the organization on the CRM team (receiver_not_in_crm_team) with access to Phones (receiver_without_phones_access): outside that group the browser phone is never registered and the call would never ring for them. A line rings at most 10 people (limit_reached, with details.resource line_receivers). Idempotent: if the person already rings, nothing changes (added=false). To remove people or change the ring timeout, voicemail or recording use crm_phones.lines.configure_inbound. Requires edit access to Phones.

Escopo
crm_phones:write
Permissão
Editar no módulo
Tool do MCP
crm_phones_lines_add_receiverNa superfície completa; na compacta, mb_execute_operation com id: "crm_phones.lines.add_receiver".

Custo declarado: até 5 leituras e 1 escritas por chamada (contam na cota diária).

Parâmetros

line_idstringrotaobrigatório

The phone line: an id from crm_phones.lines.list.

user_idstringcorpoobrigatório

A member: a user_id from crm.team.list (with access to Phones).

Resposta

lineobject
addedboolean

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/phones/lines/{line_id}/receivers" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "user_id": "USER_ID"
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/phones/lines/{line_id}/receivers" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "user_id": "USER_ID"
}'