
One API call.
Real Android.
Done.
Run automation scripts on real Android phones.
Control your device fleet with simple API calls.
Everything you need
Simple, powerful, developer-first
Device Fleet
Connect and manage real Android devices. Monitor status, organize with groups and tags.
JS Scripting
Write plain JavaScript. No SDK required. Full device control with familiar syntax.
API Trigger
Trigger any script with a single POST request. Pass parameters, get results.
Built for your use case
From social automation to app testing
Social Automation
Automate social apps at scale. Real devices, real interactions.
App Testing
Run UI tests on real devices. No emulators, no flaky tests.
Data Collection
Scrape app data from real phones. Access what web can't reach.
How it works
Four simple steps to automation
Connect
Add your devices
Write
Create your script
Trigger
Call the API
Done
Get results
Write simple JavaScript
Your automation logic, in plain JavaScript.
No SDK. No framework. Just code.
// Your script runs on real Android devices const { username } = $params; // Open the app app.launch("com.instagram.android"); // Search and navigate to user click("Search"); input(username); sleep(1000); click(username); // Done - now on user's profile
$ curl -X POST https://phones.run/api/run/my-script \ -H "Authorization: Bearer YOUR_TOKEN" \ -d '{"username": "elonmusk"}' # Response { "task_id": "task_abc123", "status": "queued", "devices": ["dev-001"] }
Trigger via API
One POST request. That's it.
Pass parameters, target devices, get task ID.