Saltar para o conteúdo principal

API de Leads

Endpoints para gerenciar leads programaticamente no SalesOS.

Listar leads

GET /v1/leads
Parâmetros de query:
ParâmetroTipoDescrição
pageintegerPágina atual (padrão: 1)
per_pageintegerItens por página (padrão: 20, máx: 100)
statusstringFiltrar por status: new, contacted, qualified, converted, discarded
assigned_touuidFiltrar por responsável
created_afterdatetimeLeads criados após esta data (ISO 8601)
created_beforedatetimeLeads criados antes desta data
sortstringCampo de ordenação. Prefixo - para decrescente
searchstringBusca por nome, e-mail ou empresa
Resposta (200):
{
  "data": [
    {
      "id": "uuid",
      "name": "Maria Silva",
      "email": "maria@empresa.com",
      "phone": "+5511999999999",
      "company": "Empresa ABC",
      "status": "qualified",
      "source": "website",
      "assigned_to": "uuid",
      "custom_fields": {
        "segmento": "Tecnologia",
        "porte": "Médio"
      },
      "created_at": "2026-03-01T10:00:00Z",
      "updated_at": "2026-03-10T15:30:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 20,
    "total": 85,
    "total_pages": 5
  }
}

Buscar lead por ID

GET /v1/leads/:id
Resposta (200): Objeto do lead com todos os campos, incluindo histórico de atividades.

Criar lead

POST /v1/leads
Body:
{
  "name": "João Santos",
  "email": "joao@empresa.com",
  "phone": "+5511988888888",
  "company": "Empresa XYZ",
  "source": "api",
  "assigned_to": "uuid",
  "custom_fields": {
    "segmento": "Varejo"
  }
}
Campos obrigatórios: name, email Resposta (201): Objeto do lead criado.
Se um lead com o mesmo e-mail já existir, a API retorna 409 Conflict com o ID do lead existente.

Atualizar lead

PATCH /v1/leads/:id
Body: Apenas os campos que deseja alterar.
{
  "status": "contacted",
  "phone": "+5511977777777"
}
Resposta (200): Objeto do lead atualizado.

Excluir lead

DELETE /v1/leads/:id
Resposta (204): Sem conteúdo.
A exclusão é permanente. Para manter o histórico, prefira alterar o status para discarded em vez de excluir.

Converter lead em oportunidade

POST /v1/leads/:id/convert
Body:
{
  "deal_name": "Projeto XYZ",
  "deal_value": 50000,
  "pipeline_stage": "qualification"
}
Resposta (201): Objeto da oportunidade criada, com referência ao lead original.

Exemplos de uso

# Listar leads qualificados
curl -X GET "https://api.play2sell.com/v1/leads?status=qualified&sort=-created_at" \
  -H "Authorization: Bearer SEU_TOKEN"

Próximos passos