Flux de travail
Fonctions utilitaires composites qui exécutent plusieurs appels au SDK et renvoient un résultat combiné via client.workflows.
Toutes les méthodes de flux de travail se trouvent sous client.workflows. Chacune remplace une séquence d'appels SDK ordinaires que vous devriez autrement écrire vous-même et renvoie un résultat combiné assemblé côté client. Aucun flux de travail ne correspond à un seul endpoint REST ; les clés du résultat sont donc des noms propres au SDK, et non des noms de champs transmis dans une réponse REST.
Comme un flux de travail effectue plusieurs appels, la clé API utilisée pour l'exécuter doit donner accès à toutes les ressources qu'il utilise, et chaque requête sous-jacente est comptabilisée dans votre limite de débit. Les méthodes prennent un location_id, qui accepte les identifiants numériques ou encodés en base64 ; consultez Identifiants des établissements.
workflows.auto_reply_to_reviews
Répondez aux avis d'un établissement à partir d'un modèle, en un seul appel. Utilisez cette méthode pour maintenir un taux de réponse élevé aux avis positifs pendant que vous traitez les autres manuellement.
client.workflows.auto_reply_to_reviews( location_id: str | int, *, template: str = "Thank you for your feedback!", min_rating: int = 4, only_unanswered: bool = True, dry_run: bool = False,) -> list[dict[str, Any]]Cette méthode remplace les appels à reviews.list paginés avec auto_paging_iter(), suivis d'un appel à reviews.respond pour chaque avis qui satisfait aux deux filtres.
# See what would be sent, without postingplan = client.workflows.auto_reply_to_reviews( 16808, template="Thanks for the {rating}-star review!", min_rating=4, dry_run=True,)for entry in plan: print(entry["id"], entry["rating"], entry["status"]) # Then post for realresults = client.workflows.auto_reply_to_reviews(16808, min_rating=4)print(f"Replied to {len(results)} reviews")Renvoie une simple liste de dictionnaires, un par avis traité, chacun contenant id, rating, reply et status. Exécutez d'abord la méthode avec dry_run=True : les entrées renvoyées ont status défini sur dry_run, ce qui vous permet de vérifier la sélection avant la publication de toute réponse.
workflows.listings_health_audit
Obtenez une vue d'ensemble des fiches d'un établissement en un seul appel : fiches premium, fiches vocales, doublons et score. Utilisez cette méthode pour afficher un panneau d'état par établissement au lieu d'effectuer trois appels distincts.
client.workflows.listings_health_audit(location_id: str | int) -> APIObjectCette méthode remplace listings.premium, listings.voice et listings.duplicates pour le même établissement, avec un décompte des résultats premium par syncStatus.
audit = client.workflows.listings_health_audit(16808)print(f"Health score: {audit.health_score}%")print(f"Synced: {audit.synced_count} of {len(audit.premium)}")print(f"Duplicates found: {len(audit.duplicates)}")for issue in audit.issues: print(issue.get("site"), issue.get("syncStatus"))Renvoie un APIObject contenant location_id, premium, voice, duplicates, synced_count, issue_count, issues et health_score. health_score est la proportion de fiches premium dont syncStatus vaut SYNCED, exprimée en pourcentage entier, et vaut 0 en l'absence de fiches premium. issues contient les fiches premium dont syncStatus ne vaut pas SYNCED et n'est pas absent.
workflows.weekly_reputation_report
Récupérez les avis, les analyses des avis, les analyses des profils et l'état de synchronisation des fiches d'un établissement sur une période donnée. Utilisez cette méthode pour un rapport récurrent plutôt que pour un tableau de bord en temps réel, car elle effectue cinq appels.
client.workflows.weekly_reputation_report( location_id: str | int, *, start_date: str | None = None, end_date: str | None = None,) -> APIObjectstart_date et end_date sont des chaînes au format YYYY-MM-DD, toutes deux facultatives. Cette méthode remplace reviews.analytics.overview, reviews.list avec first=50, analytics.google, analytics.bing et listings.premium, en transmettant la période à chaque appel qui l'accepte.
report = client.workflows.weekly_reputation_report( 16808, start_date="2026-09-01", end_date="2026-09-07",)print(report.review_summary.get("averageRating"))print(report.analytics.get("google", {}).get("views"))print(report.listings_health.get("sync_rate"))Renvoie un APIObject contenant location_id, review_summary (la synthèse des analyses des avis), recent_reviews (jusqu'à 50 avis sur la période), analytics (un dictionnaire contenant google et bing) et listings_health (un dictionnaire contenant total, synced et sync_rate). sync_rate est une chaîne formatée en pourcentage et vaut N/A lorsque l'établissement n'a aucune fiche premium.
Voir aussi
- Avis : les appels de récupération des avis, de réponse et d'analyse effectués par ces flux de travail
- Fiches : les appels relatifs aux fiches premium, aux fiches vocales et aux doublons
- Analyses : les indicateurs des profils Google et Bing
- Répondre aux avis : les règles de réponse et les limites par site
- Analyses des avis : la signification des chiffres de la synthèse et de la chronologie
- Rechercher et corriger les erreurs des fiches : comment utiliser la liste
issues