[archive] API SOAP Introduction

L’API SOAP Message Business est un service web disponible en mode sécurisé HTTPS qui vous permet de manipuler les données relatives aux Contacts dans votre langage de programmation favori.

Quels sont les avantages de l’API SOAP Message Business ?

•    Un développement simple et rapide de vos applications
•    Ajouter ou mettre à jour individuellement des segments, champs personnalisés et contacts
•    Automatiser et planifier ces opérations de gestion de votre base contacts
•    Interfacer vos propres systèmes d’informations avec votre Base Contact Message Business

Avec quels langages de programmation l’API SOAP Message Business est-elle compatible ?

Notre service web a été testé avec les langages/librairies PHP (PHP version 5 avec extensions SOAP et HTTPS) et .NET (à partir de la version 2.0). Néanmoins, l’API SOAP Message Business étant basée sur SOAP, n’importe quel langage de programmation permettant de faire des appels SOAP en HTTPS peut être utilisé.

Pourquoi les exemples ne sont disponibles que pour PHP5 ?

Parce que PHP est à peu près compréhensible par tout le monde et que les exemples ne sont qu’une illustration de l’usage des paramètres et du résultat de chaque méthode. De manière générale, en PHP5 (avec les extensions SOAP, XML et OPENSSL/HTTPS activées), un appel SOAP s’effectue de la manière suivante :

try 
{ 
$soapClient = new SoapClient('https://services.message-business.com/v3/api/PublicInterface.svc/wsdl'); 
}
catch (Exception $e)
{ 
 echo "
Exception Error!
 echo $e->getMessage(); 
}
try
{
 $soapResult = $soapClient->NOM_DE_LA_METHODE(array('accountId' => 12345, 'apiKey' => '00000000-0000-0000-0000-000000000000'));
 echo str_replace('<', '<',$soapResult->NOM_DE_LA_METHODEResult);
}
catch (Exception $e) 
{ 
 echo 'Caught exception: ' . $e->getMessage; 
}

En .NET, il faut d’abord créer le proxy de service web via l’outil svutil fourni avec le SDK Windows via la ligne de commande :

Svcutil.exe https://services.message-business.com/v3/api/PublicInterface.svc/wsdl

Puis ajouter le fichier source de la classe c# alors généré dans votre projet en ajouter une référence à System.Web.Services, et enfin effectuer l’appel des méthodes appropriées sur une instance de cette classe proxy. Par exemple :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace MyProject
{
class Program
{
static void Main(string[] args)
{
PublicInterfaceClient client = new PublicInterfaceClient();
string result = client.GetAccountSegments(12345, "00000000-0000-0000-0000-000000000000")
}
}
}

Pour ce qui concerne les autres langages, le plus simple est de se référer aux documentations disponibles pour votre langage de programmation ou d’effectuer une recherche comportant comme mot clés « client »,  « SOAP », « WSDL » et le nom de votre langage de programmation. 

Pourquoi mes paramètres d’authentification sont passés en paramètres et non au travers d’entêtes comme cela est préconisé dans le standard SOAP ?

Afin de simplifier au maximum les codes sources de nos clients, d’assurer un maximum de compatibilité et dans la mesure où les appels SOAP s’effectuent sur un canal sécurisé (HTTPS), nous avons choisi d’intégrer les paramètres d’authentification directement dans les appels des méthodes. Ainsi, chaque appel peut tenir sur 2-3 seul ligne alors qu’il en faudrait au moins une dizaine pour construire les entêtes SOAP.

Quelles sont les méthodes disponibles ?

ContactDatas : Gestion des données de vos contacts
AccountSegments : Gestion des segments
AccountContactAttributes : Gestion des champs personnalisés
AccountDataAttribute : Gestion de catalogues de données externes

Comment obtenir ma clé API ?

Pour obtenir votre clé API, rendez-vous sur votre compte dans Plus > Vos paramètres > Langue, Interface, API > Clés d’accès aux API. Vous pourrez générer jusqu'à 5 clés API.
Il est à considérer que toute clé API supprimée est définitivement détruite. Vous pourrez alors en demander une nouvelle.

Une API au format SOAP mais aussi au format REST ?

Nous vous proposons aussi une API au format REST. Plus complète, cette API au format REST vous permettra d'utiliser des méthodes pour gérer une base de contacts mais également des opérations d'Emailings et de SMS. Nous vous invitons à découvrir la documentation de l'API au format REST. Notre priorité est de vous fournir une interface programmatique aussi standard que possible.