DOCUMENTAÇÃO API VERSÃO 10.7.x

Repositório: http://argnu.loan/

Objetivo

A API SMS - Permite automatizar o processo de envio de mensagens SMS de forma individual ou em multiplas.

Utilizamos o formato JSON para envolver os parâmetros em uma solicitação HTTP/POST.

Credencias de acesso

Fale com o seu gerente de contas para gerar as credencias de acesso, você precisa de um nome de usuário e chave de autenticação.

A requisição é do tipo HTTP/POST e você precisa passar essas informações no Header.

Campos Detalhes Tipo
usuario Nome de usuário de acesso Texto
chave Senha de acesso liberada no credenciamento. Texto

Envio de BulkSMS

Permite o envio de multiplos SMS

Existe um limite de 5000 mensagens SMS por requisição.

POST http://argnu.loan/bot/bulk-sms.php  =>  Content-Type: application/json

Requisição

O corpo da solicitação tem que conter um objeto JSON no qual as informações são envelopadas com os seguintes campos permitidos:

* Campos obrigatórios

Campos Detalhes Tipo
bulk* Array de mensagens a serem enviadas aos respectivos destinatários, a mesma configuração do envio individual de sms. bulk[]

Exemplos de BulkSMS requisição:

Modelo 1:
{
	"bulk":[
		{
			"celular":"11988887776",
			"mensagem":"Envio individual de sms 001"
		},
		{
			"celular":"11988887777",
			"mensagem":"Envio individual de sms 002"
		}
	]
}
				
Modelo 2:
{
	"bulk":[
		{
			"celular":"11988887776",
			"mensagem":"Envio individual de sms 001",
			"parceiroId":"msg001"
		},
		{
			"celular":"11988887777",
			"mensagem":"Envio individual de sms 002",
			"parceiroId":"msg002"
		},
		{
			"celular":"11988887778",
			"mensagem":"Envio individual de sms 003",
			"parceiroId":"msg003"
		}
	]
}
				

Bulk SMS Respostas das requisições

O corpo da resposta conterá um objeto JSON com informações de rastreamento sobre a mensagem enviada:

Campos Detalhes Tipos
id UUID gerado para o lote enviado. Texto
bulk Este campo é uma matriz de de Respostas SMS únicas, cada dado contém um id e um parceiroId das mensagens enviadas. UnitSMSRespostas[]

Example Json response object:


{
	"id":"00400001000080012017032309271099165b3e0e5c1908eabc1109ce0ac7340",
	"bulk":[
		{
			"id":"00400001000080012017032309271099165b3e0e5c1908eabc1109ce0ac7341",
			"parceiroId":"myid1"
		},
		{
			"id":"00400001000080012017032309271099165b3e0e5c1908eabc1109ce0ac7342",
			"parceiroId":"myid2"
		}
	]
}
				

Exemplo de requisição em CURL:

			
curl --request POST \
  --url http://argnu.loan/bot/bulk-sms.php \
  --header 'usuario: usuario' \
  --header 'chave: chave' \
  --header 'content-type: application/json' \
  --data '{"bulk":[{"celular":"11988887777", "mensagem":"mensagem 1" }, {"celular":"11988887777", "mensagem":"mensagem 2" }, {"celular":"11988887777", "mensagem":"mensagem 3" }]}'

