Requisições
Utilização de cada endpoint e padrões de requisição
Contamos atualmente com 4 endpoints em nossa API de Parceiros, aprenda à seguir como utilizá-los da maneira correta e a função de cada um.
A URL de base de todos os endpoints é: https://web.smsfunnel.com.br/api/parceiros/v1
Padrão de corpo e regras das requisições
Todas requisições de consulta devem ter pelo menos as chaves user_id ou email preenchidas,
user_id
sendo o ID do usuário e oemail
sendo o email do usuário que deseja consultar as métricas. Não permitido o uso simultâneo das duas chaves.Você só terá acesso às informações sobre os seus usuários afiliados.
As requisições não poderão constar headers como set-cookie e afins.
Código de Erros Comuns
400 Bad Request
: A requisição não pôde ser processada devido a um erro genérico.401 Unauthorized
: Sua Chave de API é inválida.403 Forbidden
: Seu usuário não tem a API de Parceiros habilitada.404 Not Found
: O usuário solicitado não foi encontrado ou não pertence aos seus afiliados.422 Unprocessable Entity
: Seu postback está com algum problema.500 Internal Server Error
: Ocorreu um erro interno ao processar a requisição.
Corpo de Resposta de Erros Comuns
{
"error": "The error message here"
}
Endpoints
GET /recharges
Função: Obter dados de recargas do usuário.
Corpo de envio:
{
"email": "meu_usuario@example.com",
// Campos de data (Opcionais), devem ter no máximo 90 dias de diferença entre si.
"from_date": "2024-01-01", // Data inicial
"to_date": "2024-02-01" // Data final
}
Corpo de resposta:
{
"recharges": [
{
"created_at": "2024-11-21 00:00:00", // Data da recarga
"description": "Recarga Direta", // Descrição
"service": "SMS", // Serviço
"credits": 0, // Quantidade de créditos recarregados
"price": 0, // Preço
"total": 0, // Valor
"situation": "APPROVED" // Situação
}, ...
]
}
GET /sent-messages
Função: Obter mensagens enviadas do usuário.
Corpo de envio:
{
"email": "meu_usuario@example.com",
// Campos de data (Opcionais), devem ter no máximo 90 dias de diferença entre si.
"from_date": "2024-01-01", // Data inicial
"to_date": "2024-02-01" // Data final
}
Corpo de resposta:
{
"sms": 123, // Quantidade de SMS enviados no período
"whatsapp": 321, // Quantidade de mensagens WhatsApp enviados no período
"clicks": 10 // Quantidade de Clicks nos links no período
}
GET /credits
Função: Obter dados de créditos gerais do usuário.
Corpo de envio:
{
"email": "meu_usuario@example.com"
}
Corpo de resposta:
{
"sms": {
"contracted": 0, // SMS Contratados
"sent": 0, // SMS Enviados
"available": 0 // SMS Disponíveis
},
"whatsapp": {
"contracted": 0, // WhatsApp Contratados
"sent": 0, // WhatsApp Enviados
"available": 0 // WhatsApp Disponíveis
}
}
GET /clicks
Função: Obter o número de clicks nos envios do usuário
Corpo de envio:
{
"email": "meu_usuario@example.com", //campo obrigatório
"Id": "id da automação ou id do broadcast", //campo opcional, caso preenchido, retornará dados apenas do id informado.
//Campos de data (Opcionais), devem ter no máximo 90 dias de diferença entre si.
"from_date": "2024-01-01", //Data inicial
"to_date": "2024-02-01" // Data final
}
Corpo de resposta:
{
"sms": 123, // quantidade total de clicks
"whatsapp": 321, // quantidade total de envios de mensagem whatsapp
"clicks": 10, // quantidade total de envios de SMS
"campaigns": [
{
"name": "pix gerado", // nome da campanha de automação
"clicks": 2, // quantidade de clicks da campanha em específico da automação
"sms": 23 // quantidade de SMS disparados na automação
},
{
"name": "cartao pago",
"clicks": 2,
"sms": 10
}
],
"broadcasts": [
{
"name": "promoção Carnaval", // nome da campanha do broadcast
"clicks": 5, // quantidade de clicks da campanha em específico do broadcast
"sms": 40 // quantidade de SMS disparados no broadcast
},
{
"name": "aposta tbt",
"clicks": 1,
"sms": 50
}
]
}
GET /phones-blacklist
Recupera todos os números da blacklist na conta de e-mail informada.
Corpo de envio:
{
"email": "johndoe@email.com"
}
Corpo de resposta:
{
"phones": [
"51989261101",
"51989261102",
"51989261103"
]
}
POST /phones-blacklist
Inclusão de telefones na blacklist na conta de e-mail informada. Caso o número seja inválido, ele será descartado, não sendo incluído na blacklist.
Corpo de envio:
{
"email": "johndoe@email.com",
"phones": [
51989261101,
"51989261103"
]
}
Corpo de resposta:
{
"message": "Blacklist atualizada com sucesso",
"phones_count": 2
}
DELETE /phones-blacklist
Exclusão de telefones na blacklist.
Corpo de envio:
{
"email": "johndoe@email.com",
"phones": [
51989261101,
"51989261103"
]
}
Corpo de resposta:
{
"message": "Números removidos da blacklist com sucesso",
"phones_removed": 2
}
Dúvidas?
Em caso de dúvidas, entre em contato com nosso suporte.
Last updated