Signup OTP
Ravi gives AI agents their own identity (email inbox, real phone, encrypted vault) so they can sign up for services, receive verification codes, and keep the passwords they create. For teams whose agents have to act on the web, not just talk.
Wait on the signup OTP or magic link
Same identity fills the form, then waits on the signup OTP or magic link. The service sends that message to the identity’s email inbox or phone number. The agent reads it there. This is the verification the service already sends, delivered to an inbox the agent owns.
Create the identity first, then use an identity-scoped key (ravi_id_...) or a
management key (ravi_mgmt_...) with ?identity=<uuid>. Device-code login
(ravi auth login) against https://api.ravi.app stores keys in
~/.ravi/config.json for local CLI use. The CLI is one identity per machine.
export RAVI_API_KEY="ravi_id_..."
export IDENTITY_UUID="<identity-uuid>"
# Email: magic links and email OTPs land here.
curl "https://api.ravi.app/api/email-inbox/?identity=$IDENTITY_UUID" \
-H "Authorization: Bearer $RAVI_API_KEY"
# SMS: phone OTPs land here.
curl "https://api.ravi.app/api/sms-inbox/?identity=$IDENTITY_UUID" \
-H "Authorization: Bearer $RAVI_API_KEY"
Poll until the message arrives, then complete signup with the code or link the service sent to that identity.
Signup and first identity: Sign Up
(https://docs.ravi.app/getting-started/sign-up.txt). Key types and device-code
login: Authentication
(https://docs.ravi.app/getting-started/authentication.txt).
Next Steps
- Give the agent an email so it can sign up
- The site texted a code and the agent has no phone
- Sign Up
- Authentication
- Status — API and docs availability