Documentação da API

API de Clientes

Gerenciamento de clientes e contatos

16 endpoints · base https://api.comando.one/v1 · autenticação por chave cmd_live_…

GET/customers

Listar clientes

customers:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

page(query)integerNúmero da página (default: 1)
per_page(query)integerItens por página (default: 20, máx: 100)
search(query)stringBusca por nome, e-mail ou documento
status(query)stringFiltrar por status
type(query)"fisica" | "juridica" | "estrangeira"Filtrar por tipo de pessoa
include(query)"addresses"addresses = traz os endereços de cada cliente no campo `addresses` (1 chamada em vez de 1 por cliente)

Resposta 200 — Listagem paginada

idstring (uuid)
namestring
emailstring | null
phonestring | null
documentstring | nullCPF ou CNPJ
type"fisica" | "juridica" | "estrangeira"Natureza JURÍDICA do cadastro, não a categoria de atividade: fisica = pessoa física (CPF); juridica = pessoa jurídica (CNPJ), o que inclui empresas, órgãos públicos, prefeituras e a Receita Federal; estrangeira = sem CNPJ/CPF. Na dúvida, OMITA o campo — o padrão já cobre o caso comum.
company_namestring | null
trade_namestring | null
statusstring
created_atstring (date-time)
updated_atstring (date-time)
addressesarray de CustomerAddressSó vem com ?include=addresses. Endereço padrão primeiro; lista vazia = cliente sem endereço cadastrado.

Exemplo

curl -X GET "https://api.comando.one/v1/customers" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
POST/customers

Criar cliente

customers:write

Parâmetros, corpo, resposta e exemplo

Corpo (JSON)

nameobrigatóriostring
emailstring
phonestring
documentstring
type"fisica" | "juridica" | "estrangeira"Natureza JURÍDICA do cadastro, não a categoria de atividade: fisica = pessoa física (CPF); juridica = pessoa jurídica (CNPJ), o que inclui empresas, órgãos públicos, prefeituras e a Receita Federal; estrangeira = sem CNPJ/CPF. Na dúvida, OMITA o campo — o padrão já cobre o caso comum.
company_namestring
trade_namestring
statusstring

Resposta 201 — Cliente criado

idstring (uuid)
namestring
emailstring | null
phonestring | null
documentstring | nullCPF ou CNPJ
type"fisica" | "juridica" | "estrangeira"Natureza JURÍDICA do cadastro, não a categoria de atividade: fisica = pessoa física (CPF); juridica = pessoa jurídica (CNPJ), o que inclui empresas, órgãos públicos, prefeituras e a Receita Federal; estrangeira = sem CNPJ/CPF. Na dúvida, OMITA o campo — o padrão já cobre o caso comum.
company_namestring | null
trade_namestring | null
statusstring
created_atstring (date-time)
updated_atstring (date-time)
addressesarray de CustomerAddressSó vem com ?include=addresses. Endereço padrão primeiro; lista vazia = cliente sem endereço cadastrado.

Exemplo

curl -X POST "https://api.comando.one/v1/customers" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{"name":"Acme Serviços Ltda","email":"contato@acme.com.br","type":"juridica","document":"12345678000195"}'
DELETE/customers/{id}

Excluir cliente

customers:delete

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Resposta 204 — Cliente excluído (sem corpo)

Sem corpo.

Exemplo

curl -X DELETE "https://api.comando.one/v1/customers/{id}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
GET/customers/{id}

Obter cliente

customers:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)
include(query)"addresses"addresses = inclui os endereços do cliente no campo `addresses`

Resposta 200 — Cliente

idstring (uuid)
namestring
emailstring | null
phonestring | null
documentstring | nullCPF ou CNPJ
type"fisica" | "juridica" | "estrangeira"Natureza JURÍDICA do cadastro, não a categoria de atividade: fisica = pessoa física (CPF); juridica = pessoa jurídica (CNPJ), o que inclui empresas, órgãos públicos, prefeituras e a Receita Federal; estrangeira = sem CNPJ/CPF. Na dúvida, OMITA o campo — o padrão já cobre o caso comum.
company_namestring | null
trade_namestring | null
statusstring
created_atstring (date-time)
updated_atstring (date-time)
addressesarray de CustomerAddressSó vem com ?include=addresses. Endereço padrão primeiro; lista vazia = cliente sem endereço cadastrado.

