webhook-daily-summariesはどんな場合に送信されるか
カテゴリ: POS
店舗ごと、もしくは契約IDのすべての店舗で締め処理が完了したタイミングでデータを取得したいです。
webhookが送信されるactionは
- executed: 締め実施
- edited: 更新
- canceled: 締め解除
- bulk-update: 一括更新
とありますが
- sumDate
- storeId
- cashDrawerId
がキー値とあることから
- あるレジ端末で締め実施されたとき
- レジが未登録の場合にある店舗で締めが実施されたとき
- 店舗を超えて一括で締めが登録されたとき
と推測しています。
これら以外のパターンがありますか?
答え
@tohrukobayashi
Webhookはスマレジ・アプリ / スマレジ管理画面の機能追加によって今後追加されたり削除されたりします。
なので、明確にこのパターンで通知するということは断言出来ません。
機能的にはおっしゃるとおりでございますが、今後もそのイベントで発火されるとは限りません。
具体的なアクションを知りたい場合は
https://webhook.site/
などを利用して確認をしていただきたいと思います。
以下、個人の意見ではございますが、
Webhookは特定のドメインに関わるところで発火されるべきなので、管理画面の機能とは切り分けて考慮すべきかと思っております。
ユーザーの管理画面の操作フローなどを想定して実装するよりも、データフローを想定して実装したほうがいいかもしれません。
なにか疑問点ありましたらコメントしていただければと思います。
頂いたコメントを見る限り、Webhookは変更される可能性があるからWebhookを利用したアプリは作成すべきではない、と言及されているように見えます。これは他のAPIについても同様で、ある時点で提供された機能は変更される可能性があるのアプリを作成すべきではないと言及しているに等しいと考えます。また本体の機能変更に応じて公開されているWebhookやAPIが変更されるのであれば、WebhookやAPIはバージョン管理されるべきものです(たとえばhttps://developers.facebook.com/docs/graph-api/changelog など)。
これを踏まえた上で質問しますが、Webhookは開発者が安全に利用可能なものですか?
@tohrukobayashi
APIに関してはおっしゃるとおり、バージョンを区切って管理していく方針です。
大規模な改修などについては広く通知して変更をする予定となっておりますし、これまでそのような変更はしておりません。
しかし、WebhookについてはAPIとは別の機能です。
頂いたURLもAPIの記載のみかと思います。
発火イベントはバージョン毎に管理できるものではないということをご了承いただければと思います。(イベントそのものについてはデベロッパーズサイトのWebhook設定ページにて記載しております。また、一度追加したあと、変更 / 削除もしておりません。)
ただし、アプリ / 管理画面のイベント一覧がほしいという要望があることは承知しましたので、持ち帰らせていただきます。
その他、ご意見などございましたら、コメントしてくださいませ。
よろしくお願いいたします。
いまのところ、Webhookの発火イベントは追加のみで変更削除はされていない点は承知しました。