Get up and running with the dr.eamer.dev API in minutes. Access 15 LLM providers, 17 data sources, and powerful orchestration tools through a single unified interface.
Request an API key using the form below or contact luke@lukesteuber.com. Keys are issued for legitimate use cases within 24 hours.
Use your API key in the header, as a Bearer token, or as a query parameter:
# Header authentication (recommended)
curl -X POST "https://api.dr.eamer.dev/v1/llm/chat" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "xai",
"model": "grok-3-mini-fast",
"messages": [{"role": "user", "content": "Hello!"}]
}'
Try different endpoints: chat with LLMs, search academic papers, analyze images, orchestrate multi-agent research, and more. See the full documentation for all available endpoints.
All API requests require authentication. You can authenticate using any of these methods:
curl -H "X-API-Key: YOUR_API_KEY" https://api.dr.eamer.dev/v1/...
curl -H "Authorization: Bearer YOUR_API_KEY" https://api.dr.eamer.dev/v1/...
curl "https://api.dr.eamer.dev/v1/...?api_key=YOUR_API_KEY"
Never expose your API key in client-side code or public repositories. Use environment variables and server-side requests to keep your key secure.
To ensure fair usage and service stability, the API enforces rate limits per API key.
| Limit Type | Value | Reset |
|---|---|---|
| Daily Requests | 10,000 |
Midnight UTC |
| Requests per Minute | 100 |
Rolling window |
| Concurrent Requests | 10 |
- |
Rate limit information is included in response headers:
X-RateLimit-Limit: 10000
X-RateLimit-Remaining: 9847
X-RateLimit-Reset: 1705363200
Contact luke@lukesteuber.com to discuss increased rate limits for high-volume use cases.
curl -X POST "https://api.dr.eamer.dev/v1/llm/chat" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "anthropic",
"model": "claude-sonnet-4-20250514",
"messages": [
{"role": "user", "content": "Explain quantum computing in simple terms"}
],
"max_tokens": 500
}'
curl "https://api.dr.eamer.dev/v1/data/arxiv/search?query=machine+learning&max_results=5" \
-H "X-API-Key: YOUR_API_KEY"
curl -X POST "https://api.dr.eamer.dev/v1/llm/vision" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "xai",
"model": "grok-2-vision",
"image_url": "https://example.com/image.jpg",
"prompt": "Describe this image in detail"
}'
curl "https://api.dr.eamer.dev/v1/corpus/search?query=serendipity&corpus=coca&limit=10" \
-H "X-API-Key: YOUR_API_KEY"
curl -X POST "https://api.dr.eamer.dev/v1/orchestrate/dream-cascade" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"task": "Research the history and impact of the printing press",
"num_agents": 5
}'
The API uses standard HTTP status codes and returns detailed error messages:
| Status Code | Meaning |
|---|---|
200 |
Success |
400 |
Bad Request - Invalid parameters |
401 |
Unauthorized - Invalid or missing API key |
403 |
Forbidden - Key doesn't have access to this resource |
429 |
Too Many Requests - Rate limit exceeded |
500 |
Internal Server Error |
{
"error": {
"code": "rate_limit_exceeded",
"message": "Daily rate limit exceeded. Resets at midnight UTC.",
"retry_after": 3600
}
}
While you can use the API directly with any HTTP client, these resources can help you get started:
Use the requests library or the shared dr-eamer-ai-shared package for direct integration.
View on PyPIAPI keys are provided free for personal projects, research, and educational use. Commercial applications may require a discussion.
This form will open your email client. Alternatively, email luke@lukesteuber.com directly with your request.
For API support, bug reports, or feature requests, contact luke@lukesteuber.com or open an issue on GitHub.