AgentSIMOTP sessions for agents
Phone numbers + OTP outcomes for agent runs

OTP Sessions For Browser Agents

When a browser agent hits an SMS step, AgentSIM provisions a temporary US number for that run, waits for delivery, parses the OTP, and returns a result your automation can act on.

10 free sessions/month. No card required. Then $0.99 per session.

Best fit: owned auth, CI/QA, and verified-compatible services. Strict platforms may block programmable numbers before SMS.

verification-run.ts

Session

sess_7K4P9A

TTL

15 min

Result

session.created

01const session = await agentsim.provision({02  country: "US",03  serviceUrl: "https://staging.example.com/login"04});05await browser.fill("input[name='phone']", session.number);06const otp = await session.waitForOtp({ timeout: 30_000 });07await browser.fill("input[name='otp']", otp.otpCode);08await session.release();

Returned result

active
{  "session_id": "sess_7K4P9A",  "number": "+1 415 323 8821",  "country": "US",  "expires_in": 900}

Use Cases

Use AgentSIM when an agent run needs SMS OTP

Best for authorized browser-agent QA, staging auth, and delivery diagnostics. Strict consumer platforms may reject programmable numbers before SMS, so treat destination support as empirical.

Best fit today

Primary use case

Browser-Agent OTP QA

Run browser agents through SMS OTP steps with a temporary number, parsed code, and a clear outcome when the target never sends.

View browser-agent QA
Authorized flows

Controlled testing

Owned auth flows

Exercise Supabase, Auth0, Firebase, Clerk, or custom staging auth flows where your team controls the sender and test account.

Read integration guide
Core product

When no code arrives

No-SMS diagnostics

Classify each run as OTP received, SMS without OTP, no SMS, phone rejected, or anti-bot gated instead of waiting blindly.

Debug no SMS

Integrates With

Call OTP sessions three ways.

Give an agent a phone tool through MCP, call OTP sessions from browser automation, or send results back to your system with webhooks.

MCP

Give coding agents a phone tool

Expose provision and wait-for-OTP actions to Claude Code, Cursor, Windsurf, and other MCP-aware clients.

agentsim.wait_for_otp
SDK

Call it inside browser automation

Provision from Playwright, Puppeteer, or an agent runner, then branch on the API result.

await session.waitForOtp()
Webhook

Route outcomes back to your system

Receive code, rejection, gate, and timeout events in CI, QA, or owned auth flows.

event: otp.received
Claude CodeMCP
CursorCoding agent
WindsurfCoding agent
LangChainFramework
LlamaIndexFramework
Vercel AI SDKAI SDK
OpenAI AgentsAgents SDK
CrewAIFramework

The logo row shows places AgentSIM can fit. It does not mean every OTP destination accepts programmable numbers.

View MCP Docs

The Old Way Breaks

Phone Gates Can Fail Before SMS Exists

When a target blocks the number before sending SMS, your agent should not just wait. AgentSIM turns the attempt into a clear result: received, timed out, rejected, or gated.

receivedtimed outrejectedgated

Cloud Phone APIs

Twilio, Telnyx, Vonage

Great for messages you send. Verification gates may reject the number class before SMS.

Public SMS Inboxes

Shared virtual inboxes

Fast for manual checks, risky for automation because recycled numbers inherit reputation.

Dedicated Rentals

Persistent real-SIM numbers

Right for account recovery. Overkill for short CI and QA runs.

The Mechanism

Every OTP attempt returns a usable result.

Open a session when the run hits SMS. AgentSIM waits, parses, records failure states, and releases the number when the run is done.

Provision Request
session TTL: 15 min
POST /v1/sessions{  "agent_id": "browser-agent-42",  "country": "US",  "capabilities": ["sms"]} 200 OK{  "number": "+1 415 323 8821",  "country": "US",  "expires_in": 900}
Reserved for one run.Expires automatically.Labels the target service.

Compare

Know When AgentSIM Is The Right Model

AgentSIM is for short agent runs. Rentals are for durable recovery, cloud APIs are for SMS you own, and public inboxes are for disposable manual checks.

Choose Your Situation

Comparison of AgentSIM, JoltSMS, cloud phone APIs, and shared virtual SMS services.
Decision PointAgentSIMJoltSMSCloud Phone APIsShared Virtual
Best FitBrowser-agent OTP sessions + diagnosticsPersistent per-account phone identityProgrammable messaging you controlManual one-off tests
Number TypeProgrammable US number, agent-pooledDedicated real-SIM US numberVoIP or cloud-routed numberRecycled virtual inventory
Billing Shape$0.99/session after free tier$50/number/monthNumber rental plus usage feesDynamic per-code pricing
Agent DeliverySDKs, REST, webhooks, polling, MCPREST, webhooks, MCPSMS webhooks and lookup APIsUsually inbox-first
OTP PayloadParsed OTP plus raw messageParsed OTP plus raw messageUsually raw inbound SMSVaries by marketplace
Best Use CaseControlled auth and verified-compatible OTP workflowsLong-lived per-account verification & recoveryProgrammable SMS products you ownThrowaway manual checks

Use AgentSIM when you own the OTP flow, or the target is verified-compatible, and the agent needs a result it can act on.

10 free sessions to prove delivery

Pricing

Pay For OTP Sessions, Not Idle Inventory

No monthly number inventory for short agent runs. Pay for the OTP sessions your agents actually open.

Hobby

$0forever

Build and test without a card.

  • 10 sessions/month
  • No card required
  • SDK, REST, and MCP access
Start Free

Builder

Recommended For Agent Teams
$0.99per session

For teams running OTP steps in agent workflows.

  • Unlimited sessions
  • Parallel provisioning
  • Webhook and polling delivery
  • Parsed OTP payloads
  • Delivery diagnostics
Start Free

Enterprise

Customannual

Dedicated pools, audit controls, and controlled-auth support.

  • Dedicated number pools
  • Provider-specific audits
  • Audit logs
  • SLA support
Contact Sales

Cost Model

10 free sessions/month

Cost Model

$0.99/session after free tier

Cost Model

No idle number inventory

Give The Next Agent Run An OTP Number

Start with 10 free sessions, no card required. Test provisioning, parsing, and outcomes before committing.

Start FreeNeed dedicated pools? Contact sales.

No. AgentSIM serves programmable US numbers, and acceptance varies by target service. Google is verified blocked; Meta reaches SMS entry but delivery is unproven; other high-risk services may reject or gate before SMS. Check the support map before integrating against a specific platform.