GET/api/v4/social/bulk-posts/{bulkJobId}

Récupérer une tâche de création de publications en masse

Renvoie le statut, les décomptes et les résultats par ligne d'une tâche de création de publications en masse sur les réseaux sociaux.

Nécessite une clé API. Consultez Authentification pour le format de l’en-tête et la rotation des clés.

Paramètres

Chemin

NomTypeObligatoireDescription
bulkJobIdstringobligatoireJob UUID, the `job.id` returned by POST /social/bulk-posts.

Réponses

200The job with its counts and one entry per submitted row.
Response
{  "data": {    "getBulkSocialPostJob": {      "id": "9b3f18d0-7a26-4c51-8e94-1f0d5c6b7a82",      "status": "COMPLETED_WITH_ERRORS",      "totalCount": 3,      "processedCount": 3,      "successCount": 2,      "failureCount": 1,      "createdAt": "2026-09-28T14:04:52Z",      "updatedAt": "2026-09-28T14:05:31Z",      "results": [        {          "index": 0,          "clientReference": "campaign-4471-slot-01",          "socialProfileId": "6f2c9a41-7b0e-4d55-9a2f-3c8e1d47b902",          "platforms": ["INSTAGRAM", "FACEBOOK"],          "status": "CREATED",          "socialPostId": "c47a1e58-2b93-4f10-a6d7-58e0c9b12345",          "postStatus": "SCHEDULED",          "errors": []        },        {          "index": 1,          "clientReference": "campaign-4471-slot-02",          "socialProfileId": "6f2c9a41-7b0e-4d55-9a2f-3c8e1d47b902",          "platforms": ["INSTAGRAM", "FACEBOOK", "LINKEDIN"],          "status": "CREATED",          "socialPostId": "e08b2d97-6f14-4c22-b7a5-9d3e1f6c4a70",          "postStatus": "SCHEDULED",          "errors": []        },        {          "index": 2,          "clientReference": "campaign-4471-slot-03",          "socialProfileId": "a90f7c22-5db1-4e83-9f40-2b7c6a1e5d33",          "platforms": ["INSTAGRAM"],          "status": "FAILED",          "socialPostId": null,          "postStatus": null,          "errors": [            {              "message": "SY95045: No connected channel for INSTAGRAM on this brand",              "code": "SY95045",              "contextInfo": [{ "key": "platform", "value": "INSTAGRAM" }]            }          ]        }      ]    }  }}
401Unauthenticated, missing or invalid API key.
404No job with that ID on this account (`SY95047`).

Fournit des informations sur une tâche créée par POST /social/bulk-posts. Interrogez cet endpoint jusqu'à ce que status atteigne une valeur finale, puis consultez results[] pour savoir ce qu'est devenue chaque ligne.

Cas d'utilisation : répercuter les résultats d'un chargement en masse dans votre propre calendrier. Après avoir soumis un lot, interrogez cet endpoint toutes les quelques secondes. Lorsque status a une valeur finale, parcourez results[] et associez la valeur clientReference de chaque entrée à votre propre enregistrement, en y inscrivant socialPostId. Les lignes présentant status: "FAILED" contiennent la raison dans errors[] ; renvoyez uniquement ces lignes dans un nouveau lot.

Cas d'utilisation : une barre de progression. Comparer processedCount à totalCount suffit à alimenter une barre de progression sans parcourir results[], et successCount / failureCount vous donnent le bilan dès que la tâche se termine.

Statuts de la tâche

statusFinalSignification
QUEUEDnonAcceptée, mais pas encore démarrée. results[] peut être vide.
PROCESSINGnonLes lignes sont en cours de création. results[] se remplit au fur et à mesure.
COMPLETEDouiToutes les lignes ont été créées.
COMPLETED_WITH_ERRORSouiCertaines lignes ont été créées, d'autres ont échoué. Consultez failureCount et la valeur errors[] de chaque ligne.
FAILEDouiLa tâche elle-même n'a pas pu s'exécuter. Aucune ligne n'a été créée.

Remarques.

  • clientReference reprend à l'identique ce que vous avez envoyé pour cette ligne. C'est le moyen le plus direct de faire le lien avec vos propres données ; index, la position de la ligne dans le tableau que vous avez soumis, avec une indexation commençant à 0, sert de solution de repli lorsque vous n'avez rien envoyé.
  • Lorsqu'une ligne atteint status: "CREATED", cela signifie que la publication existe, et non qu'elle a été publiée — postStatus vous indique où en est la publication elle-même. Les lignes PUBLISH et SCHEDULE passent ensuite encore par le processus de publication asynchrone : utilisez chaque socialPostId avec GET /social/posts/{postId} et consultez channels[] pour connaître le résultat réel par canal.
  • Une tâche dont toutes les lignes auraient échoué à la validation n'aurait jamais été créée, car la création en masse rejette le lot avant sa mise en file d'attente. Une tâche au statut FAILED signifie ici qu'elle a échoué après avoir été acceptée.
  • updatedAt évolue à mesure que les lignes sont traitées ; sa valeur se stabilise une fois que la tâche atteint un statut final.
Request
curl -X GET 'https://listingsapi.com/api/v4/social/bulk-posts/<bulkJobId>' \  -H "Authorization: API $LISTINGSAPI_KEY"