One-time code verification across every channel

The scenario accepts requests from any channel, sends a one-time code by email via Gmail, verifies it and links all of a person's channels into a single profile in Postgres.

  • One profile per person instead of a list per channel
  • Codes stored and checked in Postgres, with expiry
  • Resend the code if the email didn't arrive
  • Already-verified channels skip straight through
Webhook