Introdução
Seja bem-vindo a nossa documentação para desenvolvedores! Aqui você encontrará tudo que precisa para integrar sua empresa com nossa plataforma.
Termos
Termo | Descrição |
---|---|
Campanha |
É o agrupador de um ou mais envios. |
Centro de Custo |
É o agrupador de uma ou mais campanhas. |
MO |
MO (Mobile Originated) é a resposta via SMS ou Whatsapp originada do aparelho do usuário final. |
LA |
Número curto (Short Code) de 5 ou 6 dígitos, utilizado para envio e recebimento de mensagens SMS. São designados pelas operadoras para integradores homologados, e possuem regras anti-fraude e anti-spam. |
API
Esta API permite que você automatize os de envios de mensagens (únicos ou em lote) e também possibilita a recuperação dos status dos envios através de consultas. Ela utiliza o protocolo HTTP com TLS e aceita os métodos POST
com parâmetros em JSON ou GET
com parâmetros via Query String.
Para desenvolvimento/testes deve-se utilizar os serviços do ambiente de "Homologação". |
Hostname | api.bemoby.com |
---|---|
Porta |
443 (https) |
Protocolo |
HTTPS (encriptação TLS) |
Hostname | api.hm.bemoby.com |
---|---|
Porta |
443 (https) |
Protocolo |
HTTPS (encriptação TLS) |
Codificação (encoding)
O Padrão de codificação utilizado é o UTF-8, todo conteúdo das mensagens deve seguir esse padrão.
Autenticação
Para efetuar a autenticação em nossa API é necessário primeiro solicitar um usuário específico para esta finalidade (Usuários comuns da aplicação não possuem permissão de acesso a API). O usuário precisa estar associado a uma conta ativa e devidamente configurada. Este usuário precisará também de um e-mail válido o qual será utilizado como USERNAME. Através da requisição de login é obtido um TOKEN que deve ser inserido no cabeçalho de todas as requisições posteriores no campo Authorization.
O TOKEN possui validade de 30 minutos. |
URL de autenticação
POST https://api.bemoby.com/users/login
Estrutura da Requisição
Listagem dos campos do JSON da requisição.
* Campos obrigatórios
Campo | Tipo | Descrição |
---|---|---|
username* |
String |
E-mail do usuário |
password* |
String |
Senha do usuário |
Exemplo de Requisição
$ curl 'https://api.bemoby.com/users/login' -i -X POST \
-H 'Content-Type: application/json' \
-d '{
"username" : "usuario@bemoby.com",
"password" : "1234"
}'
Exemplo de Resposta
A resposta da autenticação retorna um TOKEN no formato "application/json;charset=UTF-8".
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"data":{
"item":{
"token":"eyJhbGciOiJIUzUxMiIsInppcCI6IkRFRiJ9.eNqMkM1ugzAQhN_F52BB-E1OdQltkBCJEjjVFTLgtG4DRrZRG0V59y6peouinjz-dnZXO2f0YQRaotauDyx0A8tpo8DywvZg1XXjWAtue2HgOIc6WqAZ0mMNZjlwxVqp7PlDzTtZn3AjO6gKZtDS8aN56HuuH8wQ_x5-QeTZ4QRaZhgMOFPUs45TtKS3h1E0o0jJI9fgeaEoJllWxUleJLuKFEWSr0geJ1fX7VK12SY7Uty1bEm5v2uIN3lB4qLK0n3xH1-5Xf2tXCVPpMyg6xU-09Vwx_kCmjWNHHuTtgDmIQAxKdcOQDZSm5j3hqu0vR7uu1O77vSjkp8TBegAGZSQSpjTNcB1-rym6AL5m9PAIV2KajWFiHv-peVxNEL2Guu3DrNBYMW1wWw073jUXGEyiBJeitDlBwAA__8.QIPOIBvLT3tjc4YCFSwhuxQzlmRW9-IaMDYlWCmKbB0it0kTQyD6rLmwLO4HaFeqz-hLBdUUQtOQzXD1FPCaRc"
}
},
"message":"OK",
"statusCode":200
}
SMS
Serviço para envio de mensagens SMS comuns.
Mensagens que possuem somente caracteres que estão na tabela abaixo, são cobradas a cada 160 caracteres. Caso a mensagem possua um ou mais caracteres que não estão na tabela abaixo, a cobrança é feita a cada 70 caracteres, conforme especificação do protocolo na rede das operadoras. |
Space |
( |
0 |
8 |
@ |
H |
P |
X |
` |
h |
p |
x |
! |
) |
1 |
9 |
A |
I |
Q |
Y |
a |
i |
q |
y |
“ |
* |
2 |
: |
B |
J |
R |
Z |
b |
j |
r |
z |
# |
+ |
3 |
; |
C |
K |
S |
[ |
c |
k |
s |
{ |
$ |
, |
4 |
< |
D |
L |
T |
\ |
d |
l |
t |
|
% |
- |
5 |
= |
E |
M |
U |
] |
e |
m |
u |
} |
& |
. |
6 |
> |
F |
N |
V |
^ |
f |
n |
v |
~ |
‘ |
/ |
7 |
? |
G |
O |
W |
_ |
g |
o |
w |
Todos os tipos de envio possuem um filtro que é aplicado sobre as mensagens enviadas para remoção de acentuação, quebra de linhas e espaçamentos desnecessários. |
Envio
Utilizado para envios em massa agrupados em uma campanha diária por centro de custo (sem o parâmetro campaignName atribuído) ou em uma campanha específica (com o parâmetro campaignName atribuído).
Todas as requisições que NÃO possuírem nome de campanha configurado através do parâmetro campaignName terão os SMSs adicionados a uma campanha diária (por centro de custo enviado) criada automaticamente, ou seja, todos envios de um mesmo dia e de um mesmo centro de custo sempre pertencerão a mesma campanha. |
Todas as requisições que possuírem nome de campanha configurado através do parâmetro campaignName terão os SMSs adicionados a uma campanha única e exclusiva. Neste caso a cada requisição será gerada uma nova campanha. |
Existe um limite de 100000 mensagens por requisição. |
URL de envio
POST https://api.bemoby.com/v1/sms/send
Estrutura da Requisição
Listagem dos campos do JSON da requisição.
* Campos obrigatórios
Campo | Tipo | Descrição |
---|---|---|
costCenterId |
Long |
Código do centro de custo cadastrado na BeMoby.com. Caso não informado será utilizado o centro de custo do usuário. |
message* |
String |
Texto da mensagem que será enviada. |
campaignName |
String |
Nome da nova campanha que será criada (Caso informado será criada uma nova campanha). |
messages* |
Detalhe[] |
Lista de mensagens/destinatários que serão enviadas. |
Campo | Tipo | Descrição |
---|---|---|
to* |
String |
Telefone para qual será enviada a mensagem. Exemplo: 34999991111 |
message |
String |
Texto da mensagem que será enviada |
externalId |
String |
Um ID único definido por você para conferência com os status de envio. Este parâmetro é opcional, e você pode utilizar o ID gerado pela BeMoby para esta conferência. |
vars |
Object |
Objeto JSON que será utilizado para popular as variáveis da mensagem caso seja necessário |
Quando um Detalhe possuir o texto da mensagem ela irá sobrepor a mensagem do Mestre |
Exemplo de Requisição
Exemplo de requisição padrão: Neste exemplo não foi informado o centro de custo (costCenterId) nem o nome da campanha (campaignName). Será utilizado o centro de custo do usuário logado e os envios serão agrupados em uma campanha diária por este centro de custo.
$ curl 'https://api.bemoby.com/v1/sms/send' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"message" : "Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!!",
"messages" : [
{
"to" : "34999991111",
"vars" : {"nome" : "Fulano", "idade" : 30},
"externalId" : "1241"
},
{
"to" : "34999991112",
"vars" : {"nome" : "Sicrano", "idade" : 19},
"externalId" : "1242"
},
{
"to" : "34999991113",
"message" : "Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!! Você ganhou um desconto especial!!!",
"vars" : {"nome" : "Beltrano", "idade" : 45},
"externalId" : "1243"
}
]
}'
Neste exemplo foi informado o centro de custo (costCenterId) e o nome da campanha (campaignName). Será utilizado o centro de custo enviado (ATENÇÃO: o usuário deve possuir permissão neste centro de custo) e os envios serão adicionados a uma campanha única e exclusiva com o nome configurado na requisição através do parâmetro campaignName. Caso não seja enviado o parâmetro campaignName os envios serão agrupados em uma campanha diária por centro de custo.
$ curl 'https://api.bemoby.com/v1/sms/send' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"costCenterId" : 1,
"message" : "Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!!",
"campaignName" : "Nome da minha nova campanha",
"messages" : [
{
"to" : "34999991111",
"vars" : {"nome" : "Fulano", "idade" : 30},
"externalId" : "1241"
},
{
"to" : "34999991112",
"vars" : {"nome" : "Sicrano", "idade" : 19},
"externalId" : "1242"
},
{
"to" : "34999991113",
"message" : "Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!! Você ganhou um desconto especial!!!",
"vars" : {"nome" : "Beltrano", "idade" : 45},
"externalId" : "1243"
}
]
}'
Estrutura da Resposta
Listagem dos campos do JSON da resposta.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com para esta resposta |
externalId |
String |
Um ID único definido por você para conferência dos status de envio. Este parâmetro é opcional, e você pode utilizar o ID gerado pela BeMoby para esta conferência. |
Exemplo de Resposta
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[{"externalId":"1241","id":2508648},{"externalId":"1242","id":2508649},{"externalId":"1243","id":2508650}]
Página
Serviço para envio de mensagens de páginas.
Envio
Utilizado para envios em massa agrupados em uma campanha diária por centro de custo (sem o parâmetro campaignName atribuído) ou em uma campanha específica (com o parâmetro campaignName atribuído). Todas as mensagens SMSs de páginas devem possuir a variável @LINK para configurar a URL de acesso da página.
Todas as requisições que NÃO possuírem nome de campanha configurado através do parâmetro campaignName terão os SMSs adicionados a uma campanha diária (por centro de custo enviado) criada automaticamente, ou seja, todos envios de um mesmo dia e de um mesmo centro de custo sempre pertencerão a mesma campanha. |
Todas as requisições que possuírem nome de campanha configurado através do parâmetro campaignName terão os SMSs adicionados a uma campanha única e exclusiva. Neste caso a cada requisição será gerada uma nova campanha. |
Mensagens SMSs sem a variável @LINK serão recusadas. |
Existe um limite de 100000 mensagens por requisição. |
URL de envio
POST https://api.bemoby.com/v1/page/send
Estrutura da Requisição
Listagem dos campos do JSON da requisição.
* Campos obrigatórios
Campo | Tipo | Descrição |
---|---|---|
costCenterId |
Long |
Código do centro de custo cadastrado na BeMoby.com. Caso não informado será utilizado o centro de custo do usuário. |
siteId* |
Long |
Código do site cadastrado na BeMoby.com. |
expirationDate* |
Date |
Data de expiração da campanha no formato yyyy-MM-dd. Exemplo: 2018-03-23. |
message* |
String |
Texto da mensagem que será enviada. |
campaignName |
String |
Nome da nova campanha que será criada (Caso informado será criada uma nova campanha). |
messages* |
Detalhe[] |
Lista de mensagens/destinatários que serão enviadas. |
Campo | Tipo | Descrição |
---|---|---|
to* |
String |
Telefone para qual será enviada a mensagem. Exemplo: 34999991111 |
message |
String |
Texto da mensagem que será enviada |
externalId |
String |
Um ID único definido por você para conferência com os status de envio. Este parâmetro é opcional, e você pode utilizar o ID gerado pela BeMoby para esta conferência. |
vars |
Object |
Objeto JSON que será utilizado para popular as variáveis da mensagem caso seja necessário |
Quando um Detalhe possuir o texto da mensagem ela irá sobrepor a mensagem do Mestre |
Exemplo de Requisição
Exemplo de requisição padrão: Neste exemplo não foi informado o centro de custo (costCenterId) nem o nome da campanha (campaignName). Será utilizado o centro de custo do usuário logado e os envios serão agrupados em uma campanha diária por este centro de custo.
$ curl 'https://api.bemoby.com/v1/page/send' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"siteId" : 1,
"expirationDate" : "2018-05-30",
"message" : "Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!! Clique em @LINK para ver seu cartão.",
"messages" : [
{
"to" : "34999991111",
"vars" : {"nome" : "Fulano", "idade" : 30},
"externalId" : "1241"
},
{
"to" : "34999991112",
"vars" : {"nome" : "Sicrano", "idade" : 19},
"externalId" : "1242"
},
{
"to" : "34999991113",
"message" : "Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!! Você ganhou um desconto especial!!! Clique em @LINK para ver seu cartão.",
"vars" : {"nome" : "Beltrano", "idade" : 45},
"externalId" : "1243"
}
]
}'
Neste exemplo foi informado o centro de custo (costCenterId) e o nome da campanha (campaignName). Será utilizado o centro de custo enviado (ATENÇÃO: o usuário deve possuir permissão neste centro de custo) e os envios serão adicionados a uma campanha única e exclusiva com o nome configurado na requisição através do parâmetro campaignName. Caso não seja enviado o parâmetro campaignName os envios serão agrupados em uma campanha diária por centro de custo.
$ curl 'https://api.bemoby.com/v1/page/send' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"costCenterId" : 1,
"siteId" : 1,
"expirationDate" : "2018-05-30",
"message" : "Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!! Clique em @LINK para ver seu cartão.",
"campaignName" : "Nome da minha nova campanha",
"messages" : [
{
"to" : "34999991111",
"vars" : {"nome" : "Fulano", "idade" : 30},
"externalId" : "1241"
},
{
"to" : "34999991112",
"vars" : {"nome" : "Sicrano", "idade" : 19},
"externalId" : "1242"
},
{
"to" : "34999991113",
"message" : "Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!! Você ganhou um desconto especial!!! Clique em @LINK para ver seu cartão.",
"vars" : {"nome" : "Beltrano", "idade" : 45},
"externalId" : "1243"
}
]
}'
Estrutura da Resposta
Listagem dos campos do JSON da resposta.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com para esta resposta |
externalId |
String |
Um ID único definido por você para conferência dos status de envio. Este parâmetro é opcional, e você pode utilizar o ID gerado pela BeMoby para esta conferência. |
Exemplo de Resposta
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[{"externalId":"1241","id":2508648},{"externalId":"1242","id":2508649},{"externalId":"1243","id":2508650}]
Cobrança
Serviços para envio de mensagens de cobrança.
Envio
Utilizado para envios em massa agrupados em uma campanha diária (sem o parâmetro campaignName atribuído) ou em uma campanha específica (com o parâmetro campaignName atribuído).
Todas as requisições que possuírem nome de campanha configurado através do parâmetro campaignName terão as cobranças adicionadas a uma campanha única e exclusiva. Neste caso a cada requisição será gerada uma nova campanha. |
Existe um limite de 100000 mensagens por requisição. |
URL de envio
POST https://api.bemoby.com/v1/collection/send
Estrutura da Requisição
Listagem dos campos do JSON da requisição.
* Campos obrigatórios
Campo | Tipo | Descrição |
---|---|---|
configId* |
Long |
Código da configuração da cobrança cadastrada na BeMoby.com. |
layout* |
String |
Nome do layout da cobrança cadastrado na BeMoby.com. |
expirationDate* |
Date |
Data de expiração da campanha no formato yyyy-MM-dd. Exemplo: 2018-03-23. |
campaignName |
String |
Nome da nova campanha que será criada (Caso informado será criada uma nova campanha). |
recipient* |
Beneficiário |
Dados do beneficiário da cobrança. |
collections* |
Cobrança[] |
Lista de cobranças que serão enviadas. |
Campo | Tipo | Descrição |
---|---|---|
corporateName* |
String |
Nome do beneficiário. |
document* |
String |
CPF/CNPJ do beneficiário. |
streetAddress |
String |
Endereço do beneficiário. |
addressNumber |
String |
Número do endereço do beneficiário. |
addressComplement |
String |
Complemento do endereço do beneficiário. |
neighborhood |
String |
Nome do bairro do beneficiário. |
postalCode |
String |
CEP do beneficiário. |
city |
String |
Nome da cidade do beneficiário. |
state |
String |
Nome do estado do beneficiário. |
phone |
String |
Telefone do beneficiário. |
String |
E-mail do beneficiário. |
|
paymentPalce* |
String |
Mensagem alusiva ao local de pagamento. |
bank* |
String |
Número do Banco que será emitido o boleto. |
agency* |
String |
Agência bancária do beneficiário. |
agencyDigit |
String |
Dígito da agência bancária do beneficiário. |
bankAccount* |
String |
Conta corrente do beneficiário. |
accountDigit* |
String |
Dígito da conta corrente do beneficiário. |
purseNumber* |
String |
Número da carteira de cobrança no banco. |
recipientId* |
String |
Identificação do beneficiário junto ao Banco. |
recipientIdDigit |
String |
Digito da identificação do beneficiário junto ao Banco. |
covenantNumber |
String |
Número do convênio junto ao banco. |
instructionsOne |
String |
Instrução do boleto. |
instructionsTwo |
String |
Instrução do boleto. |
instructionsThree |
String |
Instrução do boleto. |
instructionsFour |
String |
Instrução do boleto. |
Campo | Tipo | Descrição |
---|---|---|
name* |
String |
Nome do cliente. |
document* |
String |
CPF/CNPJ do cliente. |
streetAddress* |
String |
Endereço do cliente. |
addressNumber* |
String |
Número do endereço do cliente. |
addressComplement |
String |
Complemento do endereço do cliente. |
neighborhood* |
String |
Nome do bairro do cliente. |
postalCode* |
String |
CEP do cliente. |
city* |
String |
Nome da cidade do cliente. |
state* |
String |
Nome do estado do cliente. |
to* |
String |
Celular do cliente. |
String |
E-mail do Cliente. |
|
originalValue* |
Float |
Somatório dos valores originais dos débitos. Exemplo: 1234.56 |
currentValue* |
Float |
Somatório dos valores das dívidas atualizadas até a data do acordo. Exemplo: 1234.56 |
discountValue* |
Float |
Somatório dos valores do desconto aplicado na data do acordo. Exemplo: 1234.56 |
contractNumber* |
String |
Número do contrato do cliente. |
contractDescription |
String |
Descrição do contrato do cliente (ex: nome do produto). |
documentDate* |
Date |
Data da geração do boleto no formato yyyy-MM-dd. Exemplo: 2018-03-23. |
expirationDate* |
Date |
Data de vencimento do boleto no formato yyyy-MM-dd. Exemplo: 2018-03-23. |
documentValue |
Float |
Valor do boleto. Exemplo: 1234.56 |
documentNumber* |
String |
Código do boleto no cliente ou contrato. |
ourNumber* |
String |
Nosso Número. |
ourNumberDigit |
String |
Dígito do Nosso Número. |
kind* |
String |
Espécie do boleto. Exemplo: DM |
coin |
String |
Moeda do boleto. Exemplo: R$ |
accept |
Boolean |
Exige aceite do boleto. |
lineCode* |
String |
Linha digitável do boleto. |
barcode* |
String |
Código do barras do boleto. |
payerMessage |
String |
Mensagem do recibo do sacado. |
externalId* |
String |
Um ID único definido por você para conferência dos status de envio. Este parâmetro é opcional, e você pode utilizar o ID gerado pela BeMoby para esta conferência. |
debts |
Débito[] |
Lista de débitos que serão enviadas. |
paymentOptions* |
Opção de Pagamento[] |
Lista de opções de pagamentos que serão enviadas. |
Campo | Tipo | Descrição |
---|---|---|
contractNumber* |
String |
Número do contrato do cliente. |
contractDescription |
String |
Descrição do contrato do cliente (ex: nome do produto). |
installment* |
Integer |
Número sequencial da parcela. |
installmentId* |
String |
Código identificador da parcela. |
installmentDescription* |
String |
Observação da Parcela. |
expirationDate* |
Date |
Data de vencimento original no formato yyyy-MM-dd. Exemplo: 2018-03-23. |
originalValue* |
Float |
Valor original do débito. Exemplo: 1234.56 |
currentValue* |
Float |
Valor da dívida atualizada até a data do acordo. Exemplo: 1234.56 |
discountValue* |
Float |
Valor do desconto aplicado na data do acordo. Exemplo: 1234.56 |
Campo | Tipo | Descrição |
---|---|---|
description* |
String |
Descrição do plano. |
installment* |
Integer |
Número de Parcelas. |
value* |
Float |
Valor das Parcelas. Exemplo: 1234.56 |
Exemplo de Requisição
$ curl 'https://api.bemoby.com/v1/collection/send' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"configId": 8,
"layout": "DEFAULT_BASIC",
"expirationDate": "2018-04-15",
"campaignName": null,
"recipient": {
"corporateName": "Nome Empresa LTDA",
"document": "10000000000001",
"streetAddress": "Avenida Teste",
"addressNumber": "6000",
"addressComplement": null,
"neighborhood": "Bairro Teste",
"postalCode": "38402324",
"city": "Teste",
"state": "MG",
"phone": "32320000",
"email": "teste@empresa.com.br",
"paymentPalce": "PAGAVEL NAS REDES BANCARIAS LOTERICAS E CORREIOS ATE VENCTO",
"bank": "237",
"agency": "3301",
"agencyDigit": "3",
"bankAccount": "123",
"accountDigit": "1",
"purseNumber": "680",
"recipientId": "0047329027",
"recipientIdDigit": "4",
"covenantNumber": "12345",
"instructionsOne": "Sr. Caixa, RECEBER EM DINHEIRO",
"instructionsTwo": "Boleto prorrogável até 30/04/2018",
"instructionsThree": "Não receber após a prorrogação.",
"instructionsFour": "À vista: R$ 1050,00. Parcelado: 2x de R$ 550,00 cada ou 3x de R$ 384,04 cada"
},
"collections": [
{
"name": "João da Silva",
"document": "59032742264",
"streetAddress": "Rua Quarenta e Sete",
"addressNumber": "1000",
"addressComplement": "Apt 202",
"neighborhood": "Jardim São Paulo",
"postalCode": "08465312",
"city": "São Paulo",
"state": "SP",
"to": "34999901111",
"email": "email@email.com",
"originalValue": 1000.00,
"currentValue": 1200.00,
"discountValue": 180.00,
"contractNumber": "9876543",
"contractDescription": "Mensalidade escolar",
"documentDate": "2018-03-28",
"expirationDate": "2018-04-01",
"documentValue": 0.00,
"documentNumber": "596371281",
"ourNumber": "47596371281",
"ourNumberDigit": "8",
"kind": "DMI",
"coin": "R$",
"accept": false,
"lineCode": "74593.68002 47329.027479 80460.448006 1 67570000000000",
"barcode": "74591675700000000003680047329027478046044800",
"payerMessage": "Após a prorrogação, entrar em contato com a Acessoria.",
"externalId": "1005",
"debts": [
{
"contractNumber": "9876543",
"contractDescription": "Mensalidade escolar",
"installment": 2,
"installmentId": "00015678",
"installmentDescription": "Mês 02 de 2018",
"expirationDate": "2018-02-01",
"originalValue": 500.00,
"currentValue": 650.00,
"discountValue": 100.00
},
{
"contractNumber": "9876543",
"contractDescription": "Mensalidade escolar",
"installment": 3,
"installmentId": "00015678",
"installmentDescription": "Mês 03 de 2018",
"expirationDate": "2018-03-01",
"originalValue": 500.00,
"currentValue": 550.00,
"discountValue": 50.00
}
],
"paymentOptions": [
{
"description": "Entrada de R$ 550,00 + 1 parcela de R$ 550,00",
"installment": 2,
"value": 550.00
},
{
"description": "Entrada de R$ 384,00 + 2 parcela(s) de R$ 384,00",
"installment": 3,
"value": 384.00
},
{
"description": "Entrada de R$ 300,00 + 3 parcela(s) de R$ 300,00",
"installment": 4,
"value": 300.00
}
]
}
]
}'
Estrutura da Resposta
Listagem dos campos do JSON da resposta.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com para esta resposta |
externalId |
String |
Um ID único definido por você para conferência dos status de envio. Este parâmetro é opcional, e você pode utilizar o ID gerado pela BeMoby para esta conferência. |
Exemplo de Resposta
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[{"externalId":"1005","id":2508690}]
HSM Whatsapp
Serviço para envio de mensagens Whatsapp em massa agrupados em uma campanha diária por centro de custo (sem o parâmetro campaignName atribuído) ou em uma campanha específica (com o parâmetro campaignName atribuído).
Todas as requisições que NÃO possuírem nome de campanha configurado através do parâmetro campaignName terão as mensagens Whatsapp adicionadas a uma campanha diária (por centro de custo enviado) criada automaticamente, ou seja, todos envios de um mesmo dia e de um mesmo centro de custo sempre pertencerão a mesma campanha. |
Todas as requisições que possuírem nome de campanha configurado através do parâmetro campaignName terão as mensagens Whatsapp adicionadas a uma campanha única e exclusiva. Neste caso a cada requisição será gerada uma nova campanha. |
Existe um limite de 1000 mensagens por requisição. |
Envio
URL de envio
POST https://api.bemoby.com/callcenter/hsm/send/{hsmId}
O atributo {hsmId} é o código do HSM (Template de mensagem) cadastrado na BeMoby. Cada HSM possui um texto com ou sem variáveis predefinidos. |
Estrutura da Requisição
Listagem dos campos do JSON da requisição.
* Campos obrigatórios
Campo | Tipo | Descrição |
---|---|---|
costCenterId |
Long |
Código do centro de custo cadastrado na BeMoby.com. Caso não informado será utilizado o centro de custo do usuário. |
campaignName |
String |
Nome da nova campanha que será criada (Caso informado será criada uma nova campanha). |
destinations* |
Lista de destinatários que receberão as mensagens. |
Campo | Tipo | Descrição |
---|---|---|
to* |
String |
Número de telefone para qual a mensagem será enviada (código do país (55 para o Brasil) e estado devem estar presentes).. Exemplo: 5534999991111 |
externalId |
String |
Um ID único definido por você para conferência com os status de envio. Este parâmetro é opcional, e você pode utilizar o ID gerado pela BeMoby para esta conferência. |
vars |
Object |
Objeto JSON que será utilizado para popular as variáveis da mensagem caso seja necessário |
Exemplo de Requisição
Exemplo de requisição padrão: Neste exemplo não foi informado o centro de custo (costCenterId) nem o nome da campanha (campaignName). Será utilizado o centro de custo do usuário logado e os envios serão agrupados em uma campanha diária por este centro de custo.
Supondo que exista um HSM cadastrado com código ({hsmId}) 1 com seguinte texto: Olá @NOME! Tudo bem? Parabéns pelos seus @IDADE anos!!!. |
$ curl 'https://api.bemoby.com/callcenter/hsm/send/1' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"destinations" : [
{
"to" : "5534999991111",
"vars" : {"nome" : "Fulano", "idade" : 30},
"externalId" : "1001"
},
{
"to" : "5534999991112",
"vars" : {"nome" : "Sicrano", "idade" : 19},
"externalId" : "1002"
},
{
"to" : "5534999991113",
"vars" : {"nome" : "Beltrano", "idade" : 45},
"externalId" : "1003"
}
]
}'
Neste exemplo foi informado o centro de custo (costCenterId) e o nome da campanha (campaignName). Será utilizado o centro de custo enviado (ATENÇÃO: o usuário deve possuir permissão neste centro de custo) e os envios serão adicionados a uma campanha única e exclusiva com o nome configurado na requisição através do parâmetro campaignName. Caso não seja enviado o parâmetro campaignName os envios serão agrupados em uma campanha diária por centro de custo.
$ curl 'https://api.bemoby.com/callcenter/hsm/send/1' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"costCenterId" : 1,
"campaignName" : "Nome da minha nova campanha",
"destinations" : [
{
"to" : "5534999991111",
"vars" : {"nome" : "Fulano", "idade" : 30},
"externalId" : "1001"
},
{
"to" : "5534999991112",
"vars" : {"nome" : "Sicrano", "idade" : 19},
"externalId" : "1002"
},
{
"to" : "5534999991113",
"vars" : {"nome" : "Beltrano", "idade" : 45},
"externalId" : "1003"
}
]
}'
Estrutura da Resposta
Listagem dos campos do JSON da resposta.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com para esta resposta |
externalId |
String |
Um ID único definido por você para conferência dos status de envio. Este parâmetro é opcional, e você pode utilizar o ID gerado pela BeMoby para esta conferência. |
Exemplo de Resposta
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
{
"data": {
"items": [
{
"externalId": "1001",
"id": 3603364
},
{
"externalId": "1002",
"id": 3603365
},
{
"externalId": "1003",
"id": 3603366
}
]
},
"message": "Created",
"statusCode": 201
}
Consultas
Serviços de consultas dos envios SMS e Whatsapp realizados.
Status de Envios SMS
Utilizado para consultar os status das mensagens SMS enviadas através do ID único gerado pela BeMoby.com e/ou do EXTERNALID único enviado.
Cada consulta está limitada a no máximo 1000 resultados por requisição. |
URLs de envio
POST https://api.bemoby.com/v1/report/sms/status/search
GET https://api.bemoby.com/v1/report/sms/status/list
Estrutura da Requisição
Listagem dos campos do JSON/Query String da requisição.
* Campos obrigatórios
Campo | Tipo | Descrição |
---|---|---|
ids |
Long[] |
Lista de um ou mais IDs únicos gerados pela BeMoby.com |
externalIds |
String[] |
Lista de um ou mais IDs únicos definidos por você para conferência. |
Os parâmetros podem ser utilizados de forma combinada. Os resultados serão as referências dos ids enviados concatenados com as referências dos externalIds enviados. |
Exemplo de Requisição POST
$ curl 'https://api.bemoby.com/v1/report/sms/status/search' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"ids" : [2508648, 2508649],
"externalIds" : ["1243"]
}'
Exemplo de Requisição GET
Para a requisição do tipo GET
os parâmetros devem ser enviados via Query String.
$ curl 'https://api.bemoby.com/v1/report/sms/status/list?ids=2508648&ids=2508649&externalIds=1243' -i \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...'
Estrutura da Resposta
Listagem dos campos do JSON da resposta.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com no envio das mensagens. |
externalId |
String |
Um ID único definido por você no envio das mensagens. |
createStatus |
String |
Status de criação do registro. Exemplo: VALID. |
createDate |
Date |
Data da criação do registro, válido no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-03-23 09:46:21. |
to |
String |
Telefone para qual foi enviada a mensagem. Exemplo: 34999991111. |
sendStatus |
String |
Status de envio da mensagem. Exemplo: SENT_SUCCESS. |
sendDate |
Date |
Data de envio da mensagem no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-03-23 09:46:22. |
deliveredDate |
Date |
Data de entrega da mensagem no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-03-23 09:46:25. |
campaignId |
Long |
Código da campanha que a mensagem foi inserida. Exemplo: 1643. |
Exemplo de Resposta
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
{
"id":2508650,
"externalId":"1243",
"createStatus":"VALID",
"createDate":"2018-03-23 09:46:21",
"to":"34999991113",
"sendStatus":"SENT_SUCCESS",
"sendDate":"2018-03-23 09:46:22",
"deliveredDate":"2018-03-23 09:46:25",
"campaignId":1643
},
{
"id":2508649,
"externalId":"1242",
"createStatus":"VALID",
"createDate":"2018-03-23 09:46:21",
"to":"34999991112",
"sendStatus":"SENT_SUCCESS",
"sendDate":"2018-03-23 09:46:22",
"deliveredDate":null,
"campaignId":1643
},
{
"id":2508648,
"externalId":"1241",
"createStatus":"VALID",
"createDate":"2018-03-23 09:46:21",
"to":"34999991111",
"sendStatus":"SENT_SUCCESS",
"sendDate":"2018-03-23 09:46:22",
"deliveredDate":"2018-03-23 09:46:43",
"campaignId":1643
}
]
Respostas de SMS
Utilizado para consultar as mensagens SMS (MO) enviadas pelo usuário final. Estas consultas podem ser feitas através do ID único gerado pela BeMoby.com e/ou do EXTERNALID único enviado e/ou PERÍODO INICIAL e/ou PERÍODO FINAL.
Cada consulta está limitada a no máximo 1000 resultados por requisição. |
URLs de envio
POST https://api.bemoby.com/v1/report/sms/mo/search
GET https://api.bemoby.com/v1/report/sms/mo/list
Estrutura da Requisição
Listagem dos campos do JSON/Query String da requisição.
* Campos obrigatórios
Campo | Tipo | Descrição |
---|---|---|
ids |
Long[] |
Lista de um ou mais IDs únicos gerados pela BeMoby.com |
externalIds |
String[] |
Lista de um ou mais IDs únicos definidos por você para conferência. |
start |
Date |
Período inicial da consulta no formato yyyy-MM-dd’T’HH:mm:ss. Exemplo: 2018-01-01T00:00:00. |
end |
Date |
Período final da consulta no formato yyyy-MM-dd’T’HH:mm:ss. Exemplo: 2018-06-30T23:59:59. |
Os parâmetros podem ser utilizados de forma combinada. Os resultados serão as referências dos ids enviados concatenados com as referências dos externalIds enviados. Caso os períodos inicial e/ou final forem informados os resultados irão se limitar a registros encontrados neste período. |
Exemplo de Requisição POST
$ curl 'https://api.bemoby.com/v1/report/sms/mo/search' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...' \
-d '{
"ids" : [3049106, 3049103],
"externalIds" : ["1234"],
"start" : "2018-01-01T00:00:00",
"end" : "2018-06-30T23:59:59"
}'
Exemplo de Requisição GET
Para a requisição do tipo GET
os parâmetros devem ser enviados via Query String.
$ curl 'https://api.bemoby.com/v1/report/sms/mo/list?ids=3049106&ids=3049103&externalIds=1234&start=2018-01-01T00:00:00&end=2018-06-30T23:59:59' -i \
-H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJlNjFhOTUxNC0...'
Estrutura da Resposta
Listagem dos campos do JSON da resposta.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com no envio das mensagens. |
externalId |
String |
Um ID único definido por você no envio das mensagens. |
receivedDate |
Date |
Data do recebimento da resposta enviado pelo usuário final no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-03-23 09:46:21. |
shortCode |
String |
O LA que originou a mensagem inicial e para o qual a resposta foi enviada. Exemplo: 27182. |
source |
String |
Número do celular de origem da mensagem . Exemplo: 34999991111. |
text |
String |
Texto do SMS de resposta enviado pelo usuário final. |
campaignId |
Long |
Código da campanha que a mensagem foi inserida. Exemplo: 1643. |
Exemplo de Resposta
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
{
"id": 3049107,
"externalId": "1234,
"receivedDate": "2018-05-04 10:17:29",
"shortCode": "27182",
"source": "34999991113",
"text": "👍👍👍",
"campaignId": 1643
},
{
"id": 3049106,
"externalId": "1233",
"receivedDate": "2018-05-04 10:17:28",
"shortCode": "27182",
"source": "34999991112",
"text": "Tudo bem! Muito obrigado!",
"campaignId": 1643
},
{
"id": 3049103,
"externalId": "1230",
"receivedDate": "2018-05-04 10:17:08",
"shortCode": "27182",
"source": "34999991111",
"text": "Qual o valor da minha fatura?",
"campaignId": 1643
}
]
Callbacks/Webhooks
A API possibilita receber os status das mensagens, receber os MOs enviados pelos clientes ou receber os tracking de acesso as páginas em um webservice de sua empresa de forma automatizada (recomendado).
Todas as requisições de callback usam o método POST e os dados são enviados no formato JSON.
|
Caso necessário, também é possível que os serviços expostos por sua empresa possuam autenticação do tipo HTTP Basic Auth. |
Status de Envios SMS
A cada alteração de status das mensagens SMS, é enviado um callback/webhook. Tais callbacks são enviados em lote.
O endpoint em que o webhook de status de SMS será enviado deve ser configurado previamente com o time de suporte/operações da BeMoby.com. |
Estrutura de Dados
Listagem dos campos do JSON enviado.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com no envio das mensagens. |
externalId |
String |
Um ID único definido por você no envio das mensagens. |
createStatus |
String |
Status de criação do registro. Exemplo: VALID. |
createDate |
Date |
Data da criação do registro, válido no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-03-23 09:46:21. |
to |
String |
Telefone para qual foi enviada a mensagem. Exemplo: 34999991111. |
sendStatus |
String |
Status de envio da mensagem. Exemplo: SENT_SUCCESS. |
sendDate |
Date |
Data de envio da mensagem no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-03-23 09:46:22. |
deliveredDate |
Date |
Data de entrega da mensagem no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-03-23 09:46:25. |
campaignId |
Long |
Código da campanha que a mensagem foi inserida. Exemplo: 1643. |
Exemplo de Dados
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
{
"id":2508650,
"externalId":"1243",
"createStatus":"VALID",
"createDate":"2018-03-23 09:46:21",
"to":"34999991113",
"sendStatus":"SENT_SUCCESS",
"sendDate":"2018-03-23 09:46:22",
"deliveredDate":"2018-03-23 09:46:25",
"campaignId":1643
},
{
"id":2508649,
"externalId":"1242",
"createStatus":"VALID",
"createDate":"2018-03-23 09:46:21",
"to":"34999991112",
"sendStatus":"SENT_SUCCESS",
"sendDate":"2018-03-23 09:46:22",
"deliveredDate":null,
"campaignId":1643
},
{
"id":2508648,
"externalId":"1241",
"createStatus":"VALID",
"createDate":"2018-03-23 09:46:21",
"to":"34999991111",
"sendStatus":"SENT_SUCCESS",
"sendDate":"2018-03-23 09:46:22",
"deliveredDate":"2018-03-23 09:46:43",
"campaignId":1643
}
]
Respostas de SMS
A cada resposta do usuário final (SMS MO) é enviado um callback/webhook. Tais callbacks são enviados em lote.
O endpoint em que o webhook de recebimento de SMS MO será enviado deve ser configurado previamente com o time de suporte/operações da BeMoby.com. |
Estrutura de Dados
Listagem dos campos do JSON enviado.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com no envio das mensagens. |
externalId |
String |
Um ID único definido por você no envio das mensagens a qual foi respondida. |
receivedDate |
Date |
Data do recebimento da resposta enviado pelo usuário final no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-03-23 09:46:21. |
shortCode |
String |
O LA que originou a mensagem inicial e para o qual a resposta foi enviada. Exemplo: 27182. |
source |
String |
Número do celular de origem da mensagem . Exemplo: 34999991111. |
text |
String |
Texto do SMS de resposta enviado pelo usuário final. |
campaignId |
Long |
Código da campanha que a mensagem foi inserida. Exemplo: 1643. |
Exemplo de Dados
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
{
"id": 3049107,
"externalId": "1234,
"receivedDate": "2018-05-04 10:17:29",
"shortCode": "27182",
"source": "34999991113",
"text": "👍👍👍",
"campaignId": 1643
},
{
"id": 3049106,
"externalId": "1233",
"receivedDate": "2018-05-04 10:17:28",
"shortCode": "27182",
"source": "34999991112",
"text": "Tudo bem! Muito obrigado!",
"campaignId": 1643
},
{
"id": 3049103,
"externalId": "1230",
"receivedDate": "2018-05-04 10:17:08",
"shortCode": "27182",
"source": "34999991111",
"text": "Qual o valor da minha fatura?",
"campaignId": 1643
}
]
Rastreamento de acesso
A cada acesso à página será enviado um callback/webhook com: informações de localização, informações do dispositivo, informações do sistema e comportamentos na página. Tais callbacks serão enviados em lote.
O endpoint em que o webhook de rastreamento de acesso será enviado deve ser configurado previamente com o time de suporte/operações da BeMoby.com. |
Estrutura de Dados
Listagem dos campos do JSON da requisição do callback.
Campo | Tipo | Descrição |
---|---|---|
id |
Long |
ID único gerado pela BeMoby.com no envio das mensagens. |
externalId |
String |
Um ID único definido por você no envio das mensagens. |
campaignId |
Long |
Código da campanha que a mensagem que originou o acesso foi inserida. Exemplo: 1643. |
contractNumber |
String |
Número do contrato do cliente. Exemplo: 12346789. |
personName |
String |
Nome do cliente. Exemplo: Fulano de Tal. |
personDocument |
String |
CPF/CNPJ do cliente. Exemplo: 11111111111. |
personPhone |
String |
Telefone do cliente. Exemplo: 3499991112. |
personEmail |
String |
Email do cliente. Exemplo: fulano@email.com. |
token |
String |
Token único utilizado no acesso. Exemplo: XpTo01. |
origin |
String |
Tipo de origem de acesso. Exemplo: TOKEN. |
referrer |
String |
Página que originou a requisição de acesso. Exemplo: www.site.com.br. |
beginDate |
String |
Data/Hora de início de acesso. Exemplo: 2018-06-12 15:40:31. |
endDate |
String |
Data/Hora de fim de acesso. Exemplo: 2018-06-12 15:45:15. |
ip |
String |
Endereço IP de acesso. Exemplo: 1.2.3.4. |
device |
String |
Nome do dispositivo de acesso. Exemplo: iPhone. |
deviceType |
String |
Tipo de dispositivo de acesso. Exemplo: mobile. |
deviceVendor |
String |
Nome do fornecedor do dispositivo de acesso. Exemplo: Apple. |
resolution |
String |
Resolução do dispositivo de acesso. Exemplo: 375x667. |
availableResolution |
String |
Resolução máxima disponível do dispositivo de acesso. Exemplo: 375x667. |
os |
String |
Sistema operacional do dispositivo de acesso. Exemplo: iOS. |
osVersion |
String |
Versão do sistema operacional do dispositivo de acesso. Exemplo: 11.3. |
colorDepth |
String |
Profundidade de cor do dispositivo de acesso. Exemplo: 32. |
browser |
String |
Browser do dispositivo de acesso. Exemplo: Mobile Safari. |
browserVersion |
String |
Versão do browser do dispositivo de acesso. Exemplo: 11.0. |
browserMajorVersion |
String |
Versão principal do browser do dispositivo de acesso. Exemplo: 11. |
mobile |
Boolean |
Indica se o dispositivo de acesso é um celular. Exemplo: true. |
language |
String |
Idioma da página. Exemplo: pt-BR. |
systemLanguage |
String |
Idioma do sistema operacional do dispositivo de acesso. Exemplo: pt-BR. |
protocol |
String |
Protocolo de acesso. Exemplo: https:. |
hostName |
String |
DNS de acesso. Exemplo: site.com.br. |
pathName |
String |
Path da página. Exemplo: /collection. |
href |
String |
Link da página. Exemplo: https://site.com.br/collection/?token=XpTo01&email=true. |
title |
String |
Título da página. Exemplo: Fatura. |
countryCode |
String |
Código do país de acesso. Exemplo: BR. |
country |
String |
País de acesso. Exemplo: Brazil. |
region |
String |
Abreviação da região de acesso. Exemplo: SP. |
regionName |
String |
Região de acesso. Exemplo: Sao Paulo. |
city |
String |
Cidade de acesso. Exemplo: São Paulo. |
timezone |
String |
Fuso horário de acesso. Exemplo: America/Sao_Paulo. |
zip |
String |
Código postal de acesso. Exemplo: 01323. |
latitude |
String |
Latitude de acesso. Exemplo: -23.5733. |
longitude |
String |
Longitude de acesso. Exemplo: -46.6417. |
asNumberName |
String |
AS do dispositivo. Exemplo: AS7738 Telemar Norte Leste S.A.. |
isp |
String |
Fornecedor de acesso à internet do dispositivo. Exemplo: Oi Velox. |
organization |
String |
Nome do fornecedor de acesso à internet do dispositivo. Exemplo: Oi Velox. |
events |
Evento[] |
Lista de eventos que ocorreram no acesso. |
Campo | Tipo | Descrição |
---|---|---|
name |
String |
Nome do evento. Exemplo: ACCESS. |
date |
Date |
Data/Hora do evento no formato yyyy-MM-dd HH:mm:ss. Exemplo: 2018-06-12 15:40:31. |
value |
String |
Dado capturado no evento (caso necessite). No caso de um evento de login via CPF é capturado o CPF informado. Exemplo: 11111111112. |
success |
Boolean |
Indicador de sucesso ou falha do evento. Exemplo: true. |
Exemplo de Dados
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
{
"id":3477188,
"externalId":"1234",
"campaignId":1643,
"contractNumber":"12346789",
"personName":"Fulano de Tal",
"personDocument":"11111111111",
"personPhone":"3499991112",
"personEmail":"fulano@email.com",
"token":"XpTo01",
"origin":"TOKEN",
"referrer":"www.site.com.br",
"beginDate":"2018-06-12 15:40:31",
"endDate":"2018-06-12 15:45:15",
"ip":"1.2.3.4",
"device":"iPhone",
"deviceType":"mobile",
"deviceVendor":"Apple",
"resolution":"375x667",
"availableResolution":"375x667",
"os":"iOS",
"osVersion":"11.3",
"colorDepth":"32",
"browser":"Mobile Safari",
"browserVersion":"11.0",
"browserMajorVersion":"11",
"mobile":true,
"language":"pt-BR",
"systemLanguage":"pt-BR",
"protocol":"https:",
"hostName":"site.com.br",
"pathName":"/collection",
"href":"https://site.com.br/collection/?token=XpTo01&email=true",
"title":"Fatura",
"countryCode":"BR",
"country":"Brazil",
"region":"SP",
"regionName":"Sao Paulo",
"city":"São Paulo",
"timezone":"America/Sao_Paulo",
"zip":"01323",
"latitude":"-23.5733",
"longitude":"-46.6417",
"asNumberName":"AS7738 Telemar Norte Leste S.A.",
"isp":"Oi Velox",
"organization":"Oi Velox",
"events":[
{
"name":"ACCESS",
"date":"2018-06-12 15:40:31",
"value":"via token",
"success":true
},
{
"name":"LOGIN",
"date":"2018-06-12 15:40:43",
"value":"11111111112",
"success":false
},
{
"name":"LOGIN",
"date":"2018-06-12 15:40:55",
"value":"11111111111",
"success":true
}
]
}
]
Listagens
Listagens de status e tipos
Status SMS
Listagens de status de envios SMS
Status | Descrição |
---|---|
VALID |
Registro válido |
INVALID |
Registro inválido |
DUPLICATE |
Registro duplicado |
Status | Descrição |
---|---|
WAITING |
Aguardando o envio para a operadora. |
BLACKLIST |
O número de destino está na lista bloqueada, e foi inserido manualmente por sua empresa. |
BLACKLISTED |
O número de destino está na lista bloqueada. |
CANCELED |
O envio para o número foi cancelado. |
NO_CREDIT |
Não possui créditos indisponíveis ou o limite de mensagens configurado foi excedido. |
INVALID_DESTINATION_NUMBER |
O número de destino é inválido (Não é um número de celular válido). |
PROCESSING |
O envio está em processamento. |
SENT_SUCCESS |
Entregue na operadora com sucesso. |
CARRIER_COMMUNICATION_ERROR |
Erro de comunicação com a operadora. |
INTERNAL_ERROR |
Erro interno. |
EXPIRED |
Expirado antes de ser entregue ao aparelho. |
FAILED |
Falha no envio para a operadora. |
INVALID_MESSAGE_TEXT |
O texto da mensagem contém palavras que não são aceitas pela operadora. |
REJECTED_BY_CARRIER |
Operadora rejeitou a mensagem. |
PAUSED |
Envio pausado. |
Rastreamento de acessos
Tipo | Descrição |
---|---|
DIRECT |
Acesso direto. Exemplo: Clique em um link segunda via no site da empresa. |
TOKEN |
Acesso via token através de um link com um token único enviado via SMS ou Whatsapp. |
EMAIL_TOKEN |
Acesso via token através de um link com um token único enviado via e-mail. |
Tipo | Descrição |
---|---|
computer |
Acesso via computador/PC. |
console |
Acesso via console/terminal. |
game console |
Acesso via game console. |
mobile |
Acesso via celular. |
tablet |
Acesso via tablet |
unknown |
Tipo de acesso desconhecido. |
Nome | Descrição |
---|---|
ACCESS |
Acesso. |
ACCESS_INFO |
Informação de acesso. |
LOGIN |
Login. |
COLLECTION_SELECTION |
Seleção de cobrança. |
DOCUMENT_SELECTION |
Seleção de documento. |
INVOICE_TYPE_SELECTION |
Seleção de tipo de fatura. |
PAYMENT_OPTION |
Seleção de opção de pagamento. |
BARCODE_COPY |
Cópia de código de barras. |
COLLECTION_PRINT |
Impressão de cobramça. |
COLLECTION_SEND_EMAIL |
Envio de cobramça por e-mail. |
COLLECTION_SEND_SMS |
Envio de cobramça por SMS. |
CARD_PAYMENT_REQUESTED |
Solicitação de pagamento via cartão. |
CARD_PAYMENT_CANCEL |
Cancelamento de pagamento via cartão. |
CARD_PAYMENT_DONE |
Recebimento de pagamento via cartão. |
LOGOUT |
Logout. |