GET/api/v4/bulk-posts/{postId}

Einen Sammelbeitrag anhand seiner ID abrufen

Gibt eine einzelne Beitragskampagne für mehrere Standorte mit ihrem Inhalt, dem Veröffentlichungsstatus pro Standort und Interaktionsanalysen zurück.

Erfordert einen API-Schlüssel. Format des Headers und Schlüsselrotation finden Sie unter Authentifizierung.

Parameter

Pfad

NameTypErforderlichBeschreibung
postIdstringerforderlichBase64-encoded bulk post ID (the `id` returned by POST /bulk-posts or listed by GET /locations/{locationId}/bulk-posts).

Antworten

200The campaign's content, per-location publish details, and analytics.
Response
{  "data": {    "socialPostView": {      "socialPostId": "U29jaWFsUG9zdDo1MTA4OA==",      "socialPostInfo": {        "id": "U29jaWFsUG9zdDo1MTA4OA==",        "name": "Diwali Offer - All Stores",        "status": "SUCCESS",        "type": "OFFER",        "createdAt": "2026-06-20",        "scheduledStartDate": "2026-06-22",        "scheduledEndDate": "2026-07-06",        "views": 4210,        "clicks": 318,        "shares": 12,        "reactions": 87,        "comments": 4,        "sites": ["GOOGLE", "FACEBOOK"],        "message": [          { "site": "GOOGLE", "message": "Festive savings across all our stores this week." },          { "site": "FACEBOOK", "message": "Festive savings across all our stores this week!" }        ],        "cta": [          { "type": { "value": "GET_OFFER", "label": "Get offer" }, "url": "https://jennyhome.example/diwali", "site": "GOOGLE", "tinyUrl": "https://tiny.cc/jh-diwali" }        ],        "contextInfo": {          "couponCode": "DIWALI25",          "redeemUrl": "https://jennyhome.example/diwali",          "termsConditions": "Valid in-store only. Cannot be combined with other offers.",          "title": "25% off storewide",          "discount": "25%",          "startDay": "2026-06-22",          "endDay": "2026-07-06"        },        "mediaUrl": [          { "url": "https://cdn.listingsapi.com/posts/51088/diwali.jpg", "site": "GOOGLE", "type": "IMAGE" }        ],        "publishDetails": [          { "site": "GOOGLE", "status": "PUBLISHED", "createdDate": "2026-06-20", "publishedDate": "2026-06-22", "submissionError": null },          { "site": "FACEBOOK", "status": "PUBLISHED", "createdDate": "2026-06-20", "publishedDate": "2026-06-22", "submissionError": null }        ],        "postLinks": [          { "site": "GOOGLE", "link": "https://www.google.com/maps/place/?post=51088" }        ],        "locationIds": [1800289, 1800290, 1800291]      },      "publishedLocationsCount": 3,      "socialPostAnalyticsBySite": [        { "site": "GOOGLE", "views": 3120, "clicks": 240, "reactions": 61, "shares": 0, "comments": 0 },        { "site": "FACEBOOK", "views": 1090, "clicks": 78, "reactions": 26, "shares": 12, "comments": 4 }      ],      "socialPostAnalyticsByLocationId": [        {          "locationId": 1800289,          "siteStats": [            { "site": "GOOGLE", "status": "PUBLISHED", "views": 1040, "clicks": 80, "reactions": 20, "shares": 0, "comments": 0 },            { "site": "FACEBOOK", "status": "PUBLISHED", "views": 360, "clicks": 26, "reactions": 9, "shares": 4, "comments": 1 }          ]        }      ]    }  }}
401Unauthenticated, missing or invalid API key.

Das Gegenstück zu GET /posts/{postId} für Sammelbeiträge. Es gibt dieselbe SocialPostView-Struktur für eine Kampagne zurück, die an mehreren Standorten gleichzeitig veröffentlicht wurde, sodass publishedLocationsCount größer als 1 ist und socialPostAnalyticsByLocationId eine Zeile pro Filiale enthält.

Anwendungsfall: eine Veröffentlichung in der gesamten Filialkette verfolgen. Nachdem Sie POST /bulk-posts für ein Festtagsangebot in allen Filialen aufgerufen haben, fragen Sie GET /bulk-posts/{postId} wiederholt ab, bis socialPostInfo.status den Wert SUCCESS hat. Lesen Sie anschließend socialPostAnalyticsByLocationId, um zu sehen, welche Filialen die meisten Klicks erzielt haben, und prüfen Sie publishDetails (sowie siteStats.status jedes Standorts), um Filialen zu finden, bei denen eine Website ERROR zurückgegeben hat.

Hinweise.

  • postId ist der Base64-codierte Wert von id, der vom Aufruf zur Sammelerstellung oder von der Sammelliste zurückgegeben wird, und keine unkodierte Ganzzahl.
  • socialPostAnalyticsBySite aggregiert die Werte über alle Standorte der Kampagne hinweg; socialPostAnalyticsByLocationId schlüsselt dieselben Zahlen pro Filiale auf.

Dieses Beispiel wurde anhand des API-Schemas erstellt. Das aktive Beispielkonto (Jenny Home) enthält keine Sammelkampagnen, daher stand keine echte ID zum Abrufen zur Verfügung; bei einer unbekannten oder ungültigen ID wird {"data":null,"errors":[{"message":"An error occurred processing your request."}]} zurückgegeben.

Request
curl -X GET 'https://listingsapi.com/api/v4/bulk-posts/<postId>' \  -H "Authorization: API $LISTINGSAPI_KEY"