GET/api/v4/social/brands/{brandId}/posts

Beiträge einer Marke auflisten

Gibt eine paginierte Liste der Social-Media-Beiträge einer Marke mit Inhalt, Veröffentlichungszeitplan, Plattformen und Status pro Kanal zurück.

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

Parameter

Pfad

NameTypErforderlichBeschreibung
brandIdstringerforderlichBrand UUID whose posts should be listed.

Query

NameTypErforderlichBeschreibungStandard
filtersstringoptionalJSON-encoded filter object. Fields: `name` (substring match on the post's internal name), `platforms` (array of the platform enum), `status` (array of `DRAFT`, `PENDING`, `SCHEDULED`, `PUBLISHED`, `FAILED`, `ARCHIVED`, `REJECTED`), `startDate` and `endDate` (`YYYY-MM-DD`, filtering on the post's schedule in the brand's timezone), `socialConnectedChannelId` (one connection), `approvalState` (array of workflow states), `viewMode` (string) and `filterByUser` (boolean, defaults to false).—
pageintegeroptional1-based page number. Defaults to 1.—
sizeintegeroptionalRows per page. Defaults to 20.—
fetchPostContentbooleanoptionalWhen `true`, each row carries its full `content` object. Leave it off for a lighter list.—

Antworten

200A page of posts plus `pageInfo` for paging.
Response
{  "data": {    "getSocialMediaPostByList": {      "socialPosts": [        {          "socialPostId": "c47a1e58-2b93-4f10-a6d7-58e0c9b12345",          "name": "Autumn collection launch",          "status": "PUBLISHED",          "platforms": ["INSTAGRAM", "FACEBOOK", "LINKEDIN"],          "socialPlatformIds": [2, 1, 4],          "socialProfileDetailsId": "6f2c9a41-7b0e-4d55-9a2f-3c8e1d47b902",          "createdAt": "2026-09-28T14:02:11Z",          "createdBy": 40122,          "author": "Dana Reyes",          "approver": null,          "approvalState": null,          "actionOn": null,          "actionBy": null,          "publishedOn": "2026-10-02T13:30:04Z",          "postAutomationId": null,          "content": {            "message": "Our autumn collection lands today. Solid oak, hand-finished, made two blocks from the shop.",            "images": ["https://cdn.example.com/social/autumn-collection.jpg"],            "video": [],            "liveLink": "https://www.instagram.com/p/CxYz1234abc/",            "boosted": false          },          "connectedChannels": [            {              "id": "b81d5b3c-4a90-4f6a-9c11-71e0dd2fa4a7",              "platform": "INSTAGRAM",              "displayName": "Jenny Home",              "status": "SUCCESS",              "liveLink": "https://www.instagram.com/p/CxYz1234abc/",              "error": null            }          ]        }      ],      "pageInfo": {        "total": 64,        "hasNextPage": true,        "totalEngagementPosts": 41,        "totalPublishedPosts": 47      }    }  }}
401Unauthenticated, missing or invalid API key.
404No brand with that ID on this account (`SY95043`).

Listet die Beiträge einer Marke mit den neuesten zuerst auf, mit Filtern für Name, Plattform, Status, Freigabestatus und geplanten Veröffentlichungszeitraum. Jede Zeile enthält genügend Informationen, um einen Kalender oder Feed ohne einen zweiten Aufruf pro Beitrag darzustellen.

Anwendungsfall: ein Inhaltskalender. Filtern Sie mit filters={"status":["SCHEDULED"],"startDate":"2026-10-01","endDate":"2026-10-31"} und platzieren Sie jede Zeile bei ihrem publishedOn oder, wenn der Beitrag noch nicht veröffentlicht wurde, zu dem von Ihnen übermittelten geplanten Zeitpunkt. Versehen Sie jeden Eintrag mit einer Abbruchaktion, die POST /social/posts/cancel aufruft, und öffnen Sie die Detailansicht mit GET /social/posts/{postId}.

Anwendungsfall: eine Fehlerprüfung. Führen Sie jede Nacht für jede Marke eine Prüfung mit filters={"status":["FAILED"]} durch und lösen Sie für die zurückgegebenen Zeilen eine Warnung aus. connectedChannels[].error gibt an, welche Plattform die Veröffentlichung abgelehnt hat und warum; ein Kanal, der eine abgelaufene Autorisierung meldet, benötigt einen neuen Verbindungslink, keinen erneuten Versuch.

Hinweise.

  • socialPostId ist die reine UUID, die von get, insights und cancel akzeptiert wird.
  • Filter werden als eine einzige JSON-kodierte Zeichenfolge im Abfrageparameter filters übertragen, nicht als separate Parameter. Kodieren Sie diese Zeichenfolge für die URL.
  • Die Paginierung basiert auf einem Offset (page / size); pageInfo.total ist die Gesamtzahl der passenden Beiträge, nicht die Größe dieser Seite. totalPublishedPosts und totalEngagementPosts sind markenweite Zähler, die sich als Dashboard-Kacheln eignen.
  • Die Zeile enthält nur den Status auf Beitragsebene. Öffnen Sie den Beitrag mit GET /social/posts/{postId}, um den ermittelten geplanten Veröffentlichungszeitpunkt und das Ergebnis pro Kanal abzurufen.
  • startDate und endDate filtern nach dem geplanten Veröffentlichungszeitpunkt des Beitrags und werden in der Zeitzone der Marke interpretiert, also in derselben Zeitzone wie scheduleDate / scheduleTime.
  • publishedOn ist null, bis mindestens ein Kanal den Beitrag veröffentlicht hat. Bei einem Beitrag, dessen Veröffentlichung auf allen Kanälen fehlgeschlagen ist, bleiben publishedOn: null und ein status von FAILED erhalten.
  • approvalState, approver, actionOn und actionBy werden nur für Konten befüllt, die einen Workflow zur Freigabe von Beiträgen verwenden; andernfalls bleiben sie null.
  • Setzen Sie fetchPostContent=true nur, wenn Sie Beitragsinhalte darstellen; für einen Kalender reicht die schlankere Standardeinstellung aus.
Request
curl -X GET 'https://listingsapi.com/api/v4/social/brands/<brandId>/posts' \  -H "Authorization: API $LISTINGSAPI_KEY"