MailSlurp logo

Real phone numbers for testing, automation, and AI agents.

Build SMS into your applications with MailSlurp. Receive messages through APIs and webhooks, feed ingest pipelines, power AI agents and support conversations, or automate OTP tests.

Free account. Phone numbers require a paid plan and number rental.

A mobile phone, SMS message bubble and programming terminal

Trusted by teams at

  • Broadcom
  • Scraper
  • Trivago
  • Avast
  • Wolt
  • Panasonic
  • Broadcom
  • Scraper
  • Trivago
  • Avast
  • Wolt
  • Panasonic

Dedicated numbers for your team and test environments.

Choose dedicated SMS numbers across supported countries. Assign them to applications, AI agents, support workflows or test environments and keep incoming messages in one place.

Review number types, receiving and sending capabilities, availability and rental pricing in the app. Keep a number for an ongoing workflow, or use pools and locks to reserve one for a test.

Dedicated SMS numbers across supported countries
Countries supported by MailSlurp phone numbers
CountryCalling codeVariants
United StatesUS (+1)Local · Toll-free · Non-VoIP
United KingdomGB (+44)Mobile · Non-VoIP
AustraliaAU (+61)Mobile · Non-VoIP
CanadaCA (+1)Local
EstoniaEE (+372)Mobile
PolandPL (+48)Mobile
NetherlandsNL (+31)Mobile
IsraelIL (+972)Mobile
FinlandFI (+358)Mobile
SwedenSE (+46)Mobile
Contact us about other regions.

Non-VoIP is an optional number filter. Types and availability vary by inventory and billing currency; check receiving and sending capabilities in the app.

Build SMS into your applications.

Turn incoming SMS into an application event. Use webhooks to feed an ingest pipeline, trigger a background job or route a customer message to support. Read the sender, message body and history through the API.

Use the REST API or official SDKs for JavaScript, TypeScript, Python, Java, C#, PHP, Ruby and more. Add SMS to the language and test framework your team already uses.

Read the SMS API docs

Test the code that actually arrives.

Submit a MailSlurp number in your application, wait for its SMS and extract the one-time code. Enter it in the browser and check that your customer can complete verification.

Cover new-account verification, two-factor login and account recovery. Use built-in code extraction to find the OTP, with length and pattern options to match your application.

Follow the SMS OTP guide
app.example.com/verify

Enter the one-time code

MailSlurp received the SMS OTP and your test can submit it automatically.

482913

The browser test fills this field with the code MailSlurp captured.

Separate development, staging and production environments

Keep parallel tests separate

Reserve a number from a pool for each test run. Wait for messages received after your test starts, so an old code cannot satisfy a new check.

Explore phone pools
Playwright, Cypress, Selenium and k6

Keep your test framework

Bring SMS into Playwright, Cypress, Selenium or your own API tests. Run the same verification journey in CI.

See the Cypress guide
Email inboxes for combined email and SMS tests

Cover email and SMS together

Test email confirmation and SMS verification in one suite, including fallback and recovery journeys.

Explore email and SMS testing

Turn incoming SMS into useful data.

A customer texts an order number, a delivery request or a support question. Extract the fields your application needs, then pass structured JSON into your CRM, database or next workflow.

Define the fields with a prompt and output schema, or attach a reusable AI Transformer to a phone number. Review the extracted values before taking action. AI features require an eligible plan; token usage applies.

Explore SMS data extraction
An SMS message transformed into a structured JSON document

Extract the details that matter

Turn free-form texts into order IDs, request types and customer details. Choose the fields and formats your software expects.

Review extraction results
Incoming messages routed to a database, spreadsheet and application code

Build an SMS ingest pipeline

Receive a webhook when a text arrives. Store the original message alongside extracted data, trigger a job, or connect it to your CRM or support system.

Connect incoming SMS
Claude, ChatGPT, Gemini and custom AI agents

Give AI agents a phone number

Assign numbers with scoped access to messages and conversation history. Enable permitted replies separately, and use claims and handoffs to coordinate agents and people.

Explore agent SMS workflows

Keep the conversation moving.

Receive a customer message, look up the context and send a reply from the same number. Build support conversations and status updates into your application, with message history available to your team and agents.

Choose a number with sending capability and confirm recipient permission. By default, replies are limited to people who have contacted your number first. Route requests that need a person into your support workflow.

Explore two-way SMS
A shield and lock representing controlled message access

Choose who can reach you

Allow or block incoming SMS from specific numbers or matching patterns. Apply rules to a particular number to keep unwanted messages out of your workflow.

