
Developer API
Integrate with the Jolly Rogenerator API to build your own tools.
API Overview
The Jolly Rogenerator API allows external applications to interact with your characters. Manage character stats, inventory, and advancement programmatically.
Interactive Documentation
Explore the full API specification with our interactive Swagger UI. Test endpoints, view request/response schemas, and understand the complete API capabilities.
Open Swagger UIAPI Key
All API endpoints require authentication via the X-Bot-API-Key header.
# Example request
curl -H "X-Bot-API-Key: your-bot-api-key" \
"https://jollyrogenerator.com/api/bot/characters?discordId=123456789"
Contact us to obtain an API key for your integration.
Rate Limits
Rate limits are applied per API key to ensure fair usage and system stability.
| Operation Type | Limit |
|---|---|
| Read (GET) | 100 requests/minute |
| Write (POST, PATCH, DELETE) | 30 requests/minute |
Rate limit headers (X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset) are included in all responses.
Endpoints
The API provides complete character management capabilities:
/api/bot/charactersList all characters for a Discord user
/api/bot/characters/:idGet full character details including items and abilities
/api/bot/characters/:idUpdate HP, luck, silver, or ability scores
/api/bot/characters/:id/inventoryGet character inventory categorized by type
/api/bot/characters/:id/inventoryAdd a new item to character inventory
/api/bot/characters/:id/inventory/:itemIdRemove an item from character inventory
/api/bot/characters/:id/advanceLevel up character with automatic HP roll
Error Codes
All errors return a JSON response with an error code for easy handling.
| Code | Description |
|---|---|
UNAUTHORIZED | Authentication required |
INVALID_API_KEY | Invalid API key provided |
OWNERSHIP_DENIED | User does not own the resource |
RATE_LIMITED | Rate limit exceeded |
NOT_FOUND | Resource not found |
CHARACTER_NOT_FOUND | Character not found |
ITEM_NOT_FOUND | Item not found |
VALIDATION_ERROR | Request validation failed |
Ready to integrate? Explore the interactive API documentation or contact us to get your API key.