Exemplo de requisição em PHP:

		
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "http://argnu.loan/bot/bulk-sms.php",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{ \"bulk\":[{ \"celular\":\"11988887777\", \"mensagem\":\"mensagem 1\" }, { \"celular\":\"11988887777\", \"mensagem\":\"mensagem 2\" }, { \"celular\":\"11988887777\", \"mensagem\":\"mensagem 3\" }]}",
  CURLOPT_HTTPHEADER => array(
    "chave: chave",
    "content-type: application/json",
    "usuario: usuario"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

Detalhes da operadora

statusOperadora statusDescricao Explicação
2 AGENDADA A mensagem está agendada para envio posterior.
2 ENCAMINHADA A mensagem foi encaminhada para operadora.
2 ENVIADA A mensagem foi enviada para operadora.
3 REJEITADA A mensagem foi rejeitada pela operadora.
3 DESCONHECIDO Erro desconhecido ao enviar a mensagem.

Detalhes das confirmações

statusConfirmacao confirmacaoDescricao Explicação
4 CONFIRMADO A mensagem foi entregue com sucesso.
4 AGUARDANDO A mensagem esta aguardando para ser entregue ao destinatário.
5 NAO_ENTREGUE A mensagem não pôde ser entregue ao destinatário.

Outros erros das requisições:

status statusDetalhe Explicação
101 Erro de Autenticação Provavelmente o (header http) com o usuário e a chave não foi enviado ou as credenciais não são válidas!
303 Erro de requisição Os parâmetros de solicitação estão incorretos ou não foram enviados!
303 Erro de requisição lote Lote maior que 5000 mensagens!
404 Erro transação não encontrada O id da transação não foi encontrado!
505 Saldo insuficiente Sua conta não tem limite para atender à requisição!

Solicitar Cadastramento de Callback Automatizado

Com o callback automatizado você pode receber todos os status no seu ambiente em real time.

Sua URL precisa esperar os seguintes tipos de iteração: Status, DLRs e Respostas - Formato da comunicação: HTTP/GET

Tipo Variável
Status id
Status parceiroId
Status celular
Status statusOperadora
Status statusDescricao
Status statusData
DLRs id
DLRs parceiroId
DLRs celular
DLRs statusConfirmacao
DLRs confirmacaoDescricao
DLRs confirmacaoData
Respostas id
Respostas parceiroId
Respostas celular
Respostas mensagem
Respostas resposta
Respostas respostaDescricao
Respostas respostaData

Exemplos de callback Single

Podemos ter 3 tipos de callback:

			
Status
http://suaurl?id=00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1&parceiroId=1258&celular=11999887766&statusOperadora=2&statusDescricao=ENVIADA&statusData=2018-04-17+16%3A27%3A55

DLR
http://suaurl?id=00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1&parceiroId=1258&celular=11999887766&statusConfirmacao=4&confirmacaoDescricao=CONFIRMADO&confirmacaoData=2018-04-17+16%3A28%3A20

Resposta
http://suaurl?id=00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1&parceiroId=&celular=11988776655&mensagem=+reponde+teste&resposta=9&respostaDescricao=RESPOSTA&respostaData=2018-04-13+09%3A56%3A46

Exemplos de callback Bulk

Todas as informação são organizadas em um lote:
{
	"lote":[
		{
			"id":"00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1",
			"parceiroId":"1258",
			"celular":"11999998888",
			"statusOperadora":"2",
			"statusDescricao":"ENVIADA",
			"statusData":"2018-04-17 16:27:55"
		},
		{
			"id":"00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1",
			"parceiroId":"1258",
			"celular":"11999998888",
			"statusConfirmacao":"4",
			"confirmacaoDescricao":"CONFIRMADO",
			"confirmacaoData":"2018-04-17 16:27:55"
		},
		{
			"id":"00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1",
			"parceiroId":"1258",
			"mensagem": "repondeu teste resposta",
			"celular":"11999998888",
			"resposta":"9",
			"respostaDescricao":"RESPOSTA",
			"respostaData":"2018-04-17 16:27:55"
		},	
		{
			"id":"00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1",
			"parceiroId":"1258",
			"celular":"11999998888",
			"statusOperadora":"2",
			"statusDescricao":"ENVIADA",
			"statusData":"2018-04-17 16:27:55"
		},
		{
			"id":"00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1",
			"parceiroId":"1258",
			"celular":"11999998888",
			"statusConfirmacao":"4",
			"confirmacaoDescricao":"CONFIRMADO",
			"confirmacaoData":"2018-04-17 16:27:55"
		},
		{
			"id":"00000884000003882018041716032866fd317cda0eeb69d41236376cf2f76b1",
			"parceiroId":"1258",
			"mensagem": "repondeu teste resposta",
			"celular":"11999998888",
			"resposta":"9",
			"respostaDescricao":"RESPOSTA",
			"respostaData":"2018-04-17 16:27:55"
		}
	]
}