Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
uSendit API
Especificação do sistema
Versão 2.3.2
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
Copyright
Todos os direitos reservados. Nenhuma parte deste documento pode ser reproduzida em
qualquer forma sem a permissão escrita do detentor dos direitos autorais. O conteúdo deste
documento está sujeito a revisão sem aviso prévio, devido ao progresso contínuo da
metodologia, desenho e desenvolvimento. A Send It não será responsável por qualquer erro
ou dano de qualquer tipo, decorrente do uso deste documento.
1
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
Índice
1. Versões ............................................................................................................................... 7
2. Introdução .......................................................................................................................... 8
2.1. A Send It......................................................................................................................... 8
2.2. Objectivo ....................................................................................................................... 8
2.3. Glossário ........................................................................................................................ 9
2.4. Convenções tipográficas................................................................................................ 9
3. Organização...................................................................................................................... 10
3.1. Nomenclaturas ............................................................................................................ 10
3.2. Considerações ............................................................................................................. 10
4. Descrição do serviço......................................................................................................... 11
4.1. Configuração de acesso ............................................................................................... 11
4.2. Ambiente de testes ..................................................................................................... 11
5. Operações do serviço ....................................................................................................... 13
5.1. SendMessages ............................................................................................................. 13
5.1.1. Assinatura da operação ........................................................................................... 13
5.1.2. Parâmetros .............................................................................................................. 13
5.1.3. Retorno .................................................................................................................... 15
5.2. SendMessage ............................................................................................................... 19
5.2.1. Assinatura da operação ........................................................................................... 19
5.2.2. Protocolos................................................................................................................ 19
5.2.3. Parâmetros .............................................................................................................. 19
5.2.4. Retorno .................................................................................................................... 21
5.2.5. Pedido Exemplo ....................................................................................................... 23
5.3. SmsCharCounter .......................................................................................................... 24
5.3.1. Assinatura da operação ........................................................................................... 24
5.3.2. Parâmetros .............................................................................................................. 24
5.3.3. Retorno .................................................................................................................... 24
5.4. GetPartnerEvents ........................................................................................................ 26
5.4.1. Assinatura da operação ........................................................................................... 26
2
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
3
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
4
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
Índice de tabelas
5
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
6
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
1. Versões
7
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
2. Introdução
2.1. A Send It
2.2. Objectivo
O presente documento tem como objectivo apresentar a interface programática (API), para
integração dos serviços dos nossos clientes com a plataforma de envio massivo de SMSs da
Send It: o uSendit (https://usendit.co.mz).
A integração permite enviar SMSs utilizando uma conta de utilizador com características da
plataforma uSendit (permissões, créditos, entre outras) e utilizar a gateway de envio de
SMSs da Send It, sem necessidade de recorrer à complexa integração com os operadores
móveis.
8
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
Audiência
2.3. Glossário
Convenção Descrição
Calibri Utilizado para texto e tabelas
Calibri Utilizado para estrangeirismos
Utilizado em subtítulos que não são mencionados no índice ou utilizado para destacar o
Calibri
texto
Courier New Utilizado para código
9
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
3. Organização
3.1. Nomenclaturas
3.2. Considerações
10
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
4. Descrição do serviço
• Localização:
o https://api.usendit. co.mz/v2/remoteusendit.asmx
• Protocolo:
o HTTP/SOAP
A Send It disponibiliza um ambiente de testes das operações do serviço que permite aos
clientes simularem o agendamento de SMSs. As mensagens agendadas não serão enviadas
para os operadores móveis, dessa forma, caso esteja a integrar também com a nossa
solução de envio de relatórios de entrega, DR Forwarder3, não irá receber quaisquer
relatórios de entrega.
1 https://www.iana.org/time-zones
2 https://www.ietf.org/timezones/tzdb-2018c/
3A documentação técnica da solução de envio de relatórios de entrega, DR Forwarder, encontra-se disponível
para consulta em: http://docs.sendit.pt/DR_Forwarder_PT.zip
11
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
• Localização:
o https://apitest.usendit. co.mz/v2/remoteusendit.asmx
12
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5. Operações do serviço
5.1. SendMessages
Um contacto é uma entidade que possui, entre outras, propriedades que especificam o nº
de telemóvel, texto da mensagem e data de envio.
5.1.2. Parâmetros
13
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
(a) A mensagem de texto pode ter as seguintes dimensões quando o seu texto é codificado
em Default GSM 7 Bit (7 bits):
• Mensagem única: 160 caracteres (máximo)
• Mensagens concatenadas: 153 caracteres (por segmento)
e as seguintes dimensões quando codificado em UCS2 (16 bits):
• Mensagem única: máx. 70 caracteres (máximo)
• Mensagens concatenadas: 67 caracteres (por segmento)
14
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
processamento por parte do sistema até o envio ser iniciado. Assim que o processo
terminar, o envio é iniciado automaticamente
Exemplo
Uma mensagem com 180 caracteres, codificada em GSM 7 Bit, originará 2 SMSs reais (2
segmentos):
• 1º segmento: 153 caracteres e,
• 2º segmento: 27 caracteres
pela qual o cliente será cobrado em função do número de segmentos, da seguinte forma:
• 2 vezes o valor unitário de um SMS
5.1.3. Retorno
4A documentação técnica acerca da dimensão das mensagens encontra-se disponível para consulta em:
http://docs.sendit.pt/Short_Message_Length_PT.zip
15
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
16
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
17
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
(h) A data de expiração é considerada inválida nas seguintes condições: é inferior à data do
envio, inferior à data atual se não for especificada data de envio e hora de início, inferior à
composição da data atual com a hora de início ou inferior à composição da data atual com a
hora de fim.
18
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.2. SendMessage
5.2.2. Protocolos
Em adição ao protocolo HTTPS/SOAP, esta operação pode ser invocada utilizando um pedido
HTTP GET ou POST, devendo os seus parâmetros ser passados no formato de query string5
no URL ou no corpo do pedido (no caso de POST).
5.2.3. Parâmetros
Obrigat
Nome Tipo Dimensão Descrição
ório
username Sim A 256 Nome de utilizador
password Sim A 20 Password de utilizador
Identificador do envio (no âmbito do
partnerEventId Não A 256
utilizador)
Identificador do fuso horário a que as datas
timezone Não TZ 100
existentes no parâmetro smsList se aplicam
Identificador da mensagem (no âmbito do
partnerMsgId Não A 256
utilizador)
Indisponível de momento. Colocar no valor
sender Sim A 16
deste campo o valor NULL ou string vazia.
Nº de telemóvel (sem “+” e “00” e com
msisdn Sim A 15 indicativo do país – Ex. 3519xxxxxxxx,
34xxxxxxxxx)
Identificador do operador móvel (-1 – Será
inferido pelo sistema da Sendit | 0 –
mobileOperator Sim I 1
Internacional | 21- Movitel | 22 – Vodacom
| 23 – Mcel)
expirationDatetim Data a partir da qual o SMS não será
Não DT 19
e enviado para o SMSC (operador móvel)
priority Sim I 2 Prioridade do SMS. Valores entre 0 (menos
5 https://en.wikipedia.org/wiki/Query_string
19
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
(a) O envio de SMSs para números internacionais (não pertencentes à rede móvel de Portugal) deve
ser realizado com remetente numérico (máx. 16 dígitos) para garantia de entrega das mensagens nos
operadores de destino, segundo a recomendação dos operadores móveis.
(b) A mensagem de texto pode ter as seguintes dimensões quando o seu texto é codificado
em Default GSM 7 Bit (7 bits):
• Mensagem única: 160 caracteres (máximo)
• Mensagens concatenadas: 153 caracteres (por segmento)
e as seguintes dimensões quando codificado em UCS2 (16 bits):
• Mensagem única: máx. 70 caracteres (máximo)
• Mensagens concatenadas: 67 caracteres (por segmento)
Exemplo
Uma mensagem com 180 caracteres, codificada em GSM 7 Bit, originará 2 SMSs reais (2
segmentos):
• 1º segmento: 153 caracteres e,
• 2º segmento: 27 caracteres
20
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
pela qual o cliente será cobrado em função do número de segmentos, da seguinte forma:
• 2 vezes o valor unitário de um SMS
5.2.4. Retorno
A operação retorna um objecto do tipo de dados string, em formato query string, com a
seguinte especificação:
6A documentação técnica acerca da dimensão das mensagens encontra-se disponível para consulta em:
http://docs.sendit.pt/Short_Message_Length_PT.zip
21
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
22
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
(g) A data de expiração é considerada inválida nas seguintes condições: é inferior à data do
envio, inferior à data atual se não for especificada data de envio e hora de início, inferior à
composição da data atual com a hora de início ou inferior à composição da data atual com a
hora de fim.
HTTP/GET
https://apitest.usendit.co.mz/v2/remoteusendit.asmx/SendMessage?username=<yourusername>&
password=<your password>&partnerEventId=&timezone=&partnerMsgId=&sender=
uSendit&msisdn=3519xxxxxxxx&mobileOperator=-
1&priority=0&expirationDatetime=&messageText=teste&scheduleDatetime=&beginTime=&endTim
e=&workingDays=false&isFlash=false
23
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.3. SmsCharCounter
5.3.2. Parâmetros
5.3.3. Retorno
24
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
Exemplo
• MessageText: mensagem de teste
• CharactersNumber: 17
• CharactersTotalNumber: 160
• SegmentsNumber: 1
• Encoding: GSM7
25
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.4. GetPartnerEvents
Operação que permite obter uma lista de eventos (no âmbito da Send It) para um
determinado PartnerEventId do utilizador.
5.4.2. Parâmetros
5.4.3. Retorno
26
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
27
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.5. GetSchedule
5.5.2. Parâmetros
5.5.3. Retorno
28
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
29
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.6. AuthenticateUser
Esta operação serve exclusivamente para validar os dados de acesso e estado de uma conta
de utilizador. Caso seja autenticado com sucesso, será retornado o número de créditos
disponíveis para esse utilizador.
5.6.2. Parâmetros
5.6.3. Retorno
30
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
31
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
32
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.7. GetCreditPacks
5.7.2. Parâmetros
5.7.3. Retorno
33
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
34
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.8. BuyCredits
5.8.2. Parâmetros
35
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.8.3. Retorno
36
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.9. CreateAccount
5.9.2. Parâmetros
37
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
(t) A operação possui ainda um parâmetro caracterizado pelo enumerado com tipo
HowDidYouMeetUs, com a seguinte especificação:
Nome Descrição
SMS_MARKETING Sms marketing
EMAIL_MARKETING Email marketing
FACEBOOK Facebook
LINKED_IN LinkedIn
RECOMMENDATION Recomendação de terceiros
COMMERCIAL_AGENT Agente comercial
INTERNET_SEARCH Pesquisa na internet
TV_SPOT Anúncio televisivo
WEB_SITE_SPOT Anúncios nos websites de parceiros
OTHER Outro
38
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
(v) A operação CreateAccount possui ainda um parâmetro caracterizado pelo objeto com
tipo InvoiceInfo, com a seguinte especificação:
5.9.3. Retorno
39
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
40
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.10. ConfirmAccount
5.10.2. Parâmetros
5.10.3. Retorno
41
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
42
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.11. ResendConfirmationCode
5.11.2. Parâmetros
5.11.3. Retorno
43
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
44
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.12. BuyCreditsWithPromotionalCode
5.12.2. Parâmetros
45
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.12.3. Retorno
46
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
5.13. GetCountries
5.13.2. Parâmetros
5.13.3. Retorno
47
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
48
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
6. Considerações / Responsabilização
A Send It recomenda aos clientes que realizem a integração com este serviço que nos
solicitem apoio em toda e qualquer circunstância que se revele necessária. Adicionalmente,
indicamos, desde já, algumas considerações relevantes para o desenvolvimento de um
módulo de integração com este serviço:
1. O cliente deve estar ciente da dimensão dos pedidos e respostas que serão
enviados/recebidos na interação com o serviço;
2. O cliente deve, igualmente, determinar o tempo necessário para a realização dos
pedidos e aceitação das respectivas respostas do serviço;
3. A incorrecta avaliação do tempo e da quantidade de dados necessários para
recepcionar a resposta de um pedido pode originar timeouts na resposta (do lado do
cliente). Nota: embora ocorra timeout do lado do cliente, o pedido continua a ser
processado do lado do servidor / serviço;
4. O timeout do lado do cliente não permite inferir qualquer conclusão acerca do
resultado do processamento do pedido. Sempre que ocorra timeout do lado do
cliente deve, este, contactar a Send It antes de realizar um retry para determinar
qual foi a conclusão do processamento do pedido anterior (erro ou sucesso);
5. A realização de retries sem determinação do resultado prévio da execução de um
pedido ao serviço pode originar múltiplas repetições do mesmo envio e o cliente
pode incorrer em custos indeterminados;
6. A Send It não tem qualquer responsabilidade na implementação e operação do
módulo de integração com o serviço. A Sendit está, por este motivo, ausente de
qualquer forma de responsabilização em caso de comportamento não previsto
(repetições de envios, pedidos mal parametrizados, entre outros) excepto quando
se verifique ser consequência de falha de operação do serviço.
49
uSendit API – Especificação do sistema – v2.3.2 2019-07-18
7. Contactos
50