Precondition
*We need the API Key* and each workspace needs a webhook.
Relevance
💍 It is necessary
🕹️ It would be good for v1, because allow check/audit in case of problems.
🪆It is not necessary, but it would be good to prevent support and save time.
🔮 Maybe not necessary
Version 1: Manual Creation and Monitoring
- A: Manual Creation (Add a steps in the workspace creation for CsOps)💍
- The Apploi user [with this permission] needs to go [to this url] and set the
https://ats-integrations.apploi.com/v1/pandadoc/webhook
- The expected configuration is
- B: Monitoring the configuration 🕹️
- B1. Create tables to store Information about webhook (1 Card) - SP Pillar
- Goal: We need to create a new table to store information about subscriptions and get the url, status, etc.
- Mock Table -
team_webhook_suscription
- Reason: Should be good to store information about the URL used and the status of the webhook to later validate or detect any change
- B2. Create a process to sync the webhook information for a team in background (1 Card) - SP Pillar
- Goal: Try to keep the information updated, this is something that we can run when we need.
- Reason: Identify if something changes, more related to the status.
- Question: Should we store the django user that makes the action?
- Question: Do we want to emit a segment event?
- B3 ← B1: Report Pillar (1 Card)
- Replicate the table
- Create a PD alert in base on the URL and the status.
Version 2: Automatic Sync and Automatic creation
- B: Monitoring the configuration 🪆
- B4. Create a process to Sync all teams in background. (1 Card) - SP Pillar
- Question: Does this type of request should affect the rate-limit?
- C. Automatic Creation 🪆
- Reason: Prevent to CsOps make this manually.
- Goal: when we set or update the API KEY check if exists a webhook information
- Actions:
- If the workspace does not have a webhook, create the records in the base of point A. (1 Card) - SP Pillar
- If the workspace has a webhook: we need to check by uuid and sync the information. (put the information relative to the workspace) (1 Card) - SP Pillar
Version 3: Only if we need
- D: Update Shared Key🔮
- This is more about a security police
- E: Allow Update 🔮
- F: Allow Delete 🔮