API Reference
Complete API reference for the Rynko REST API.
Try our Interactive API Explorer! Visit the API Explorer for an interactive documentation experience with try-it-now functionality, code samples in multiple languages, and full schema documentation.
Introduction
The Rynko API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.
Base URL
https://api.rynko.dev/api
Authentication
The Rynko API uses API keys to authenticate requests. You can view and manage your API keys in the Dashboard.
Your API keys carry many privileges, so be sure to keep them secure! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.
# Example request with authentication
curl https://api.rynko.dev/api/documents/generate \
-H "Authorization: Bearer fm_abc123xyz456..." \
-H "Content-Type: application/json" \
-d '{"templateId": "invoice-template", "format": "pdf", "variables": {...}}'
API Sections
Core Resources
- Authentication - Login, signup, token management
- Documents - Generate PDFs and Excel files
- Templates - Create and manage document templates
Rynko Reporting
Reporting endpoints are grouped under /api/reporting and /api/agents. See the Reporting documentation for concepts and guides.
- Agents — Register agents, read status and datasource pool health
- Datasources — Create datasources, test connections, discover schema
- Query objects — Create, version, and publish the SQL behind a report
- Reports — Create, publish, version, and run reports
- Schedules and jobs — Cron schedules per report, and multi-report jobs
- Runs — Run history, status, and document download
- Distribution channels — Email, Teams, Slack, and file share delivery
- Cognos import — Analyse and import Framework Manager packages and report specs
Analytics & Monitoring
- Analytics - Document generation metrics and statistics
Account Management
- API Keys - Manage API authentication keys
- Projects - Project and member management
- Users - User account operations
Reference
- Error Codes - Complete list of error codes and meanings
Request Format
All POST requests should use JSON format with the Content-Type: application/json header:
POST /api/documents/generate
Content-Type: application/json
Authorization: Bearer fm_abc123xyz456...
{
"templateId": "invoice-template",
"format": "pdf",
"variables": {
"invoiceNumber": "INV-2025-001",
"customerName": "Acme Corporation",
"total": 1750.00
}
}
Response Format
All API responses are returned in JSON format. For example, a document generation request returns:
{
"jobId": "doc_abc123",
"status": "queued",
"statusUrl": "https://api.rynko.dev/api/documents/jobs/doc_abc123",
"estimatedWaitSeconds": 5
}
Pagination
List endpoints return paginated results. Use the offset and limit parameters:
GET /api/documents/jobs?offset=0&limit=20
Response includes the total count:
{
"jobs": [...],
"total": 150
}
Rate Limiting
The API implements rate limiting based on authentication type:
| Auth Type | Requests/minute |
|---|---|
| API Key | 100 |
| OAuth | 120 |
| JWT (Dashboard) | 200 |
| Unauthenticated | 30 |
Rate limit headers are included in every response:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 99
X-RateLimit-Reset: 1699276800
Errors
The API uses standard HTTP status codes:
| Code | Meaning |
|---|---|
| 200 | Success |
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Invalid API key |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Resource doesn't exist |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error |
Error responses include details:
{
"statusCode": 400,
"code": "ERR_VALID_005",
"message": "Required field is missing",
"timestamp": "2025-11-06T10:30:00Z",
"path": "/api/documents/generate",
"relatedInfo": {
"field": "customerName"
}
}
See Error Codes for complete list.
Versioning
All endpoints are prefixed with /api/:
https://api.rynko.dev/api/documents/generate
Testing
Use the API Playground to test endpoints interactively without writing code.
Need Help?
- 💻 Try the API Playground
- 📖 Read the Developer Guide
- 📧 Email: support@rynko.dev
Ready to explore? → Choose an API section from the sidebar