[PT] – API para pedidos GET

Introdução

O serviço DMDS oferece a opção de fazer pedidos do tipo GET. Sua URL é equivalente à API comum, alterando api.php por api-get.php.

O formato das ordens é uma transformação bastante intuitiva das solicitações SOAP, elas codificam o XML como uma matriz, eliminando o primeiro nível de aninhamento:

Por exemplo,

<dameInformacion>
<suscriptoEmail>EMAIL DEL SUSCRIPTO</suscriptoEmail>
<serverKey>SERVER KEY</serverKey>
</dameInformacion>

será perguntado assim:

/api-get.php?pedido=dameInformacion&suscriptoEmail= EMAIL DEL SUSCRIPTO&serverKey= SERVER KEY

Em suma, descrevemos as ordens com mais detalhes, mas primeiro vamos ver os argumentos particulares desta opção:

  • format: define o formato de resposta esperado, XML ou JSON. Em ambos os casos, o fragmento de URL é & format = xml & or & format = json &. Por padrão: json.
  • enIso: Deve ser definido como 1 se os dados do pedido estiverem codificados em ISO-8859-1. Se não estiver presente, a ordem é esperada em UTF-8. O fragmento de URL resultante é & enIso = 1 &

A resposta para essa API é sempre a UTF-8 e é idêntica ao corpo da resposta esperado no API-SOAP. A codificação XML em JSON é a usual.

Ao contrário do API-SOAP, a ordem dos parâmetros aqui não importa. Os parâmetros devem ser codificados corretamente para pedidos via URL, não o & (não enviar & como um separador)

enviarMail y dameInformacion

O XML da ordem:

<enviarEmail>
   <suscripto>
      <email>EMAIL DEL SUSCRIPTO</email>
      [
      <nombre>NOMBRE DEL SUSCRIPTO</nombre>
      ]
[
      <apellido>APELLIDO DEL SUSCRIPTO</apellido>
      ]
   </suscripto>
   <campanaId>ID DE LA CAMPAÑA</campanaId>
   <email>
      [
      <viaUrl>DIRECCION DE LA PIEZA</viaUrl>
      ]
[
      <piezaEnUtf8>0 ó 1</piezaEnUtf8>
      ]
[
      <piezaFija>DIRECCION DE PIEZA FIJA</piezaFija>
      ]
[
      <asunto>ASUNTO DE E-MAIL</asunto>
      ]
[
      <tags>
         <tag1>REEMPLAZO 1</tag1>
         ....
         <tagN>REEMPLAZO       N</tagN>
      </tags>
      ]
   </email>
   <serverKey>SERVER KEY</serverKey>
</enviarEmail>

é convertido da seguinte forma:

  • A tag que indica o nome da ordem (<sendMail>) torna-se a variável “solicitada” (isso é para evitar um grau de aninhamento)
  • Todos os outros campos são codificados para enviá-los via URL como uma matriz associativa.

Marcamos uma quebra de linha para cada e para legibilidade e os parâmetros opcionais em itálico:

/api-get.php?pedido=enviarMail
&suscripto[email]= EMAIL DEL SUSCRIPTO
&suscripto[nombre]=NOMBRE DEL SUSCRIPTO 
&suscripto[apellido]=APELLIDO DEL SUSCRIPTO 
&campanaId=ID DE LA CAMPAÑA
&email[viaUrl]=DIRECCION DE LA PIEZA 
&email[piezaEnUtf8]= 0 ó 1 
&email[piezaFija]= DIRECCION DE LA PIEZA FIJA 
&email[asunto]= ASUNTO DEL E-MAIL 
&email[tags][tag1]=REEMPLAZO 1 
&⇓
&email[tags][tagN]=REEMPLAZO N 
&serverKey= SERVER KEY

Caso haja Tags Complexas, elas serão: & email [tags] [tagComplejo1] [attr1] = Valor do Atributo 1 da Tag Complexa 1

Caso existam Tags Enumeradas, índices numéricos serão utilizados, começando do zero:

&email[tags][tag1][0]=Valor 1º reemplazo
&email[tags][tag1][1]=Valor 2º reemplazo

&email[tags][tag1][n]=Valor n-esimo reemplazo

A combinação de enumerados com complexos é a aplicação natural:

<INTERES>
<item>
<NOMBRE>Torneo de Futbol</NOMBRE>
<LINK>http://www.torneofutbol.com/</LINK>
<CONTACTO>webmaster@torneofutbol.com</CONTACTO>
</item>
<item>
<NOMBRE>Torneo de Basquet</NOMBRE>
<LINK>http://www.torneobasquet.com/</LINK>
<CONTACTO>webmaster@torneobasquet.com</CONTACTO>
</item>
</ INTERES>

Ele mapeia para:

&email[tags][interes][0][nombre]=Torneo de Futbol
&email[tags][interes][0][link]= http://www.torneofutbol.com/ 
&email[tags][interes][0][contacto]= webmaster@torneofutbol.com
&email[tags][interes][1][nombre]= Torneo de Basquet 
&email[tags][interes][1][link]=http://www.torneobasquet.com/
&email[tags][interes][1][contacto]=webmaster@torneobasquet.com

Para me dar informações:

<dameInformacion>
<suscriptoEmail>EMAIL DEL SUSCRIPTO</suscriptoEmail>
<serverKey> SERVER KEY </serverKey>
</dameInformacion>

será perguntado assim:

/api-get.php?pedido=dameInformacion&suscriptoEmail= EMAIL DEL SUSCRIPTO&serverKey= SERVER KEY