gristlabs_grist-core/test/server
Jarosław Sadziński 629fcccd5a (core) Adding /webhooks endpoint
Summary:
- New /webhooks event that lists all webhooks in a document (available for owners),
- Monitoring webhooks usage and saving it in memory or Redis,
- Loosening _usubscribe API endpoint, so that the information returned from the /webhook endpoint is enough to unsubscribe,
- Owners can remove webhook without the unsubscribe key.

The endpoint lists all webhooks that are registered in a document, not just webhooks from a single table.
There are two status fields. First for the webhook, second for the last request attempt.
Webhook can have 5 statuses: 'idle', 'sending', 'retrying', 'postponed', 'error', which roughly describes what the
sendLoop is currently doing. The 'error' status describes a situation when all request attempts failed and the queue needs
to be drained, so some requests were dropped.

The last request status can only be: 'success', 'failure' or 'rejected'. Rejected means that the last batch was dropped because the
queue was too long.

Test Plan: New and updated tests

Reviewers: paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D3727
2022-12-13 22:46:40 +01:00
..
lib (core) Adding /webhooks endpoint 2022-12-13 22:46:40 +01:00
Comm.ts (core) Faster builds all around. 2022-07-04 10:42:40 -04:00
customUtil.ts (core) Fix nbrowser/CopyPaste test on Mac 2022-07-29 14:08:29 +02:00
docTools.ts (core) add a yarn run cli tool, and add a sqlite gristify option 2022-07-14 12:00:30 -04:00
gristClient.ts (core) Faster builds all around. 2022-07-04 10:42:40 -04:00
testUtils.ts (core) Faster builds all around. 2022-07-04 10:42:40 -04:00
wait.ts (core) Moving nbrowser tests to grist-core 2022-10-25 17:22:54 +02:00