GET/api/v4/posts/{postId}

Mengambil postingan

Mengembalikan satu kampanye postingan media sosial beserta kontennya, status publikasi per situs, dan analitik interaksi.

Memerlukan kunci API. Lihat Autentikasi untuk format header dan rotasi kunci.

Parameter

Path

NamaTipeWajibDeskripsi
postIdstringwajibBase64-encoded social post ID (e.g. from the `id` field of a posts list, or the `socialPost.id` returned by POST /posts).

Respons

200The post's content, publish details, and analytics.
Response
{  "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.

Mengambil satu kampanye postingan berdasarkan ID-nya, termasuk pesan dan CTA per situs, media yang dilampirkan, status publikasi terkini di setiap situs (publishDetails), serta rincian interaksi menurut situs (socialPostAnalyticsBySite) dan menurut lokasi (socialPostAnalyticsByLocationId).

Kasus penggunaan: verifikasi setelah publikasi. Segera setelah membuat pengumuman dengan POST /posts, ambil socialPost.id yang dikembalikan dan periksa GET /posts/{postId} secara berkala hingga socialPostInfo.status berubah dari INPROGRESS menjadi SUCCESS. Jika publikasi di suatu situs gagal, publishDetails[].submissionError memuat alasannya dan publishDetails[].status menampilkan ERROR.

Kasus penggunaan: dasbor interaksi. Untuk postingan satu lokasi, baca socialPostAnalyticsBySite untuk menampilkan perbandingan jumlah tayangan dan klik antara Google dan Facebook tanpa mengambil ulang daftar untuk seluruh lokasi.

Catatan.

  • postId adalah ID yang dikodekan dalam Base64 dan ditampilkan sebagai id dalam daftar postingan atau sebagai socialPost.id dalam respons pembuatan, bukan bilangan bulat mentah.
  • Untuk mengambil kampanye multilokasi (massal), gunakan GET /bulk-posts/{postId}, yang mengembalikan struktur yang sama dengan publishedLocationsCount > 1.

Contoh ini dibuat berdasarkan skema API. Akun awal di lingkungan aktif (Jenny Home) tidak memiliki postingan, sehingga tidak ada ID postingan nyata yang dapat digunakan untuk mengambil postingan; ID yang tidak dikenal atau tidak valid menghasilkan {"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"