Pular para o conteúdo principal

Leads

Gerencie leads (contatos iniciais e prospects) vinculados a sua empresa.

Listar Leads

GET /external/v1/leads

Retorna uma lista paginada de leads.

Query Parameters:

ParametroTipoObrigatorioDescricao
pagenumberNaoPagina atual (default: 1)
limitnumberNaoItens por pagina (default: 20, max: 100)
searchstringNaoBusca por titulo
statusstringNaoFiltro por status: NEW, CONTACTED, QUALIFIED, UNQUALIFIED, CONVERTED
orderBystringNaoCampo de ordenacao: title, createdAt (default: createdAt)
orderstringNaoDirecao: ASC ou DESC (default: DESC)

Exemplo de requisicao:

curl -X GET "https://api.tesselys.com.br/external/v1/leads?page=1&limit=10&status=NEW" \
-H "Authorization: Bearer {accessToken}" \
-H "x-company-token: {companyToken}"

Resposta (200):

{
"data": [
{
"id": "clx7f8g9h0i1j2k3l4m5n6o7",
"title": "Interesse em plano Enterprise",
"personId": "clx1a2b3c4d5e6f7g8h9i0j1",
"personName": "Tech Solutions Ltda",
"status": "NEW",
"sourceChannel": "WEBSITE",
"description": "Contato recebido via formulario do site solicitando demonstracao.",
"tags": ["enterprise", "inbound"],
"isActive": true,
"createdAt": "2026-03-20T09:00:00.000Z",
"updatedAt": "2026-03-20T09:00:00.000Z"
}
],
"meta": {
"total": 34,
"page": 1,
"limit": 10,
"totalPages": 4
}
}

Buscar Lead por ID

GET /external/v1/leads/:id

Exemplo de requisicao:

curl -X GET "https://api.tesselys.com.br/external/v1/leads/clx7f8g9h0i1j2k3l4m5n6o7" \
-H "Authorization: Bearer {accessToken}" \
-H "x-company-token: {companyToken}"

Resposta (200):

{
"id": "clx7f8g9h0i1j2k3l4m5n6o7",
"title": "Interesse em plano Enterprise",
"personId": "clx1a2b3c4d5e6f7g8h9i0j1",
"personName": "Tech Solutions Ltda",
"status": "NEW",
"sourceChannel": "WEBSITE",
"description": "Contato recebido via formulario do site solicitando demonstracao.",
"tags": ["enterprise", "inbound"],
"isActive": true,
"createdAt": "2026-03-20T09:00:00.000Z",
"updatedAt": "2026-03-20T09:00:00.000Z"
}

Criar Lead

POST /external/v1/leads

Body:

CampoTipoObrigatorioDescricao
titlestringSimTitulo do lead (max: 255)
personIdstringNaoID da pessoa vinculada
descriptionstringNaoDescricao detalhada do lead
sourceChannelstringNaoCanal de origem: WEBSITE, PHONE, EMAIL, REFERRAL, SOCIAL_MEDIA, EVENT, OTHER
tagsstring[]NaoTags livres para organizacao

Exemplo de requisicao:

curl -X POST "https://api.tesselys.com.br/external/v1/leads" \
-H "Authorization: Bearer {accessToken}" \
-H "x-company-token: {companyToken}" \
-H "Content-Type: application/json" \
-d '{
"title": "Prospeccao via LinkedIn - Acme Corp",
"personId": "clx2b3c4d5e6f7g8h9i0j1k2",
"description": "Contato iniciado via LinkedIn apos interacao com post sobre automacao.",
"sourceChannel": "SOCIAL_MEDIA",
"tags": ["linkedin", "automacao"]
}'

Resposta (201):

{
"id": "clx8g9h0i1j2k3l4m5n6o7p8",
"title": "Prospeccao via LinkedIn - Acme Corp",
"personId": "clx2b3c4d5e6f7g8h9i0j1k2",
"personName": "Maria Oliveira",
"status": "NEW",
"sourceChannel": "SOCIAL_MEDIA",
"description": "Contato iniciado via LinkedIn apos interacao com post sobre automacao.",
"tags": ["linkedin", "automacao"],
"isActive": true,
"createdAt": "2026-03-25T14:30:00.000Z",
"updatedAt": "2026-03-25T14:30:00.000Z"
}
Nota

O lead e criado automaticamente com status NEW. Para alterar o status, utilize o endpoint de atualizacao.

Atualizar Lead

PUT /external/v1/leads/:id

Atualiza os dados de um lead existente. Envie apenas os campos que deseja alterar.

Body (campos opcionais):

CampoTipoDescricao
titlestringNovo titulo
statusstringNovo status: NEW, CONTACTED, QUALIFIED, UNQUALIFIED, CONVERTED
descriptionstringNova descricao
tagsstring[]Novas tags (substitui as anteriores)

Exemplo de requisicao:

curl -X PUT "https://api.tesselys.com.br/external/v1/leads/clx8g9h0i1j2k3l4m5n6o7p8" \
-H "Authorization: Bearer {accessToken}" \
-H "x-company-token: {companyToken}" \
-H "Content-Type: application/json" \
-d '{
"status": "CONTACTED",
"description": "Reuniao agendada para 28/03. Interesse confirmado em automacao financeira.",
"tags": ["linkedin", "automacao", "reuniao-agendada"]
}'

Resposta (200):

{
"id": "clx8g9h0i1j2k3l4m5n6o7p8",
"title": "Prospeccao via LinkedIn - Acme Corp",
"personId": "clx2b3c4d5e6f7g8h9i0j1k2",
"personName": "Maria Oliveira",
"status": "CONTACTED",
"sourceChannel": "SOCIAL_MEDIA",
"description": "Reuniao agendada para 28/03. Interesse confirmado em automacao financeira.",
"tags": ["linkedin", "automacao", "reuniao-agendada"],
"isActive": true,
"createdAt": "2026-03-25T14:30:00.000Z",
"updatedAt": "2026-03-25T16:00:00.000Z"
}

Valores de Enum

status

ValorDescricao
NEWLead novo, ainda nao contatado
CONTACTEDLead contatado, aguardando retorno
QUALIFIEDLead qualificado com potencial de conversao
UNQUALIFIEDLead sem perfil ou interesse adequado
CONVERTEDLead convertido em negocio

sourceChannel

ValorDescricao
WEBSITEFormulario ou chat do site
PHONEContato telefonico
EMAILContato por email
REFERRALIndicacao de cliente ou parceiro
SOCIAL_MEDIARedes sociais (LinkedIn, Instagram, etc.)
EVENTEvento, feira ou conferencia
OTHEROutro canal