The toll-free verification maze
Twilio rejected the same toll-free application twice, for two different fields, before it explained why. The map of that maze, built one collision at a time.
A toll-free number needs Twilio's sign-off before it sends a single text. The application reads like paperwork and behaves like a maze — you can't see a wall until you've walked into it, and the rejection notice is the only map you get. First submission was for one narrow job, an AI voice hotline sending a single follow-up text after a call. It came back rejected on business_website: the field pointed at a personal domain that redirects elsewhere, and the reviewer followed the redirect to a page matching nothing else in the application. Fix it, resubmit, and the wall moves — second rejection on opt_in_type, set to WEB_FORM when there's no signup form anywhere; the only real mechanism is VERBAL, a caller hearing a disclosure before anything gets sent, and Twilio's taxonomy doesn't treat 'close enough' as valid. One more field got changed in that same pass before it had the chance to reject anything on its own: business_type to SOLE_PROPRIETOR, the value that skips the EIN and registration-number fields a one-person operation registered only with the city doesn't have. Reading the enum definitions before submitting instead of after is the one wall you can route around blind. The application can only be edited while rejected, within a seven-day window that keeps a resubmission in the priority queue — miss it and the next attempt goes to the back of the line. A maze doesn't publish its map. You learn each wall by walking into it.