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

브랜드의 게시물 목록 조회

브랜드의 소셜 게시물 목록을 콘텐츠, 게시 일정, 플랫폼 및 채널별 상태와 함께 페이지 단위로 반환합니다.

API 키가 필요합니다. 헤더 형식과 키 교체는 인증을 참고하세요.

매개변수

경로

이름유형필수설명
brandIdstring필수Brand UUID whose posts should be listed.

쿼리

이름유형필수설명기본값
filtersstring선택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).—
pageinteger선택1-based page number. Defaults to 1.—
sizeinteger선택Rows per page. Defaults to 20.—
fetchPostContentboolean선택When `true`, each row carries its full `content` object. Leave it off for a lighter list.—

응답

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

이름, 플랫폼, 상태, 승인 상태 및 게시 일정 범위로 필터링하여 한 브랜드의 게시물을 최신순으로 나열합니다. 각 행에는 게시물마다 추가로 호출하지 않고도 캘린더나 피드를 표시할 수 있는 충분한 정보가 포함됩니다.

사용 사례: 콘텐츠 캘린더. filters={"status":["SCHEDULED"],"startDate":"2026-10-01","endDate":"2026-10-31"}로 필터링하고 각 행을 해당 publishedOn 시점에 배치하거나, 아직 게시되지 않은 게시물의 경우 전송한 게시 일정에 배치합니다. 각 항목에 POST /social/posts/cancel에 연결된 취소 동작을 제공하고, GET /social/posts/{postId}로 상세 보기를 엽니다.

사용 사례: 실패 점검. 매일 밤 각 브랜드에 대해 filters={"status":["FAILED"]}로 조회하고 반환된 행에 대한 알림을 보냅니다. connectedChannels[].error는 어떤 플랫폼이 거부했는지와 그 이유를 알려 주며, 인증 만료를 보고하는 채널에는 재시도가 아니라 새로운 연결 링크가 필요합니다.

참고 사항.

  • socialPostId는 get, insights 및 cancel에서 허용하는 일반 UUID입니다.
  • 필터는 별도의 매개변수가 아니라 filters 쿼리 매개변수에 JSON으로 인코딩된 하나의 문자열로 전달됩니다. 이 문자열을 URL 인코딩합니다.
  • 페이지네이션은 오프셋 기반(page / size)이며, pageInfo.total은 이 페이지의 크기가 아니라 조건에 일치하는 게시물의 총수입니다. totalPublishedPosts와 totalEngagementPosts는 브랜드 전체의 집계 값으로, 대시보드 타일에 유용합니다.
  • 행에는 게시물 수준의 상태만 포함됩니다. 확정된 게시 일정 시점과 채널별 결과를 확인하려면 GET /social/posts/{postId}로 게시물을 엽니다.
  • startDate와 endDate는 게시물의 게시 일정을 기준으로 필터링하며, scheduleDate / scheduleTime과 동일하게 브랜드의 시간대를 기준으로 해석됩니다.
  • publishedOn은 하나 이상의 채널에서 게시가 완료될 때까지 null입니다. 모든 채널에서 게시에 실패한 게시물은 publishedOn: null을 유지하고 status도 FAILED로 유지합니다.
  • approvalState, approver, actionOn 및 actionBy는 게시물 승인 워크플로를 사용하는 계정에 대해서만 채워지며, 그렇지 않으면 null로 유지됩니다.
  • 게시물 본문을 표시할 때만 fetchPostContent=true를 설정합니다. 캘린더에는 더 가벼운 기본 설정으로 충분합니다.
Request
curl -X GET 'https://listingsapi.com/api/v4/social/brands/<brandId>/posts' \  -H "Authorization: API $LISTINGSAPI_KEY"