Verify Service Configuration
Last updated
Last updated
To be able to send 2FA codes using SMS with Twilio, it’s necessary to configure the verify service at this URL: https://www.twilio.com/console/verify/services.
You need to create a new service, assign a name, and be sure that the SMS delivery channel is active (it’s recommended to deactivate other channels that you’re not going to use).
Save the Service SID and you’re ready to continue.
Now, go to your console at https://www.twilio.com/console, copy the Account SID and the Auth Token, and paste them into the .env.development
file in your API project as shown below:
And you’re ready to go! Your API can now do 2FA with Twilio's Verify Service.
You should only allow code messaging to countries you are planning to support. For that, you can go to https://console.twilio.com/us1/develop/verify/geopermissions, or change the setting on Twilio's dashboard > Verify tab > Geo Permissions tab.
And change the validCountryCodes.ts
file's array in Linker's API:
Also, change the validCountryCodes.ts
file's array:
If you're not planning to use another channel than SMS, you should disable all other channels in Twilio at https://www.twilio.com/console/verify/services/. Select the service we just created, and turn off the switches that are not needed.
Also, you need to only allow the API to use the SMS channel in the send-code.dto.ts
file:
By default, there is a rate limit bucket configured with a maximum of 4 requests in an interval of 60 seconds by the user's IP address. You can change that in the twilio.service.ts
file:
If you want to learn more about protecting the verify service, click here.