Listar leads
Retorna uma lista paginada de leads. Você controla quais campos são retornados através do parâmetro fields (obrigatório).
Suporta filtros por status e datas de criação/atualização.
curl -X GET "https://sandbox-partner-api.keyspot.com.br/v1/leads?fields=id,name,email,phone,status,source,createdAt&page=25&limit=42&status=NEW_LEAD&createdAfter=2026-01-01T00:00:00Z&createdBefore=2024-12-25T10:00:00Z&updatedAfter=2026-03-01T00:00:00Z&updatedBefore=2024-12-25T10:00:00Z" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN (JWT)"
import requests
import json
url = "https://sandbox-partner-api.keyspot.com.br/v1/leads?fields=id,name,email,phone,status,source,createdAt&page=25&limit=42&status=NEW_LEAD&createdAfter=2026-01-01T00:00:00Z&createdBefore=2024-12-25T10:00:00Z&updatedAfter=2026-03-01T00:00:00Z&updatedBefore=2024-12-25T10:00:00Z"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN (JWT)"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://sandbox-partner-api.keyspot.com.br/v1/leads?fields=id,name,email,phone,status,source,createdAt&page=25&limit=42&status=NEW_LEAD&createdAfter=2026-01-01T00:00:00Z&createdBefore=2024-12-25T10:00:00Z&updatedAfter=2026-03-01T00:00:00Z&updatedBefore=2024-12-25T10:00:00Z", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN (JWT)"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://sandbox-partner-api.keyspot.com.br/v1/leads?fields=id,name,email,phone,status,source,createdAt&page=25&limit=42&status=NEW_LEAD&createdAfter=2026-01-01T00:00:00Z&createdBefore=2024-12-25T10:00:00Z&updatedAfter=2026-03-01T00:00:00Z&updatedBefore=2024-12-25T10:00:00Z", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN (JWT)")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://sandbox-partner-api.keyspot.com.br/v1/leads?fields=id,name,email,phone,status,source,createdAt&page=25&limit=42&status=NEW_LEAD&createdAfter=2026-01-01T00:00:00Z&createdBefore=2024-12-25T10:00:00Z&updatedAfter=2026-03-01T00:00:00Z&updatedBefore=2024-12-25T10:00:00Z')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN (JWT)'
response = http.request(request)
puts response.body
{
"data": [
{
"id": "clx1abc23def456",
"name": "João Silva",
"email": "joao@example.com",
"phone": "11999999999",
"status": "NEW_LEAD",
"source": "WEBSITE",
"createdAt": "2026-03-13T10:30:00.000Z"
}
],
"meta": {
"page": 1,
"limit": 20,
"total": 150,
"totalPages": 8
}
}
{
"error": "fields: The "fields" parameter is required",
"code": "VALIDATION_ERROR"
}
{
"error": "Invalid or expired token",
"code": "INVALID_TOKEN"
}
{
"error": "Rate limit exceeded",
"code": "RATE_LIMIT_EXCEEDED"
}
{
"error": "Internal server error",
"code": "INTERNAL_ERROR"
}
/v1/leads
Token JWT obtido via POST /v1/auth/token. Válido por 1 hora.
POST /v1/auth/token. Válido por 1 hora.Campos a serem retornados, separados por vírgula. Use GET /v1/fields para consultar campos disponíveis. Exemplo: name,email,phone,status
Número da página (começa em 1)
Quantidade de itens por página (máximo 100)
Filtrar por status do lead
Retornar leads criados após esta data (ISO 8601)
Retornar leads criados antes desta data (ISO 8601)
Retornar leads atualizados após esta data (ISO 8601). Útil para sincronização incremental.
Retornar leads atualizados antes desta data (ISO 8601)
Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token (JWT). Token JWT obtido via POST /v1/auth/token. Válido por 1 hora.
Query Parameters
Campos a serem retornados, separados por vírgula. Use GET /v1/fields para consultar campos disponíveis. Exemplo: name,email,phone,status
Número da página (começa em 1)
Quantidade de itens por página (máximo 100)
Filtrar por status do lead
NEW_LEADIN_SERVICEVISIT_SCHEDULEDVISIT_COMPLETEDPROPOSAL_MADECONVERTEDLOSTRetornar leads criados após esta data (ISO 8601)
Retornar leads criados antes desta data (ISO 8601)
Retornar leads atualizados após esta data (ISO 8601). Útil para sincronização incremental.
Retornar leads atualizados antes desta data (ISO 8601)
Responses
Identificador único do lead
Nome do lead
E-mail do lead
Telefone do lead
Mensagem do lead
Fonte de origem do lead
WEBSITEWHATSAPPPHONEEMAILSOCIAL_MEDIAINSTAGRAMFACEBOOKPORTALPORTAL_VIVAREALPORTAL_ZAPIMOVEISPORTAL_OLXPORTAL_IMOVELWEBPORTAL_CHAVESNAMAOMETA_ADSGOOGLE_ADSRD_STATIONREFERRALREAL_ESTATEOTHERAPIStatus do lead no funil de vendas
NEW_LEADIN_SERVICEVISIT_SCHEDULEDVISIT_COMPLETEDPROPOSAL_MADECONVERTEDLOSTPrioridade do lead
LOWMEDIUMHIGHID do imóvel vinculado
Título do imóvel de interesse
Data de criação (ISO 8601)
Data da última atualização (ISO 8601)
Metadados de paginação
Página atual
Itens por página
Total de registros
Total de páginas
Mensagem de erro legível
Código de erro programático
Mensagem de erro legível
Código de erro programático
Mensagem de erro legível
Código de erro programático
Mensagem de erro legível
Código de erro programático
Last updated Mar 13, 2026
Built with Documentation.AI