Plug Redeyed's self-hosted AI, IP-reputation and human-verification engines straight into your product. Scoped, rate-limited keys. A clean JSON envelope. Quota first, then credits.
https://redeyed.com/api/v1Send your key in the X-Api-Key header on every request (a Bearer token also works). Keep keys server-side — never ship them in client code.
# every request carries your key curl https://redeyed.com/api/v1/me \ -H "X-Api-Key: rk_xxxxxxxx_your_secret"
Every response is wrapped in a predictable envelope. Success returns data; failures return error. meta always carries a request_id (quote it in support requests) and your live usage.
// success { "data": { /* endpoint payload */ }, "meta": { "request_id": "…", "version": "v1", "usage": { "mode": "quota", "charged": 0, "credit_balance": 980 } } } // error { "error": { "code": "insufficient_scope", "message": "…" }, "meta": { "request_id": "…" } }
Keys follow least-privilege — grant only the scopes a key needs when you create it. A key with no scopes has full access (legacy behaviour).
| Scope | Grants |
|---|---|
account:read | Read account, plan, quota & usage |
sentinel:ip | IP reputation lookups |
sentinel:verify | Server-side captcha / human verification |
ai:chat | AI chat completions |
ai:paraphrase | AI paraphrasing / rewriting |
ai:image | AI image generation |
| Method | Path | Scope | Description |
|---|---|---|---|
| GET | /me | account:read |
Your account, plan and remaining quota. |
| GET | /ip/{ip} | sentinel:ip |
IP reputation score, risk flags, geo & ASN. Omit {ip} to score the caller. |
| POST | /verify | sentinel:verify |
Server-side verification of a Sentinel captcha token. |
| POST | /ai/chat | ai:chat |
Chat completion — send a prompt or a messages array. |
| POST | /ai/paraphrase | ai:paraphrase |
Rewrite text in a chosen tone. |
| POST | /ai/image | ai:image |
Generate an image; returns a hosted URL. |
# IP reputation curl https://redeyed.com/api/v1/ip/1.1.1.1 -H "X-Api-Key: rk_…" # AI chat curl -X POST https://redeyed.com/api/v1/ai/chat \ -H "X-Api-Key: rk_…" -H "Content-Type: application/json" \ -d '{"prompt":"Summarize the OWASP Top 10 in 5 bullets","mode":"medium"}' # Image generation curl -X POST https://redeyed.com/api/v1/ai/image \ -H "X-Api-Key: rk_…" -H "Content-Type: application/json" \ -d '{"prompt":"a neon red-eyed owl, cinematic"}'
Two layers protect the API: a hard per-minute transport limit (by plan, below) and quota-then-credits metering. Within your plan's quota, calls are free; past it, each call spends credits at its listed cost. Out of both returns 429.
| Plan | Requests / minute |
|---|---|
| free | 60 |
| entry | 300 |
| core | 1,000 |
| arsenal | 5,000 |
| dominion | 20,000 |
| monarch | 60,000 |
Errors use standard HTTP status codes with a machine-readable code:
401 | unauthenticated / invalid_key / key_expired |
403 | insufficient_scope / ip_not_allowed |
422 | validation_failed (with a details map) |
429 | rate_limited / quota_exceeded |
503 | model_unavailable / image_unavailable — credits auto-refunded |
Click Authorize, paste your API key, then expand any endpoint and hit Try it out — requests run against your live account (and count toward your quota).
Create a key, pick your scopes, and you're live in minutes.
Get started free