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

Bir markanın gönderilerini listeleme

Bir markanın sosyal medya gönderilerini içerikleri, zamanlamaları, platformları ve kanal bazında durumlarıyla sayfalanmış liste olarak döndürür.

API anahtarı gerektirir. Başlık biçimi ve anahtar yenileme için Kimlik doğrulama bölümüne bakın.

Parametreler

Yol

AdTürZorunluAçıklama
brandIdstringzorunluBrand UUID whose posts should be listed.

Sorgu

AdTürZorunluAçıklamaVarsayılan
filtersstringisteğe bağlıJSON-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).—
pageintegeristeğe bağlı1-based page number. Defaults to 1.—
sizeintegeristeğe bağlıRows per page. Defaults to 20.—
fetchPostContentbooleanisteğe bağlıWhen `true`, each row carries its full `content` object. Leave it off for a lighter list.—

Yanıtlar

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`).

Bir markanın gönderilerini ad, platform, durum, onay durumu ve planlanan zaman aralığına göre filtreleyerek en yeniden başlayarak listeler. Her satır, gönderi başına ikinci bir çağrı yapmadan bir takvim veya akış oluşturmak için yeterli bilgi içerir.

Kullanım senaryosu: içerik takvimi. filters={"status":["SCHEDULED"],"startDate":"2026-10-01","endDate":"2026-10-31"} ile filtreleyin ve her satırı publishedOn zamanına veya henüz yayımlanmamış bir gönderi için gönderdiğiniz planlanan zamana yerleştirin. Her öğeye POST /social/posts/cancel ile bağlantılı bir iptal eylemi ekleyin ve ayrıntı görünümünü GET /social/posts/{postId} ile açın.

Kullanım senaryosu: başarısızlık taraması. Her gece her marka için filters={"status":["FAILED"]} ile bir tarama çalıştırın ve dönen satırlar için uyarı oluşturun. connectedChannels[].error, hangi platformun gönderiyi reddettiğini ve nedenini belirtir; yetkilendirme süresinin dolduğunu bildiren bir kanal için yeniden deneme değil, yeni bir bağlantı kurma bağlantısı gerekir.

Notlar.

  • socialPostId, get, insights ve cancel tarafından kabul edilen düz UUID değeridir.
  • Filtreler, ayrı parametreler olarak değil, filters sorgu parametresinde JSON olarak kodlanmış tek bir dize olarak iletilir. Bu dizeye URL kodlaması uygulayın.
  • Sayfalama, ofset tabanlıdır (page / size); pageInfo.total, bu sayfanın boyutu değil, eşleşen gönderilerin toplam sayısıdır. totalPublishedPosts ve totalEngagementPosts, marka genelindeki sayaçlardır ve kontrol panelinde kutucuklar olarak kullanılabilir.
  • Satır yalnızca gönderi düzeyindeki durumu içerir. Kesinleştirilmiş planlanan zamanı ve kanal başına sonucu görmek için gönderiyi GET /social/posts/{postId} ile açın.
  • startDate ve endDate, gönderinin planlanan zamanına göre filtreleme yapar ve scheduleDate / scheduleTime ile aynı şekilde markanın saat diliminde yorumlanır.
  • publishedOn, en az bir kanalda yayımlanana kadar null değerindedir. Tüm kanalları başarısız olan bir gönderi, publishedOn: null değerini korur ve status değeri FAILED olarak kalır.
  • approvalState, approver, actionOn ve actionBy yalnızca gönderi onay iş akışını kullanan hesaplar için doldurulur; aksi durumda null olarak kalırlar.
  • fetchPostContent=true değerini yalnızca gönderi gövdelerini görüntülerken ayarlayın; daha hafif olan varsayılan seçenek bir takvim için yeterlidir.
Request
curl -X GET 'https://listingsapi.com/api/v4/social/brands/<brandId>/posts' \  -H "Authorization: API $LISTINGSAPI_KEY"