API REST

Boas-vindas ao NewCRM Developers

Use a API do NewCRM para conectar sistemas externos ao CRM do tenant, criar leads automaticamente e consultar dados comerciais com autenticação por token.

v1 disponível

Base URL

https://seu-dominio.com

Formato

JSON

Autenticação

Bearer token

Autenticação

Cada token pertence a um tenant e só acessa os recursos permitidos pelos escopos liberados.

Envie o token em todas as chamadas:

Exemplo
Authorization: Bearer ncrm_seu_token
1

Crie o token

Super Admin > Tokens de API > Novo token.

2

Defina escopos

Libere apenas leitura ou escrita para cada módulo.

3

Integre

Use o header Authorization em cada requisição.

Endpoints disponíveis

A API publica health check, operações de leads, pessoas, organizações, pipelines e motivos de perda.

GET
/api/v1/health

Valida autenticação, tenant e escopos liberados para o token.

token válido
GET
/api/v1/leads

Lista leads do tenant com páginação por limit e offset.

leads:read
GET
/api/v1/leads/{leadId}

Consulta os dados de um lead específico.

leads:read
POST
/api/v1/leads

Cria um lead no pipeline padrão do tenant vinculado ao token.

leads:create
PATCH
/api/v1/leads/{leadId}

Atualiza dados comerciais, responsável, pessoa e organização do lead.

leads:update
PATCH
/api/v1/leads/{leadId}/stage

Move o lead para outra etapa do mesmo pipeline.

leads:move_stage
GET
/api/v1/pipelines

Lista pipelines e etapas disponíveis para movimentação.

leads:read
GET
/api/v1/loss-reasons

Lista motivos de perda ativos para uso ao mover leads para perdido.

leads:read
GET
/api/v1/persons

Lista pessoas do tenant com paginação por limit e offset.

persons:read
POST
/api/v1/persons

Cria uma pessoa com e-mail, telefone, organização e responsável opcionais.

persons:create
PATCH
/api/v1/persons/{personId}

Edita dados cadastrais e contatos principais de uma pessoa.

persons:update
GET
/api/v1/organizations

Lista organizações do tenant com paginação por limit e offset.

organizations:read
POST
/api/v1/organizations

Cria uma organização com documento, site, endereço e responsável opcionais.

organizations:create
PATCH
/api/v1/organizations/{organizationId}

Edita dados cadastrais e endereço de uma organização.

organizations:update

Listar leads

Exemplo
curl -X GET "https://seu-dominio.com/api/v1/leads?limit=50&offset=0" \
  -H "Authorization: Bearer ncrm_seu_token"

Criar lead

Exemplo
curl -X POST "https://seu-dominio.com/api/v1/leads" \
  -H "Authorization: Bearer ncrm_seu_token" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Novo lead via API",
    "estimated_value": 1200,
    "source": "Website",
    "lead_type": "Novo negócio"
  }'

Editar lead

Exemplo
curl -X PATCH "https://seu-dominio.com/api/v1/leads/LEAD_ID" \
  -H "Authorization: Bearer ncrm_seu_token" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Lead atualizado",
    "estimated_value": 2500,
    "owner_id": "USER_ID"
  }'

Mover etapa

Exemplo
curl -X PATCH "https://seu-dominio.com/api/v1/leads/LEAD_ID/stage" \
  -H "Authorization: Bearer ncrm_seu_token" \
  -H "Content-Type: application/json" \
  -d '{
    "stage_id": "STAGE_ID",
    "loss_reason_id": "LOSS_REASON_ID"
  }'

Criar pessoa

Exemplo
curl -X POST "https://seu-dominio.com/api/v1/persons" \
  -H "Authorization: Bearer ncrm_seu_token" \
  -H "Content-Type: application/json" \
  -d '{
    "full_name": "Maria Silva",
    "email": "maria@empresa.com",
    "phone": "55 91 999999999",
    "organization_id": "ORGANIZATION_ID"
  }'

Editar pessoa

Exemplo
curl -X PATCH "https://seu-dominio.com/api/v1/persons/PERSON_ID" \
  -H "Authorization: Bearer ncrm_seu_token" \
  -H "Content-Type: application/json" \
  -d '{
    "full_name": "Maria Souza",
    "phone": "55 91 988888888"
  }'

Criar organização

Exemplo
curl -X POST "https://seu-dominio.com/api/v1/organizations" \
  -H "Authorization: Bearer ncrm_seu_token" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Empresa Exemplo",
    "document_number": "12.345.678/0001-90",
    "city": "Belém",
    "state": "PA"
  }'

Editar organização

Exemplo
curl -X PATCH "https://seu-dominio.com/api/v1/organizations/ORGANIZATION_ID" \
  -H "Authorization: Bearer ncrm_seu_token" \
  -H "Content-Type: application/json" \
  -d '{
    "website": "https://empresa.com",
    "address_number": "120"
  }'
Regra de perda: ao mover um lead para uma etapa com intenção de perdido, envie obrigatoriamente o campo loss_reason_id. Consulte os IDs em /api/v1/loss-reasons.

Respostas de erro

Os erros retornam JSON com uma mensagem objetiva para facilitar tratamento na integração.

401

Token ausente ou inválido

403

Escopo insuficiente

404

Recurso não encontrado

500

Erro inesperado

Escopos

Combine escopos de leitura e escrita conforme a necessidade de cada integração.

leads:readleads:createleads:updateleads:move_stagepersons:readpersons:createpersons:updatepersons:writeorganizations:readorganizations:createorganizations:updateorganizations:writeproducts:readproducts:writeactivities:readactivities:writequotes:readquotes:write