This repository contains follow-along steps and resources for the "Twilio Forge: Access Granted" workshop, focused on building a phone verification onboarding flow using Twilio Lookup and Verify APIs. It is designed to help you learn how to validate phone numbers, send verification codes, and create a complete user verification experience.
The RUNBOOK.md provides a step-by-step guide to:
- Setting up your Twilio account with API keys and Verify service
- Using Twilio Lookup API to validate phone numbers
- Implementing Line Type Intelligence and SMS Pumping Risk checks
- Sending verification codes via SMS and voice using Twilio Verify API
- Building a complete phone verification flow with a user-friendly UI
- Testing your implementation with Postman
Read the RUNBOOK.md for detailed instructions and workshop steps.
Tip
The workshop uses a scaffolded Express.js application. You'll implement the Twilio API calls in build/lookup.js and build/verify.js. If you get stuck, check the ./final/ directory for the complete implementation.
Import these files into Postman to easily follow and test the API requests described in the Runbook.
This repository is structured for hands-on learning:
./build/directory: Contains scaffolded files (lookup.js,verify.js) where you'll implement the Twilio API calls./build/public/directory: Pre-built UI for testing your implementation./final/directory: Contains the complete, working implementation for reference
Tip
This project uses npm workspaces for easier dependency management. Running npm install in the root directory will automatically install dependencies for both the build/ and final/ directories. Common dependencies are installed only once in the root node_modules, reducing duplication and ensuring consistent versions across the project.
build/lookup.js- Implement Twilio Lookup API routes (basic lookup, line type intelligence, SMS pumping risk)build/verify.js- Implement Twilio Verify API routes (send and validate verification codes)build/server.js- Pre-configured Express.js server (no edits needed)
☮️