GET
/api/v4/posts/{postId}获取帖子
返回单个社交帖子营销活动,包括其内容、各站点的发布状态和互动分析数据。
参数
路径
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| postId | string | 必填 | Base64-encoded social post ID (e.g. from the `id` field of a posts list, or the `socialPost.id` returned by POST /posts). |
响应
200The post's content, publish details, and analytics.
{ "data": { "socialPostView": { "socialPostId": "U29jaWFsUG9zdDo0NDEyMg==", "socialPostInfo": { "id": "U29jaWFsUG9zdDo0NDEyMg==", "name": "Summer Hours Update", "status": "SUCCESS", "type": "ANNOUNCEMENT", "createdAt": "2026-06-28", "scheduledStartDate": "2026-06-28", "scheduledEndDate": "2026-07-28", "views": 128, "clicks": 14, "shares": 0, "reactions": 3, "comments": 1, "sites": ["GOOGLE"], "message": [ { "site": "GOOGLE", "message": "We have extended our summer hours! Open until 9pm on weekdays." } ], "cta": [ { "type": { "value": "LEARN_MORE", "label": "Learn more" }, "url": "https://jennyhome.example/hours", "site": "GOOGLE", "tinyUrl": "https://tiny.cc/jh-hours" } ], "contextInfo": null, "mediaUrl": [ { "url": "https://cdn.listingsapi.com/posts/44122/summer.jpg", "site": "GOOGLE", "type": "IMAGE" } ], "publishDetails": [ { "site": "GOOGLE", "status": "PUBLISHED", "createdDate": "2026-06-28", "publishedDate": "2026-06-28", "submissionError": null } ], "postLinks": [ { "site": "GOOGLE", "link": "https://www.google.com/maps/place/?post=44122" } ], "locationIds": [1800289] }, "publishedLocationsCount": 1, "socialPostAnalyticsBySite": [ { "site": "GOOGLE", "views": 128, "clicks": 14, "reactions": 3, "shares": 0, "comments": 1 } ], "socialPostAnalyticsByLocationId": [ { "locationId": 1800289, "siteStats": [ { "site": "GOOGLE", "status": "PUBLISHED", "views": 128, "clicks": 14, "reactions": 3, "shares": 0, "comments": 1 } ] } ] } }}401Unauthenticated, missing or invalid API key.
通过 ID 获取一个帖子营销活动,包括各站点的消息和 CTA、附加的媒体、各站点的实时发布状态(publishDetails),以及分别按站点(socialPostAnalyticsBySite)和按地点(socialPostAnalyticsByLocationId)细分的互动数据。
使用场景:发布后验证。 使用 POST /posts 创建公告后,立即使用返回的 socialPost.id 轮询 GET /posts/{postId},直到 socialPostInfo.status 从 INPROGRESS 变为 SUCCESS。如果某个站点发布失败,publishDetails[].submissionError 会包含失败原因,publishDetails[].status 则会显示 ERROR。
使用场景:互动数据控制台。 对于单个地点的帖子,读取 socialPostAnalyticsBySite 即可展示 Google 与 Facebook 的浏览量和点击量对比,无需重新获取整个地点的列表。
注意事项。
postId是经过 Base64 编码的 ID,在帖子列表 中以id返回,在创建响应中以socialPost.id返回,而不是原始整数。- 要获取多地点(批量)营销活动,请使用
GET /bulk-posts/{postId},它返回相同的数据结构,其中包含publishedLocationsCount > 1。
此示例根据 API schema 构建。线上的示例账户(Jenny Home)没有帖子,因此没有可获取的真实帖子 ID;未知或无效的 ID 会返回 {"data":null,"errors":[{"message":"An error occurred processing your request."}]}。
Request
curl -X GET 'https://listingsapi.com/api/v4/posts/<postId>' \ -H "Authorization: API $LISTINGSAPI_KEY"