MuaraiCaptcha
Solve any captcha with one API call. reCAPTCHA v2/v3, hCaptcha, Cloudflare Turnstile, FunCaptcha, GeeTest, image captchas, and 40+ more — through a single endpoint, with official SDKs for eight languages.
Website · Dashboard · Documentation · API Reference · Pricing
What is MuaraiCaptcha?
MuaraiCaptcha is a captcha-solving service. Your app sends us the captcha it's stuck on, we hand back a token (or the text), and your automation keeps moving. That's the whole idea.
We built it because most solving APIs treat developers outside the US as an afterthought — USD-only balances, card-or-crypto-only top-ups, and dashboards that feel like they were last touched in 2015. MuaraiCaptcha keeps the parts that work (a clean createJob / getJobResult flow you may already know) and fixes the parts that don't: top up in rupiah with QRIS from Rp 10.000, get billed only when a solve actually succeeds, and drop in an official SDK instead of hand-rolling HTTP calls.
If you run scrapers, QA pipelines, RPA bots, or account tooling, this is the boring, reliable piece that just handles captchas so you don't have to think about them.
Why teams pick us
- Pay for what works. Billing is per successful solve. A failed or unsupported task returns a clear error code — it doesn't touch your balance. Got a bad token? Report it and the charge is refunded automatically.
- Top up in your own currency. QRIS transfer from Rp 10.000. No card required, no crypto detour, no $10 minimum deposit to get started.
- One API, 40+ captcha types. Same request shape whether it's an image captcha or reCAPTCHA Enterprise. Learn it once.
-
Official SDKs, not community leftovers. Python, JavaScript/TypeScript, Go, Ruby, PHP, C#, Java, and C++ — all maintained here, all with a one-line
solve()helper. -
Migrate in minutes. The API mirrors the widely-used
createJobpattern, so switching is usually a base-URL-and-key change, not a rewrite. -
Prices you can actually see. Live per-type pricing from
GET /v1/pricing. No "contact sales."
How it compares
Honest look at where each option lands. Competitor details reflect their publicly documented behaviour at time of writing.
| MuaraiCaptcha | 2Captcha | Anti-Captcha | CapSolver | DeathByCaptcha | |
|---|---|---|---|---|---|
| Local QRIS / IDR top-up | ✅ from Rp 10.000 | ❌ | ❌ | ❌ | ❌ |
| Minimum to start | ~Rp 10.000 (< $1) | $3+ | $2+ | $1+ | $5+ |
| Billed only on success | ✅ | ✅ | ✅ | ⚠️ varies | ⚠️ varies |
| Auto-refund on reported bad solve | ✅ | ⚠️ manual review | ⚠️ manual review | ⚠️ | ❌ |
| Official SDKs maintained in-house | ✅ 8 languages | ⚠️ mostly 3rd-party | ⚠️ mostly 3rd-party | ⚠️ limited | ⚠️ limited |
Drop-in createJob compatible API |
✅ | ✅ | ✅ | ✅ | ❌ legacy API |
| Live public pricing endpoint | ✅ GET /v1/pricing
|
❌ | ❌ | ❌ | ❌ |
| Transparent per-type price list | ✅ | ⚠️ partial | ⚠️ partial | ⚠️ | ❌ |
| Modern dashboard | ✅ | ❌ dated | ⚠️ | ✅ | ❌ dated |
| Docs with copy-paste examples per type | ✅ | ⚠️ | ⚠️ | ⚠️ | ❌ |
The short version: if you're paying in USD with a corporate card and never leave the US payment rails, the incumbents are fine. If you want to start for under a dollar, pay locally, and only get charged when a captcha is actually solved, that's the gap we fill.
Supported captcha types
| Category | Types |
|---|---|
| Image / interaction | ImageToText, TextCaptcha, Audio, Coordinates, Grid, Rotate, BoundingBox, DrawAround |
| reCAPTCHA | v2, v2 Enterprise, v3, v3 Enterprise (proxy & proxyless) |
| Cloudflare / hCaptcha | Turnstile, hCaptcha, hCaptcha Enterprise |
| Anti-bot | FunCaptcha (Arkose), GeeTest v3/v4, DataDome, Amazon WAF |
| Others | MtCaptcha, Capy, Lemin, KeyCaptcha, FriendlyCaptcha, Yandex, Tencent, Altcha, CutCaptcha, CaptchaFox |
Full list with live prices → docs/task-types.md
Quick start
Grab your API key from the dashboard, then:
# 1. Create a task
curl -s https://api.muaraicaptcha.com/v1/job/create \
-H "Content-Type: application/json" \
-d '{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com",
"websiteKey": "0x4AAAAAAA..."
}
}'
# → { "errorId": 0, "jobId": 123456 }
# 2. Poll for the result
curl -s https://api.muaraicaptcha.com/v1/job/result \
-H "Content-Type: application/json" \
-d '{ "clientKey": "YOUR_API_KEY", "jobId": 123456 }'
# → { "errorId": 0, "status": "ready", "solution": { "token": "..." } }30-second version with an SDK
from muaraicaptcha import MuaraiCaptcha
client = MuaraiCaptcha("YOUR_API_KEY")
solution = client.solve({
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com",
"websiteKey": "0x4AAAAAAA...",
})
print(solution["token"]) # drop this into your form / requestThe SDK's solve() creates the task and polls for you. No loop to write.
Integration in three steps
-
Create a task —
POST /v1/job/createwith yourclientKeyand ataskobject (atypeplus its fields; see task types). You get back ajobId. -
Poll for the result —
POST /v1/job/resultevery ~5 seconds untilstatusisready. Image captchas usually return in a few seconds; token captchas take longer. -
Use the solution — drop the returned token (
gRecaptchaResponse,token, etc.) or text into your target form or request. Only successful solves are billed.
Prefer not to touch raw HTTP? Every language below has an examples/ folder with runnable scripts for exactly this flow.
Official SDKs
| Language | Directory | Install |
|---|---|---|
| 🐍 Python | sdk/python-SDK |
pip install muaraicaptcha |
| 🟨 JavaScript / TypeScript | sdk/javascript-SDK |
npm install muaraicaptcha |
| 🐹 Go | sdk/golang-SDK |
go get github.com/MuaraiCaptcha/MuaraiCaptcha/sdk/golang-SDK |
| 💎 Ruby | sdk/ruby-SDK |
gem install muaraicaptcha |
| 🐘 PHP | sdk/php-SDK |
composer require muaraicaptcha/muaraicaptcha |
| 🟦 C# | sdk/csharp-SDK |
dotnet add package MuaraiCaptcha |
| ☕ Java | sdk/java-SDK |
Maven / Gradle |
| ➕ C++ | sdk/cpp-SDK |
CMake (libcurl) |
Each ships its own README plus five runnable examples. Start at the examples guide.
Top up your balance
Your balance is held in USD and charged per 1000 successful solves. Adding funds takes about a minute:
- Open the dashboard and click Top up.
- Choose QRIS and enter an amount — minimum Rp 10.000.
- Scan the QR with any Indonesian bank or e-wallet app (GoPay, OVO, DANA, ShopeePay, mobile banking).
- Credit lands in your balance automatically at the live USD/IDR rate the moment payment clears.
No card, no crypto, no monthly commitment. Spend what you load, top up again when you want.
Documentation
| Guide | What's inside |
|---|---|
| Getting Started | Account, API key, first solve |
| Authentication | How the clientKey works |
| API Reference | Every endpoint, request & response |
| Task Types | All captcha types + parameters + pricing |
| Error Codes | Every errorCode and how to handle it |
| Examples & Recipes | Runnable integrations per language |
| FAQ | Common questions |
How it works
sequenceDiagram
participant App as Your App
participant API as MuaraiCaptcha API
App->>API: POST /v1/job/create { clientKey, task }
API-->>App: { jobId }
loop until ready (poll every ~5s)
App->>API: POST /v1/job/result { clientKey, jobId }
API-->>App: { status: "processing" }
end
API-->>App: { status: "ready", solution }
Note over App,API: You're billed only on success.
Useful links
- 🌐 Website — https://muaraicaptcha.com
- 🔑 Dashboard & API key — https://console.muaraicaptcha.com
- 📚 Documentation — https://docs.muaraicaptcha.com
- 💲 Pricing — https://muaraicaptcha.com/pricing
- 📡 API base URL —
https://api.muaraicaptcha.com
Contributing
Issues and PRs are welcome — see CONTRIBUTING.md. All SDKs share the same small surface, so improvements to one usually map cleanly to the others.
License
Released under the MIT License. © MuaraiCaptcha.