Utiliser l'API de l'importateur de contact en vrac

Plans ActiveCampaign
Starter
Plus
Pro
Enterprise

Avec Activecampagne, vous pouvez utiliser l'API d'importation de contacts en vrac pour télécharger un grand nombre de contacts sur votre compte avec un seul appel API.

.

Avec Activecampagne, vous pouvez utiliser l'API d'importation de contacts en vrac pour télécharger un grand nombre de contacts sur votre compte avec un seul appel API.

Prenez note

  • L'API pour les importateurs de contacts en vrac est disponible sur tous les plans d'Activecampagne
  • L'importateur de contacts en vrac est conçu pour effectuer des offres sur de grandes quantités de contacts en une seule fois.
  • Ces offres comprennent :

Créer de nouveaux contacts

L'importateur de contacts en vrac est conçu pour effectuer des offres sur de grandes quantités de contacts en une seule fois. Ces offres comprennent :

  • Marquage des contacts
  • Ajout de contacts aux listes
  • Remarque
  • Le Bulk Contact Importer n'est pas conçu pour supporter des offres fréquentes impliquant un petit nombre de contacts ou pour synchroniser des mises à jour en temps réel à partir d'une base de données externe.
  • Les mises à jour des contacts devraient plutôt être rassemblées en lots plus importants et importées en tant que groupe.

Remarque

Le Bulk Contact Importer n'est pas conçu pour supporter des offres fréquentes impliquant un petit nombre de contacts ou pour synchroniser des mises à jour en temps réel à partir d'une base de données externe. Limitation des taux Le processus d'importation en vrac est optimisé pour le téléchargement de listes de contacts plus importantes.

Si vous avez besoin de télécharger 10 ou moins de contacts à la fois, veuillez utiliser la fonctionnalité Contacts de notre Activecampagne API V3.

Par conséquent, nous appliquons les limites de taux suivantes à l'API des importateurs de contact en vrac :

Pour les demandes contenant un seul contact, il y a une limite de 20 demandes par minute L'exécution de demandes fréquentes qui impliquent un petit nombre de contacts nécessite des frais généraux importants et peut affecter les performances de l'importateur'. Nous recommandons à tous les utilisateurs d'essayer de regrouper les mises à jour en groupes aussi importants que possible avant de commencer une importation.

  • Limitation de la taille de la charge utile
  • La taille de la charge utile d'une seule demande d'importation en masse doit être inférieure à 400 000 octets.

Contacts manqués

Les contacts doivent répondre à tous les critères suivants pour pouvoir être créés ou mis à jour avec cette API :

La taille de la charge utile d'une seule demande d'importation en masse doit être inférieure à 400 000 octets.

Le contact doit avoir une adresse électronique

L'adresse électronique du contact'ne doit pas figurer sur une liste d'exclusion

  • L'adresse électronique du contact'ne doit pas figurer sur une liste d'adresses électroniques rejetées
  • Le contact ne doit pas s'être désinscrit d'une liste à laquelle l'importation l'ajouterait

Si les contacts ne répondent pas à toutes ces exigences, ils seront ignorés par l'importateur.

  • L'adresse électronique du contact'ne doit pas figurer sur une liste d'exclusion
  • L'adresse électronique du contact'ne doit pas figurer sur une liste d'adresses électroniques rejetées
  • Structure de la demande

JSON
{
"contacts" : [
{
"email" : "someone@somewhere.com",
"first_name" : "Jane",
"last_name" : "Doe",
"phone" : "123-456-7890",
"customer_acct_name" : "Activecampagne",
"tags" : [
"dictumst aliquam augue quam sollicitudin rutrum",
],
"fields" : [
{"id" : 1, "value" : "foo"},
{"id" : 2, "value" : "foo||bar||baz"}
],
"subscribe" : [{"listid" : 1}, {"listid" : 2}],
"unsubscribe" : [{"listid" : 3}],
}
],
"callback" :
}