Configure sender rules
A webhook request to inspect and verify

Verify incoming events

Check webhook signatures before accepting an event. Store each message ID in a durable queue so repeated deliveries do not create duplicate work.

Connect verified webhooks
Message delivery routes into your application and data systems

Recover failed deliveries

Inspect delivery results and HTTP responses when a webhook fails. MailSlurp retries unsuccessful deliveries; you can fix your receiver and replay affected events.

See webhook recovery

One dashboard for your numbers and conversations.

Give developers, QA and support a shared place to work with SMS. Review numbers and messages in the dashboard, or build the same workflows into your own software through the API.

A phone exchanging incoming messages and replies

Follow the whole conversation

Review received texts and message threads without passing around a handset. Connect customer messages to your support workflow; replies require sending capability and recipient permission.

See the SMS dashboard guide
Development, staging and production environments

Organize numbers by purpose

Name and tag numbers for development, staging, production or a customer workflow. Use pools and reservations to allocate numbers to parallel tests.

Manage number pools
A shield and lock representing shared access controls

Control access as your team grows

Use roles and scoped API keys to control access. Enterprise options add SSO, SCIM provisioning and audit logs for teams with central access requirements.

Explore MailSlurp Enterprise

From phone number to working workflow.

Connect a real number to the application, agent or test you already run.

Choose a dedicated phone number
01

Choose your number

Create a free account, review number types and rental pricing, then add a number for your workflow.

Programming languages and SDKs for connecting incoming SMS
02

Connect incoming messages

Set up a webhook to your server, or use an SDK to wait for incoming SMS and read its contents.

Route incoming messages into your application
03

Put each message to work

Store it in your pipeline, route it to an agent or support team, or extract a code to complete an automated test.

Questions about phone numbers and SMS

What kinds of phone numbers can I use?

MailSlurp offers dedicated SMS numbers in supported countries, including mobile and toll-free options where available. Check the live number catalogue for number type, receiving and sending capabilities, availability and rental pricing. A third-party service may apply its own rules to verification messages. Review phone numbers and capabilities.

Can I use SMS for an ingest pipeline or application workflow?

Yes. Connect an incoming-SMS webhook to your server to trigger a job, store a message or pass it into your application. You can also read messages and their history through the REST API or SDKs, or wait for a new message when your workflow needs one. Connect SMS webhooks.

Can I extract structured data from incoming SMS?

Yes. Use a prompt and output schema to extract fields from an SMS, or connect a reusable AI Transformer to a phone number. Review results as structured JSON and connect them to your own workflow. AI features require an eligible plan; token usage applies. For verification codes, use the separate built-in pattern extraction API. Set up an SMS transformer.

Can an AI agent use a phone number?

Yes. Assign a number to an agent with scoped access so it can read messages and conversation history. Enable sending separately when replies are needed, and use conversation claims and handoffs to coordinate agents and people. Sending remains subject to the number's capabilities and recipient permissions. Read the agent SMS guide.

Can my team use it for SMS support?

Yes. Keep a dedicated number for incoming customer messages, review SMS threads in the dashboard or your own application, and route messages to your support workflow. Replies require sending capability and recipient permission; by default, sending is limited to recipients who have contacted your number first. Review SMS receiving and sending.

Can I control a real phone number in an automated OTP test?

Yes. Create or assign a MailSlurp phone number, reserve it for the current test, submit it to the application, wait for the inbound SMS, extract the OTP, complete the verification step, and release or retain the number according to your test policy. Run an OTP test with Playwright. Run an OTP test with Cypress.

Do automated tests have to share the same phone number?

No. Allocate numbers by environment, worker, suite, tenant, or customer journey. Number pools, locks, tags, and message history keep parallel runs isolated and make failures easier to trace. Review the SMS verification API workflow.

Can one test cover email and SMS verification together?

Yes. MailSlurp provides programmable inboxes and phone numbers under one API model, so a test can validate email confirmation, SMS fallback, OTP, MFA, and recovery paths in the same suite. Explore programmable email and SMS APIs. Explore authentication testing.

Is it free to get started?

You can create a free account and explore the dashboard. Phone numbers require a paid plan and number rental. Review the available numbers, capabilities and pricing in the app before adding one. Keep a number for an ongoing application or release it when you no longer need it. Open the phone and SMS docs.

Build your next SMS workflow.

Start with a free account and explore the phone number dashboard. Review number availability, capabilities and rental pricing before adding your first number.

Dedicated phone numbers for your next SMS workflow