zitadel/internal/api/grpc
Livio Spring 14e2aba1bc
feat: Add Twilio Verification Service (#8678)
# Which Problems Are Solved
Twilio supports a robust, multi-channel verification service that
notably supports multi-region SMS sender numbers required for our use
case. Currently, Zitadel does much of the work of the Twilio Verify (eg.
localization, code generation, messaging) but doesn't support the pool
of sender numbers that Twilio Verify does.

# How the Problems Are Solved
To support this API, we need to be able to store the Twilio Service ID
and send that in a verification request where appropriate: phone number
verification and SMS 2FA code paths.

This PR does the following: 
- Adds the ability to use Twilio Verify of standard messaging through
Twilio
- Adds support for international numbers and more reliable verification
messages sent from multiple numbers
- Adds a new Twilio configuration option to support Twilio Verify in the
admin console
- Sends verification SMS messages through Twilio Verify
- Implements Twilio Verification Checks for codes generated through the
same

# Additional Changes

# Additional Context
- base was implemented by @zhirschtritt in
https://github.com/zitadel/zitadel/pull/8268 ❤️
- closes https://github.com/zitadel/zitadel/issues/8581

---------

Co-authored-by: Zachary Hirschtritt <zachary.hirschtritt@klaviyo.com>
Co-authored-by: Joey Biscoglia <joey.biscoglia@klaviyo.com>
2024-09-26 09:14:33 +02:00
..
action feat(v3alpha): write actions (#8225) 2024-07-31 14:42:12 +02:00
admin feat: Add Twilio Verification Service (#8678) 2024-09-26 09:14:33 +02:00
auth fix: user grants deactivation (#8634) 2024-09-17 12:18:29 +00:00
authn chore(v2): move to new org (#3499) 2022-04-26 23:01:45 +00:00
change refactor(fmt): run gci on complete project (#7557) 2024-04-03 10:43:43 +00:00
client/middleware refactor(fmt): run gci on complete project (#7557) 2024-04-03 10:43:43 +00:00
event refactor: rename package errors to zerrors (#7039) 2023-12-08 15:30:55 +01:00
feature chore(tests): use a coverage server binary (#8407) 2024-09-06 14:47:57 +02:00
gerrors fix: exclude db connection error details (#7785) 2024-04-23 08:35:25 +00:00
idp chore(tests): use a coverage server binary (#8407) 2024-09-06 14:47:57 +02:00
instance feat: trusted (instance) domains (#8369) 2024-07-31 18:00:38 +03:00
management feat: invite user link (#8578) 2024-09-11 10:53:55 +00:00
member refactor: cleanup unused code (#7130) 2024-01-02 14:26:31 +00:00
metadata fix(api): correct mapping of metadata queries (#7609) 2024-03-21 14:56:58 +00:00
object feat: api v2beta to api v2 (#8283) 2024-07-26 22:39:55 +02:00
oidc chore(tests): use a coverage server binary (#8407) 2024-09-06 14:47:57 +02:00
org chore(tests): use a coverage server binary (#8407) 2024-09-06 14:47:57 +02:00
policy feat(cnsl): docs link can be customized and custom button is available (#7840) 2024-05-13 16:01:50 +02:00
project feat(oidc): token exchange impersonation (#7516) 2024-03-20 10:18:46 +00:00
resources feat: user v3 contact email and phone (#8644) 2024-09-25 13:31:31 +00:00
server chore(tests): use a coverage server binary (#8407) 2024-09-06 14:47:57 +02:00
session chore(tests): use a coverage server binary (#8407) 2024-09-06 14:47:57 +02:00
settings fix: add apple as identity provider type to settings v2 api (#8472) 2024-09-11 14:26:28 +00:00
system feat(storage): generic cache interface (#8628) 2024-09-25 21:40:21 +02:00
text fix: automatically link user without prompt (#8487) 2024-08-28 05:33:20 +00:00
user fix: user grants deactivation (#8634) 2024-09-17 12:18:29 +00:00
config.go remove pointers on configs 2020-03-27 13:57:16 +01:00
fields.go chore(tests): use a coverage server binary (#8407) 2024-09-06 14:47:57 +02:00
header_test.go remove negated integration tags 2023-04-26 19:55:13 +03:00
header.go chore(v2): move to new org (#3499) 2022-04-26 23:01:45 +00:00
probes_test.go add server reflection to Probes list 2023-05-07 16:47:43 +02:00
probes.go add server reflection to Probes list 2023-05-07 16:47:43 +02:00