/api/v4/posts/{postId}Einen Beitrag abrufen
Gibt eine einzelne Social-Media-Beitragskampagne mit ihrem Inhalt, dem Veröffentlichungsstatus pro Website und Interaktionsanalysen zurück.
Parameter
Pfad
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| postId | string | erforderlich | Base64-encoded social post ID (e.g. from the `id` field of a posts list, or the `socialPost.id` returned by POST /posts). |
Antworten
200The post's content, publish details, and analytics.
{ "data": { "socialPostView": { "socialPostId": "U29jaWFsUG9zdDo0NDEyMg==", "socialPostInfo": { "id": "U29jaWFsUG9zdDo0NDEyMg==", "name": "Summer Hours Update", "status": "SUCCESS", "type": "ANNOUNCEMENT", "createdAt": "2026-06-28", "scheduledStartDate": "2026-06-28", "scheduledEndDate": "2026-07-28", "views": 128, "clicks": 14, "shares": 0, "reactions": 3, "comments": 1, "sites": ["GOOGLE"], "message": [ { "site": "GOOGLE", "message": "We have extended our summer hours! Open until 9pm on weekdays." } ], "cta": [ { "type": { "value": "LEARN_MORE", "label": "Learn more" }, "url": "https://jennyhome.example/hours", "site": "GOOGLE", "tinyUrl": "https://tiny.cc/jh-hours" } ], "contextInfo": null, "mediaUrl": [ { "url": "https://cdn.listingsapi.com/posts/44122/summer.jpg", "site": "GOOGLE", "type": "IMAGE" } ], "publishDetails": [ { "site": "GOOGLE", "status": "PUBLISHED", "createdDate": "2026-06-28", "publishedDate": "2026-06-28", "submissionError": null } ], "postLinks": [ { "site": "GOOGLE", "link": "https://www.google.com/maps/place/?post=44122" } ], "locationIds": [1800289] }, "publishedLocationsCount": 1, "socialPostAnalyticsBySite": [ { "site": "GOOGLE", "views": 128, "clicks": 14, "reactions": 3, "shares": 0, "comments": 1 } ], "socialPostAnalyticsByLocationId": [ { "locationId": 1800289, "siteStats": [ { "site": "GOOGLE", "status": "PUBLISHED", "views": 128, "clicks": 14, "reactions": 3, "shares": 0, "comments": 1 } ] } ] } }}401Unauthenticated, missing or invalid API key.
Ruft eine Beitragskampagne anhand ihrer ID ab, einschließlich der Nachricht und des CTA pro Website, der angehängten Medien, des aktuellen Veröffentlichungsstatus auf jeder Website (publishDetails) und der Interaktionen, aufgeschlüsselt sowohl nach Website (socialPostAnalyticsBySite) als auch nach Standort (socialPostAnalyticsByLocationId).
Anwendungsfall: Überprüfung nach der Veröffentlichung. Nehmen Sie direkt nach dem Erstellen einer Ankündigung mit POST /posts die zurückgegebene socialPost.id und fragen Sie GET /posts/{postId} wiederholt ab, bis socialPostInfo.status von INPROGRESS zu SUCCESS wechselt. Wenn die Veröffentlichung auf einer Website fehlschlägt, enthält publishDetails[].submissionError den Grund und publishDetails[].status zeigt ERROR an.
Anwendungsfall: Dashboard für Interaktionen. Lesen Sie für einen Beitrag für einen einzelnen Standort socialPostAnalyticsBySite aus, um Aufrufe und Klicks auf Google und Facebook im Vergleich darzustellen, ohne den gesamten Standort erneut aufzulisten.
Hinweise.
postIdist die Base64-kodierte ID, die alsidin der Beitragsliste oder alssocialPost.idin der Antwort auf die Erstellung ausgegeben wird, keine unkodierte Ganzzahl.- Um eine Kampagne für mehrere Standorte (Bulk-Kampagne) abzurufen, verwenden Sie
GET /bulk-posts/{postId}; die Antwort hat dieselbe Struktur mitpublishedLocationsCount > 1.
Dieses Beispiel wurde auf Grundlage des API-Schemas erstellt. Das aktive Seed-Konto (Jenny Home) enthält keine Beiträge, daher war keine echte Beitrags-ID zum Abrufen vorhanden; bei einer unbekannten oder ungültigen ID wird {"data":null,"errors":[{"message":"An error occurred processing your request."}]} zurückgegeben.
curl -X GET 'https://listingsapi.com/api/v4/posts/<postId>' \ -H "Authorization: API $LISTINGSAPI_KEY"