/api/v4/social/posts/{postId}소셜 게시물 조회
소셜 게시물 1개의 콘텐츠, 예약 일정, 채널별 실시간 게시 상태, 링크 및 오류를 반환합니다.
매개변수
경로
| 이름 | 유형 | 필수 | 설명 |
|---|---|---|---|
| postId | string | 필수 | Post UUID, the `socialPostId` returned by POST /social/posts or the `socialPostId` of a row from the brand's post list. |
응답
200The post, with per-channel publish state in `connectedChannels`.
{ "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.
UUID로 게시물 1개를 조회하며, 작성된 콘텐츠, 최종 확정된 예약 일정, 각 대상 채널에서 실제로 일어난 일을 설명하는 채널별 항목을 함께 가져옵니다. 게시물을 생성한 후 폴링하는 엔드포인트입니다.
사용 사례: 게시 후 검증. 게시는 비동기 방식으로 진행되므로 POST /social/posts는 게시물이 접수되었다는 사실만 알려 줍니다. 반환된 socialPostId로 이 엔드포인트를 폴링하고 connectedChannels[]를 확인합니다. status: "SUCCESS"이면서 liveLink가 있으면 해당 채널에 게시된 상태를 의미하고, status: "ERROR"이면서 error가 설정되어 있으면 게시되지 않은 상태와 그 이유를 나타냅니다. SCHEDULED 상태인 채널이 더 이상 없으면 폴링을 중지합니다.
사용 사례: 고객에게 게시물이 게시된 곳 표시. 사용자가 플랫폼에서 게시된 게시물을 직접 열 수 있도록 각 connectedChannels[].liveLink를 외부 링크로 표시하고, 게시물 전체를 하나의 실패 상태로 표시하는 대신 실패한 채널에 error를 인라인으로 표시합니다.
상태 필드 해석
상태는 2가지 수준으로 나뉘며, 각각 서로 다른 질문에 답합니다.
게시물 전체는 PUBLISHED 상태로 표시되더라도 한 채널은 ERROR 상태일 수 있습니다. 항상 connectedChannels[]를 기준으로 표시합니다. 게시물 수준의 status는 요약입니다.
참고 사항.
globalPostSchedule은 UTC로 확정된 게시 시점입니다.scheduleDate+scheduleTime으로 예약했다면, 이 값은 브랜드의 시간대를 기준으로 두 값을 변환한 결과이므로 시간대가 예상한 대로 적용되었는지 확인하는 데 유용합니다.error는 고객에게 표시해도 안전하며 사람이 이해하기 쉬운 메시지이고,reason은 해당 메시지에 대응하는 더 짧은 내부 레이블입니다. 어느 쪽에도 플랫폼 토큰이나 추적 ID가 포함되지 않습니다.connectedChannels[].id는 브랜드의 연결 목록에 있는 연결 UUID이며, insights에서socialConnectedChannelId로 요구하는 값입니다.archived: true로 표시되는 채널은 게시물이 생성된 후 연결이 해제된 채널입니다. 해당 채널에는 게시되지 않습니다. 연결 해제를 참조하세요.- 권한 부여가 만료된 후
ERROR상태에 머물러 있는 채널에는 게시물 재시도가 아닌 새로운 연결 링크가 필요합니다. - 전달 상태 대신 참여 수치를 확인하려면
GET /social/posts/{postId}/insights를 호출합니다. - 게시물 1개를 조회하는 대신 브랜드의 게시물 목록을 조회하려면
GET /social/brands/{brandId}/posts를 사용합니다.
curl -X GET 'https://listingsapi.com/api/v4/social/posts/<postId>' \ -H "Authorization: API $LISTINGSAPI_KEY"