Fonctionnalités
Signalements des agents
Les agents et les apps peuvent signaler une attente que leur utilisateur vient de vivre. Les signalements couvrent des lieux sans attente publiée en direct, sont toujours marqués comme signalés et ne sont jamais acceptés pour les urgences ni les soins urgents.
De quoi il s’agit
POST /v1/places/{id}/reports et l’outil report_wait enregistrent une attente que quelqu’un a vraiment vécue. Les signalements restent séparés des attentes publiées : ils ont leur propre niveau, agent, et ne sont jamais mêlés à un chiffre officiel ou publié par le lieu.
Comment signaler
Envoyez les minutes d’attente de l’utilisateur, juste après la visite. Un signalement demande une clé d’API et compte comme un appel.
wait_min: minutes, de 0 à 600. Obligatoire.observed_at: quand l’utilisateur a attendu, en ISO 8601 avec décalage, dans les 2 dernières heures. Par défaut : maintenant.kind:in_lines’il est encore dans la file (l’attente jusqu’ici), oudonepour toute l’attente, qui vient de se terminer.
curl -X POST "https://api.waity.ai/v1/places/pl_nvk0wkb3ps/reports" \
-H "X-Api-Key: $WAITY_API_KEY" \
-H "Content-Type: application/json" \
-d '{"wait_min":25,"kind":"done"}'
Un signalement enregistré répond 201 avec son report.id et shown. S’il n’est pas affiché, reason dit pourquoi : needs_more_reports, official_wait, closed, too_old ou out_of_range.
L’outil MCP
report_wait prend les mêmes champs plus l’id du lieu. C’est le seul outil MCP qui écrit : ses annotations indiquent donc qu’il n’est pas en lecture seule.
Quand les signalements s’affichent
- Seulement quand le lieu n’a aucune attente officielle ou publiée par le lieu utilisable, et qu’il n’est pas fermé. Une attente publiée en direct l’emporte toujours ; le signalement reste dans l’historique.
- Seulement quand au moins 2 personnes différentes ont signalé ou confirmé dans les 45 dernières minutes, ou une personne de confiance (d'autres ont confirmé ses signalements précédents).
- L’attente affichée est la médiane du dernier signalement de chaque personne. Elle disparaît quand il reste moins de 2 personnes dans la fenêtre.
Comment ils sont marqués
Une attente signalée a now.tier: "agent", now.basis: "reported" et now.source.name: "people", avec son propre now.source.short. Son résumé dit qu’elle a été signalée par des personnes (« reported by 2 people ») et que le lieu ne l’a pas publiée.
Les minutes signalées ne sont jamais comparées aux minutes publiées : une liste qui contient les deux le dit, et instead ne propose jamais l’une comme plus courte que l’autre.
Jamais pour les urgences ni les soins urgents
Un signalement y est refusé avec 422 reports_not_accepted, et rien n’est enregistré.
Limites et vie privée
- Les appels sans clé reçoivent
401 key_required; ils ne sont pas comptés. - Un signalement par auteur et par lieu toutes les 30 minutes (
429 report_too_soon, avec Retry-After). - 200 signalements par auteur et par jour (
429 report_limit, jusqu’à minuit UTC). - Seul l’identifiant de la clé est enregistré avec un signalement. N’envoyez ni nom, ni numéro de téléphone, ni autre donnée personnelle.
Les partenaires de signalement, comme un service par SMS qui signale pour de nombreuses personnes avec une seule clé, peuvent envoyer reporter : un hachage stable à sens unique de chaque personne, jamais un numéro de téléphone ou un e-mail en clair. Waity configure les clés partenaires ; le reporter de toute autre clé est ignoré.
Dans l’historique
Les signalements figurent dans l’historique avec tier=agent : chaque signalement en raw, et des chiffres par heure ou par jour calculés comme pour les attentes publiées.
Voir aussi
Lire une réponse explique chaque champ de now, et chaque champ de la route de signalement figure dans la Référence de l’API.