Exemplo

curl -X GET "https://api.comando.one/v1/customers/{id}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
PATCH/customers/{id}

Atualizar cliente

customers:write

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Corpo (JSON)

namestring
emailstring | null
phonestring | null
documentstring | null
type"fisica" | "juridica" | "estrangeira"Natureza JURÍDICA do cadastro, não a categoria de atividade: fisica = pessoa física (CPF); juridica = pessoa jurídica (CNPJ), o que inclui empresas, órgãos públicos, prefeituras e a Receita Federal; estrangeira = sem CNPJ/CPF. Na dúvida, OMITA o campo — o padrão já cobre o caso comum.
company_namestring | null
trade_namestring | null
statusstring

Resposta 200 — Cliente atualizado

idstring (uuid)
namestring
emailstring | null
phonestring | null
documentstring | nullCPF ou CNPJ
type"fisica" | "juridica" | "estrangeira"Natureza JURÍDICA do cadastro, não a categoria de atividade: fisica = pessoa física (CPF); juridica = pessoa jurídica (CNPJ), o que inclui empresas, órgãos públicos, prefeituras e a Receita Federal; estrangeira = sem CNPJ/CPF. Na dúvida, OMITA o campo — o padrão já cobre o caso comum.
company_namestring | null
trade_namestring | null
statusstring
created_atstring (date-time)
updated_atstring (date-time)
addressesarray de CustomerAddressSó vem com ?include=addresses. Endereço padrão primeiro; lista vazia = cliente sem endereço cadastrado.

Exemplo

curl -X PATCH "https://api.comando.one/v1/customers/{id}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
GET/customers/{id}/addresses

Listar endereços do cliente

Funciona também para cliente compartilhado com a sua empresa (somente leitura). Para os endereços de vários clientes de uma vez, use GET /customers?include=addresses.

customers:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Resposta 200 — Endereços

idstring (uuid)
customer_idstring (uuid)
labelstring | null
streetstring | null
numberstring | null
complementstring | null
neighborhoodstring | null
citystring | null
statestring | nullUF (2 letras)
zipstring | null
countrystring | null
ibge_codestring | null
is_defaultboolean
created_atstring (date-time)
updated_atstring (date-time)

Exemplo

curl -X GET "https://api.comando.one/v1/customers/{id}/addresses" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
POST/customers/{id}/addresses

Adicionar endereço

customers:write

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Corpo (JSON)

labelstring
streetstring
numberstring
complementstring
neighborhoodstring
citystring
statestring
zipstring
countrystring
ibge_codestring
is_defaultboolean

Resposta 201 — Criado

idstring (uuid)
customer_idstring (uuid)
labelstring | null
streetstring | null
numberstring | null
complementstring | null
neighborhoodstring | null
citystring | null
statestring | nullUF (2 letras)
zipstring | null
countrystring | null
ibge_codestring | null
is_defaultboolean
created_atstring (date-time)
updated_atstring (date-time)

Exemplo

curl -X POST "https://api.comando.one/v1/customers/{id}/addresses" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
DELETE/customers/{id}/addresses/{addressId}

Excluir endereço

customers:delete

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)
addressIdobrigatório(path)string (uuid)

Resposta 204 — Excluído

Sem corpo.

Exemplo

curl -X DELETE "https://api.comando.one/v1/customers/{id}/addresses/{addressId}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
PATCH/customers/{id}/addresses/{addressId}

Atualizar endereço

customers:write

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)
addressIdobrigatório(path)string (uuid)

Corpo (JSON)

labelstring
streetstring
numberstring
complementstring
neighborhoodstring
citystring
statestring
zipstring
countrystring
ibge_codestring
is_defaultboolean

Resposta 200 — Atualizado

idstring (uuid)
customer_idstring (uuid)
labelstring | null
streetstring | null
numberstring | null
complementstring | null
neighborhoodstring | null
citystring | null
statestring | nullUF (2 letras)
zipstring | null
countrystring | null
ibge_codestring | null
is_defaultboolean
created_atstring (date-time)
updated_atstring (date-time)

Exemplo

curl -X PATCH "https://api.comando.one/v1/customers/{id}/addresses/{addressId}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
GET/customers/{id}/contacts

