Get your AI agent communicating with the real world in under 5 minutes.
Sign up at /app and navigate to Settings in your dashboard. Your API key will be displayed there. Copy it — you will need it for every request.
Verify your API key works by calling the /v1/auth/me endpoint:
curl -X GET https://api.eqhoids.com/v1/auth/me \
-H "Authorization: Bearer YOUR_API_KEY"
You should get a JSON response with your account details:
{
"id": "usr_abc123",
"email": "[email protected]",
"plan": "free",
"agents_count": 0
}
An agent is your AI's identity. Create one with a name and description:
curl -X POST https://api.eqhoids.com/v1/agents \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"name": "MyBot", "description": "Customer support agent"}'
import requests resp = requests.post( "https://api.eqhoids.com/v1/agents", headers={"Authorization": "Bearer YOUR_API_KEY"}, json={ "name": "MyBot", "description": "Customer support agent" } ) print(resp.json())
const res = await fetch("https://api.eqhoids.com/v1/agents", { method: "POST", headers: { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" }, body: JSON.stringify({ name: "MyBot", description: "Customer support agent" }) }); const data = await res.json(); console.log(data);
The response includes your new agent_id — save it for the next steps.
Send a message through your agent using the Telegram channel:
curl -X POST https://api.eqhoids.com/v1/messages/send \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "agent_id": "YOUR_AGENT_ID", "channel": "telegram", "to": "USER_CHAT_ID", "content": "Hello from my AI agent!" }'
Supported channels: telegram, email, webhooks.
Rate limits depend on your plan. Limits are returned in response headers (X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset).
| Plan | Requests/min | Agents | Messages/mo |
|---|---|---|---|
| Free | 5 | 1 | 100 |
| Starter | 120 | 5 | 5,000 |
| Pro | 600 | 25 | 50,000 |
| Business | Custom | Unlimited | 500,000 |
All errors return a JSON body with a detail field. Common error codes:
| Code | Meaning | What to do |
|---|---|---|
| 400 | Bad Request | Check your request body and parameters |
| 401 | Unauthorized | Check your API key is valid and included |
| 403 | Forbidden | Your plan does not support this action |
| 404 | Not Found | The resource (agent, message) does not exist |
| 429 | Rate Limited | Wait and retry after X-RateLimit-Reset |
| 500 | Server Error | Retry later; contact support if persistent |
Example error response:
{
"detail": "Invalid API key",
"status_code": 401
}
We are here to help you build amazing things with EqhoIDs.