GET/api/v4/posts/{postId}

Obtenir une publication

Renvoie une campagne de publication sur les réseaux sociaux avec son contenu, son statut de publication par site et ses statistiques d’engagement.

Nécessite une clé API. Consultez Authentification pour le format de l’en-tête et la rotation des clés.

Paramètres

Chemin

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

Réponses

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.

Récupère une campagne de publication à partir de son ID, y compris le message et le CTA par site, les médias joints, le statut de publication en temps réel sur chaque site (publishDetails) et l’engagement ventilé à la fois par site (socialPostAnalyticsBySite) et par établissement (socialPostAnalyticsByLocationId).

Cas d’utilisation : vérification après publication. Juste après avoir créé une annonce avec POST /posts, récupérez la valeur socialPost.id renvoyée et interrogez régulièrement GET /posts/{postId} jusqu’à ce que socialPostInfo.status passe de INPROGRESS à SUCCESS. Si la publication échoue sur un site, publishDetails[].submissionError en indique la raison et publishDetails[].status affiche ERROR.

Cas d’utilisation : tableau de bord de l’engagement. Pour une publication concernant un seul établissement, lisez socialPostAnalyticsBySite pour afficher une comparaison des vues et des clics entre Google et Facebook sans récupérer à nouveau la liste complète des publications de l’établissement.

Remarques.

  • postId est l’ID encodé en Base64 présenté sous la forme id dans la liste des publications ou sous la forme socialPost.id dans la réponse à la création, et non un entier brut.
  • Pour récupérer une campagne concernant plusieurs établissements (en masse), utilisez GET /bulk-posts/{postId}, qui renvoie la même structure avec publishedLocationsCount > 1.

Cet exemple est construit à partir du schéma de l’API. Le compte réel servant à initialiser les données (Jenny Home) ne contient aucune publication, il n’y avait donc aucun ID de publication réel à récupérer ; un ID inconnu ou invalide entraîne le renvoi de {"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"