Listar contatos do cliente

customers:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Resposta 200 — Contatos

idstring (uuid)
customer_idstring (uuid)
namestring
emailstring | null
phonestring | null
rolestring | null
departmentstring | null
notesstring | null
is_primaryboolean
created_atstring (date-time)
updated_atstring (date-time)

Exemplo

curl -X GET "https://api.comando.one/v1/customers/{id}/contacts" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
POST/customers/{id}/contacts

Adicionar contato

customers:write

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Corpo (JSON)

nameobrigatóriostring
emailstring
phonestring
rolestring
departmentstring
notesstring
is_primaryboolean

Resposta 201 — Criado

idstring (uuid)
customer_idstring (uuid)
namestring
emailstring | null
phonestring | null
rolestring | null
departmentstring | null
notesstring | null
is_primaryboolean
created_atstring (date-time)
updated_atstring (date-time)

Exemplo

curl -X POST "https://api.comando.one/v1/customers/{id}/contacts" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{"name":"<string>"}'
DELETE/customers/{id}/contacts/{contactId}

Excluir contato

customers:delete

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)
contactIdobrigatório(path)string (uuid)

Resposta 204 — Excluído

Sem corpo.

Exemplo

curl -X DELETE "https://api.comando.one/v1/customers/{id}/contacts/{contactId}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
PATCH/customers/{id}/contacts/{contactId}

Atualizar contato

customers:write

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)
contactIdobrigatório(path)string (uuid)

Corpo (JSON)

nameobrigatóriostring
emailstring
phonestring
rolestring
departmentstring
notesstring
is_primaryboolean

Resposta 200 — Atualizado

idstring (uuid)
customer_idstring (uuid)
namestring
emailstring | null
phonestring | null
rolestring | null
departmentstring | null
notesstring | null
is_primaryboolean
created_atstring (date-time)
updated_atstring (date-time)

Exemplo

curl -X PATCH "https://api.comando.one/v1/customers/{id}/contacts/{contactId}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{"name":"<string>"}'
GET/customers/{id}/contracts

Contratos do cliente

customers:readcontracts:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)
page(query)integerNúmero da página (default: 1)
per_page(query)integerItens por página (default: 20, máx: 100)

Resposta 200 — Listagem paginada

idstring (uuid)
customer_idstring (uuid)
customersobject
titlestring | null
status"ativo" | "suspenso" | "cancelado" | "finalizado"
frequency"semanal" | "quinzenal" | "mensal" | "bimestral" | "trimestral" | "semestral" | "anual"
start_datestring (date)
end_datestring | null (date)
amountnumber
due_daysinteger
next_generation_datestring | null (date)
notesstring | null
created_atstring (date-time)
updated_atstring (date-time)

Exemplo

curl -X GET "https://api.comando.one/v1/customers/{id}/contracts" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
GET/customers/{id}/invoices

Faturas do cliente

customers:readinvoices:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)
page(query)integerNúmero da página (default: 1)
per_page(query)integerItens por página (default: 20, máx: 100)

Resposta 200 — Faturas do cliente

Sem corpo.

Exemplo

curl -X GET "https://api.comando.one/v1/customers/{id}/invoices" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
GET/customers/{id}/proposals

Propostas do cliente

customers:readproposals:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)
page(query)integerNúmero da página (default: 1)
per_page(query)integerItens por página (default: 20, máx: 100)

Resposta 200 — Listagem paginada

idstring (uuid)
customer_idstring (uuid)
customersobject
status"rascunho" | "enviada" | "aceita" | "recusada" | "cancelada" | "faturada"
total_amountnumber
valid_untilstring | null (date)
notesstring | null
created_atstring (date-time)
updated_atstring (date-time)

Exemplo

curl -X GET "https://api.comando.one/v1/customers/{id}/proposals" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"

Início rápido, autenticação, SDK, servidor MCP e o playground para testar sem escrever código estão na documentação completa. A especificação em OpenAPI está em api.comando.one/openapi.json.

Outros recursos da API

Ou deixe a IA usar a API por você

O servidor MCP expõe estes mesmos recursos ao ChatGPT, Claude ou Gemini — com OAuth, sem chave de API.

Conectar um assistente