Skip to content

API Overview

Your base URL is provided by your administrator.

MethodEndpointAuth RequiredDescription
GET/healthNoCheck API and service availability
POST/api/{productSlug}YesSubmit inputs and receive illustration results

All POST requests must include:

  • Content-Type: application/json header
  • Authentication header (Authorization: Bearer or X-API-Key)
  • JSON body with your input data

Send your inputs inside an inputs object:

{
"inputs": {
"field1": "value1",
"field2": 100000
}
}

The specific fields required depend on your product configuration. Your administrator will provide the list of expected input fields.

{
"status": 200,
"response_data": {
"outputs": {
"OutputField1": 42500.00,
"OutputField2": "some value"
}
}
}

Returns a binary PDF file with headers:

Content-Type: application/pdf
Content-Disposition: attachment; filename="illustration_2025-01-15T10-30-00.pdf"

Returns JSON outputs with a base64-encoded PDF embedded:

{
"status": 200,
"response_data": {
"outputs": { ... }
},
"pdf": {
"fileName": "illustration_2025-01-15T10-30-00.pdf",
"data": "JVBERi0xLjQK...",
"pageCount": 12
}
}
MethodHow to Use
Query parameter?format=json, ?format=pdf, or ?format=both
DefaultYour product has a default format configured by your administrator

The ?format query parameter always takes precedence over the product default.

CodeDescription
200Success
400Bad request — missing or invalid input data
401Unauthorized — invalid, missing, or expired API key
403Forbidden — API key not authorized for this product
404Product not found or inactive
429Rate limit exceeded
500Internal server error
502Upstream service authentication failed
503Upstream service unavailable

See Error Reference for details on each code.

Rate limits are set per API key by your administrator. Every response includes usage headers:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Daily-Limit: 10000
X-RateLimit-Daily-Remaining: 9998

When a limit is exceeded you receive a 429 response with a Retry-After header indicating when you can retry.

See Rate Limits for full details.

GET /health

No authentication required. Returns the current status of the API and its dependent services.

{
"status": "ok",
"services": {
"database": "ok",
"redis": "ok"
}
}

If any service is degraded, the response will indicate "error" for that service.