기능
에이전트 보고
에이전트와 앱은 사용자가 방금 겪은 대기 시간을 보고할 수 있습니다. 보고는 실시간 게시 대기 시간이 없는 장소를 채우고, 항상 보고된 값으로 표시되며, 응급실과 긴급 진료소에는 받지 않습니다.
무엇인가요
POST /v1/places/{id}/reports와 report_wait 도구는 누군가 실제로 겪은 대기 시간을 저장합니다. 보고는 게시된 대기 시간과 따로 보관됩니다. 고유한 등급 agent를 가지며, 공식 수치나 장소가 게시한 수치와 섞이지 않습니다.
보고하는 방법
방문 직후 사용자가 기다린 분을 보내세요. 보고에는 API 키가 필요하며 호출 1회로 계산됩니다.
wait_min: 분, 0~600. 필수.observed_at: 사용자가 기다린 시각, 오프셋이 있는 ISO 8601, 최근 2시간 이내. 기본값은 지금.kind: 아직 줄에 있을 때는in_line(지금까지의 대기), 방금 끝난 전체 대기는done.
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"}'
저장된 보고는 201과 함께 report.id와 shown을 반환합니다. 표시되지 않으면 reason이 이유를 알려 줍니다: needs_more_reports, official_wait, closed, too_old 또는 out_of_range.
MCP 도구
report_wait은 같은 필드와 장소의 id를 받습니다. 쓰기를 하는 유일한 MCP 도구이므로 주석에 읽기 전용이 아니라고 표시됩니다.
보고가 표시되는 경우
- 장소에 쓸 수 있는 공식 또는 장소 게시 대기 시간이 없고 문을 닫지 않았을 때만입니다. 실시간 게시 대기 시간이 항상 우선하며, 보고는 기록에 남습니다.
- 최근 45분 안에 서로 다른 사람 2명 이상이 보고하거나 확인했을 때, 또는 신뢰할 수 있는 보고자(이전 보고를 다른 사람들이 확인한 사람)가 보고했을 때만입니다.
- 표시되는 대기 시간은 각 사람의 최신 보고의 중앙값입니다. 기간 안의 사람이 2명 미만이 되면 표시되지 않습니다.
표시 방식
보고된 대기 시간에는 now.tier: "agent", now.basis: "reported", now.source.name: "people"가 있고 고유한 now.source.short가 붙습니다. 요약에는 사람들이 보고했으며("reported by 2 people") 장소가 게시한 값이 아니라고 나옵니다.
보고된 분은 게시된 분과 비교하지 않습니다. 둘 다 있는 목록은 그렇게 알리며, instead는 한쪽을 다른 쪽보다 짧다고 제시하지 않습니다.
응급실과 긴급 진료소는 제외
그곳에 대한 보고는 422 reports_not_accepted로 거부되며 아무것도 저장되지 않습니다.
제한과 개인정보
- 키 없는 호출은
401 key_required를 받으며 계산되지 않습니다. - 보고자별·장소별 30분마다 1건(
429 report_too_soon, Retry-After 포함). - 보고자별 하루 200건(
429 report_limit, UTC 자정까지). - 보고와 함께 저장되는 것은 키 ID뿐입니다. 이름, 전화번호 등 개인정보는 보내지 마세요.
하나의 키로 여러 사람의 보고를 보내는 문자 서비스 같은 보고 파트너는 reporter를 보낼 수 있습니다. 각 사람의 안정적인 단방향 해시이며, 전화번호나 이메일 원본은 절대 보내지 않습니다. 파트너 키는 Waity가 설정하며, 다른 키의 reporter는 무시됩니다.
기록에서
보고는 tier=agent로 기록에 들어갑니다. raw에서는 보고마다, 시간별·일별 수치는 게시된 대기 시간과 같은 방식으로 만듭니다.