Response
200 OK
{
"Success":1,
"queued_contacts":1,
"batchId" :"0641fbdd-f62f-4c2c-ba02-3a83d5d11ac9",
"message" : "Importation de contact en file d'attente"
}

400 Bad Request
{
"Success":0,
"message" : "Les données utiles JSON n'ont pas passé la validation.

Documentation de l'API

POST https://youraccountname.api-us1.com/api/3/import/bulk_import

Structure de la demande

JSON
{
"contacts" : [
{
"email" : "someone@somewhere.com",
"first_name" : "Jane",
"last_name" : "Doe",
"phone" : "123-456-7890",
"customer_acct_name" : "Activecampagne",
"tags" : [
"dictumst aliquam augue quam sollicitudin rutrum",
],
"fields" : [
{"id" : 1, "value" : "foo"},
{"id" : 2, "value" : "foo||bar||baz"}
],
"subscribe" : [{"listid" : 1}, {"listid" : 2}],
"unsubscribe" : [{"listid" : 3}],
}
],
"callback" :
}

Response
200 OK
{
"Success":1,
"queued_contacts":1,
"batchId" :"0641fbdd-f62f-4c2c-ba02-3a83d5d11ac9",
"message" : "Importation de contact en file d'attente"
}

400 Bad Request
{
"Success":0,
"message" : "Les données utiles JSON n'ont pas passé la validation. Un ensemble d'objets contenant des informations sur un seul contact. L'importation n'a pas été mise en file d'attente pour le traitement.",
"failureReasons" :["Les données utiles doivent contenir un champ 'contacts'"]
}


Parures corporelles

tableau de contacts* (objet)

first_name (string)
Le prénom du contact. last_name (string)
Le nom de famille du contact. phone (string)
Le numéro de téléphone du contact.

  • email* (string)
    L'email du contact.
  • first_name (string)
    Le prénom du contact.
  • last_name (string)
    Le nom de famille du contact.
  • phone (string)
    Le numéro de téléphone du contact.
  • customer_acct_name (string)
    Le nom du compte du contact.
  • tags array (string)
    Chaque chaîne dans le tableau sera ajoutée comme un seul tag au contact. De nouvelles tags seront créées si elles n'existent pas encore.
  • fields array (object)
    Une liste de champs personnalisés à appliquer au contact. Chaque champ doit contenir deux champs : Chaque contact peut avoir jusqu'à N champs personnalisés.
  • id* (nombre)
    L'ID du champ personnalisé. Les champs personnalisés doivent être référencés par l'ID que Activecampagne leur attribue. Vous pouvez récupérer le numéro d'identification d'un champ personnalisé en utilisant l'appel API "List all custom fields".
  • value* (string)
    La valeur du champ personnalisé. listid* (nombre)
    L'ID de la liste à laquelle le contact doit être abonné.
  • tableau d'abonnement (objet)
    Un tableau de listes auxquelles le contact doit s'abonner. Il ressemblera à quelque chose comme ceci : /app/contacts/?listid=19&status=1

    Vous pouvez également récupérer le numéro d'identification d'une liste en utilisant l'appel API "Récupérer toutes les listes". tableau de désabonnement (objet)
    Un tableau de listes pour désabonner le contact.
  • Chaque objet liste contient un seul champ.
    listid* (nombre)L'ID de la liste dont il faut désabonner le contact. Les listes doivent être référencées par l'identifiant que Activecampagne leur attribue.

    Vous pouvez trouver l'ID de la liste en cliquant sur la liste dans votre compte Activecampagne puis en regardant la barre URL. Il ressemblera à quelque chose comme ceci : /app/contacts/?listid=19&status=1

    Vous pouvez également récupérer le numéro d'identification d'une liste en utilisant l'appel API "Récupérer toutes les listes".
  • tableau de désabonnement (objet)
    Un tableau de listes pour désabonner le contact. Chaque objet liste contient un seul champ.
    listid* (nombre)L'ID de la liste dont il faut désabonner le contact. Les listes doivent être référencées par l'identifiant que Activecampagne leur attribue.

    Vous pouvez trouver l'ID de la liste en cliquant sur la liste dans votre Activecampagne puis en regardant la barre URL. Il ressemblera à quelque chose comme ceci : /app/contacts/?listid=19&status=1

    Vous pouvez également récupérer le numéro d'identification d'une liste en utilisant l'appel API "Récupérer toutes les listes".

Rappels

requestType (string)
Peut être défini comme "GET" ou "POST". Détermine le type de requête HTTP qui sera envoyée au point de terminaison spécifié.

JSON
{
"contacts" : [ ... inclure les contacts ici ... ],
"callback" : {
"url" : "www.your_web_server.com",
"requestType" : "POST",
"detailed_results" : "true",
"params" : [
{"key" :"", "value" :""}
]
"headers" : [
{"key" :"", "value" :""}
]
}
}

 

  • url (string)
    Le point de terminaison URL auquel l'importateur fera une demande une fois l'importation terminée.
  • requestType (string)
    Peut être défini comme "GET" ou "POST". Pour une requête GET, chaque paramètre sera ajouté à la fin de l'URL dans une chaîne de requête.
  • detailed_results (string)
    Lorsqu'il a la valeur "true" et que le paramètre requestType a la valeur "POST", le rappel inclut le nombre de succès et d'échecs de la demande d'origine, ainsi qu'un tableau de messages d'erreur pour chaque contact échoué.
  • params (array)
    Une liste de paramètres à inclure dans la demande de rappel. Une liste d'en-têtes à inclure dans la demande de rappel. Ajoutez chaque en-tête sous la forme d'une paire clé-valeur. Exemples
  • headers (tableau)
  • {
    "contacts" : [ ... inclure les contacts ici ... ],
    "callback" : {
    "url" : "www.yourwebsite.com/the/api/to/hit",
    "requestType" : "GET",
    "params" : [
    {"key" : "msg", "value" : "hello"}
    ]
    "headers" : [
    {"key" :"", "value" :""}
    ]
    }
    } Les params seront ajoutés à l'URL comme paramètres de requête dans le cas d'une requête “GET”.

Exemples

Réception d'une notification

{
"contacts" : [ ... inclure les contacts ici ... ],
"callback" : {
"url" : "www.yourwebsite.com/the/api/to/hit",
"requestType" : "GET",
"params" : [
{"key" : "msg", "value" : "hello"}
]
"headers" : [
{"key" :"", "value" :""}
]
}
}

 

GET www.yourwebsite.com/the/api/to/hit?msg=hello Poster un message {
"contacts" : [ ... inclure les contacts ici ... ],
"callback" : {
"requestType" : "POST",
"params" : [
{"key" : "msg", "value" : "Import completed"}
]
"headers" : [
{"key" : "Authorization", "value" : "Bearer 4u1h_t0k3N"}
]
}
}

Résultat :

GET www.yourwebsite.com/the/api/to/hit?msg=hello

Poster un message

{
"contacts" : [ ... inclure les contacts ici ... ],
"callback" : {
"requestType" : "POST",
"params" : [
{"key" : "msg", "value" : "Import completed"}
]
"headers" : [
{"key" : "Authorization", "value" : "Bearer 4u1h_t0k3N"}
]
}
}


Résultat :

GET www.yourwebsite.com/the/api/to/hit

JSON
[
{"key" : "msg", "value" : "Import completed"}
]


Importer des résultats avec des messages d'erreur

{
"contacts" : [ ... inclure les contacts ici ... ],
"callback" : {
"requestType" : "POST",
"detailed_results" : "true",
"headers" : [
{"key" :"", "value" :""}
]
}
}


Lorsque le paramètre “detailed_results” est réglé sur "True", le rappel comprendra :

  • JSON
    {
    "Success":1,
    "Failures":0,
    "failure_reasons" :[]
    }

Résultat :

GET www.yourwebsite.com/the/api/to/hit

JSON
{
"Success":1,
"Failures":0,
"failure_reasons" :[]
}

Vous avez d'autres questions ? Soumettre une demande

Start free trial