GET/api/v4/social/posts/{postId}

Einen Social-Media-Beitrag abrufen

Gibt einen Social-Media-Beitrag mit seinem Inhalt, seiner Zeitplanung sowie dem aktuellen Veröffentlichungsstatus, Link und Fehler pro Kanal zurück.

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

Parameter

Pfad

NameTypErforderlichBeschreibung
postIdstringerforderlichPost UUID, the `socialPostId` returned by POST /social/posts or the `socialPostId` of a row from the brand's post list.

Antworten

200The post, with per-channel publish state in `connectedChannels`.
Response
{  "data": {    "getSocialMediaPost": {      "name": "Autumn collection launch",      "status": "PUBLISHED",      "initialContent": "Our autumn collection lands today. Solid oak, hand-finished, made two blocks from the shop. Come see it in person this weekend.",      "initialMedia": ["https://cdn.example.com/social/autumn-collection.jpg"],      "initialVideo": [],      "globalPostSchedule": "2026-10-02T13:30:00Z",      "customDataFlag": false,      "approvalState": null,      "actionOn": null,      "comment": null,      "postAutomationId": null,      "connectedChannels": [        {          "id": "b81d5b3c-4a90-4f6a-9c11-71e0dd2fa4a7",          "platform": "INSTAGRAM",          "socialPlatformId": 2,          "displayName": "Jenny Home",          "userName": "jennyhome",          "userImage": "https://cdn.listingsapi.com/social/channels/b81d5b3c/avatar.jpg",          "status": "SUCCESS",          "liveLink": "https://www.instagram.com/p/CxYz1234abc/",          "reason": null,          "error": null,          "archived": false        },        {          "id": "2d4e6f80-1c33-4b7a-8e05-9a1b2c3d4e5f",          "platform": "FACEBOOK",          "socialPlatformId": 1,          "displayName": "Jenny Home & Co.",          "userName": "jennyhomeco",          "userImage": "https://cdn.listingsapi.com/social/channels/2d4e6f80/avatar.jpg",          "status": "SUCCESS",          "liveLink": "https://www.facebook.com/jennyhomeco/posts/1029384756",          "reason": null,          "error": null,          "archived": false        },        {          "id": "7c5b9a12-8de4-4a31-b0f2-6e3d4c5b8a90",          "platform": "LINKEDIN",          "socialPlatformId": 4,          "displayName": "Jenny Home",          "userName": "jenny-home",          "userImage": null,          "status": "ERROR",          "liveLink": null,          "reason": "Authorization expired",          "error": "The LinkedIn authorization for this channel is no longer valid. Reconnect the channel and post again.",          "archived": false        }      ]    }  }}
401Unauthenticated, missing or invalid API key.
404No post with that ID on this account.

Ruft einen Beitrag anhand seiner UUID ab, einschließlich des verfassten Inhalts, der daraus ermittelten Zeitplanung und eines Eintrags pro Zielkanal, der beschreibt, was auf der jeweiligen Plattform tatsächlich geschehen ist. Dies ist der Endpunkt, den Sie nach dem Erstellen eines Beitrags regelmäßig abfragen.

Anwendungsfall: Überprüfung nach der Veröffentlichung. Die Veröffentlichung erfolgt asynchron, daher teilt Ihnen POST /social/posts lediglich mit, dass der Beitrag angenommen wurde. Fragen Sie diesen Endpunkt regelmäßig mit der zurückgegebenen socialPostId ab und lesen Sie connectedChannels[]: status: "SUCCESS" mit einem liveLink bedeutet, dass der Beitrag auf diesem Kanal veröffentlicht ist; status: "ERROR" mit gesetztem error bedeutet, dass er dort nicht veröffentlicht ist, und gibt den Grund dafür an. Beenden Sie die regelmäßigen Abfragen, sobald kein Kanal mehr den Status SCHEDULED hat.

Anwendungsfall: Dem Kunden zeigen, wo sein Beitrag veröffentlicht wurde. Stellen Sie jeden connectedChannels[].liveLink als externen Link dar, damit der Benutzer den veröffentlichten Beitrag direkt auf der Plattform öffnen kann, und zeigen Sie error direkt bei den Kanälen an, auf denen die Veröffentlichung fehlgeschlagen ist, anstatt den gesamten Beitrag auf einen einzigen Fehlerstatus zu reduzieren.

Die Statusfelder verstehen

Es gibt zwei Statusebenen, die unterschiedliche Fragen beantworten.

FeldWerteBedeutung
statusDRAFT, PENDING, SCHEDULED, PUBLISHED, FAILED, ARCHIVED, REJECTEDDer Beitrag als Ganzes.
connectedChannels[].statusSCHEDULED, SUCCESS, ERROR, ARCHIVEDWas auf dieser einzelnen Plattform geschehen ist.

Ein Beitrag kann insgesamt den Status PUBLISHED aufweisen, während ein Kanal den Status ERROR hat. Verwenden Sie für die Darstellung immer connectedChannels[]; status auf Beitragsebene ist eine Zusammenfassung.

Hinweise.

  • globalPostSchedule ist der ermittelte Veröffentlichungszeitpunkt in UTC. Wenn Sie die Veröffentlichung mit scheduleDate + scheduleTime geplant haben, ist dies der Zeitpunkt, der sich daraus unter Berücksichtigung der Zeitzone der Marke ergibt – eine nützliche Kontrolle, ob die Zeitzone Ihren Erwartungen entsprach.
  • error ist eine für Menschen lesbare Nachricht, die Sie einem Kunden bedenkenlos anzeigen können; reason ist die kürzere interne Bezeichnung dahinter. Keines der beiden Felder enthält Plattform-Tokens oder Trace-IDs.
  • connectedChannels[].id ist die Verbindungs-UUID aus den Verbindungen der Marke und der Wert, den Insights als socialConnectedChannelId benötigt.
  • Ein Kanal mit dem Status archived: true wurde nach dem Erstellen des Beitrags getrennt. Auf diesem Kanal wird der Beitrag nicht veröffentlicht; siehe Trennen.
  • Ein Kanal, der nach dem Ablauf einer Autorisierung im Status ERROR verbleibt, benötigt einen neuen Verbindungslink, keinen erneuten Veröffentlichungsversuch für den Beitrag.
  • Für Interaktionszahlen anstelle des Zustellstatus rufen Sie GET /social/posts/{postId}/insights auf.
  • Um die Beiträge einer Marke aufzulisten, anstatt einen einzelnen abzurufen, verwenden Sie GET /social/brands/{brandId}/posts.
Request
curl -X GET 'https://listingsapi.com/api/v4/social/posts/<postId>' \  -H "Authorization: API $LISTINGSAPI_KEY"