Https Twitter Com I Flow Signup !exclusive! -
This is called a flow. The backend tells the frontend what to ask, and the frontend just renders the components. This allows X to change the signup process (e.g., adding a "Prompt for Newsletter signup") without pushing a new version of their iPhone app or website. They just change the Flow definition on the server. Why the weird URL? Security and Bots You might ask: "Why can't I just curl https://twitter.com/i/flow/signup and create 1,000 accounts?"
By analyzing the flow/signup traffic, researchers have historically found experiments running on subsets of users. 50% of users might see a 2-step flow; 50% might see a 5-step flow. The URL stays the same ( /i/flow/signup ), but the JSON payload changes. If you open your Developer Tools (F12) and watch the Network tab while signing up for X, look for requests to https://twitter.com/i/api/1.1/onboarding/task.json .
When you first land on the page, a JavaScript file runs, generates a cryptographic nonce (number used once), and starts a session. The flow endpoint checks for that token in every request. If you try to jump from Step 1 to Step 4, the Flow engine throws a 400 Bad Request because you have violated the state machine. https twitter com i flow signup
Have you ever tried to skip giving X your phone number, only to have the "Next" button greyed out? That is the Flow engine responding to a conditional rule: IF (email_provided AND NOT phone_provided) THEN (show_phone_screen = true) .
Imagine the server telling your browser: "Alright, Browser. Step one is a 'TextInput' component. Step two is a 'DatePicker' for their birthday. If they are under 13, Step three is an 'Error Screen'. If they are over 18, skip to Step four." This is called a flow
But if you are a developer, a security researcher, or just a curious digital native, you have likely stared at your browser’s status bar and seen the strange, almost mechanical URL: .
If it does, you can bet those questions will be served by the same old endpoint: https://twitter.com/i/flow/signup . They just change the Flow definition on the server
You will see the raw data. It is often gzipped and minified, but if you prettify it, you will see the exact logic: