Introduction
In this section, we go over some of the common resources that you will work with when interacting with our API. They are:
- Endpoint URLs
- Interactive Swagger Documentation spec
- HTTP response codes
Base URL
Our API lives on:
You will need to use it as a base URL for any endpoints listed in the docs.
Playground
You see our OpenAPI + SwaggerUI setup and play with our API interactively on:
HTTP response status codes
You can expect our API to follow the following conventions and respond with the following status codes:
Status | Response | Description |
---|---|---|
202 | Accepted | Your request is has been accepted for processing. |
200 | OK | Your request has been processed successfully. |
400 | Bad Request | Invalid request. Check the error message in the response. |
401 | Unauthorized | Check if API key is correct. |
404 | Not Found | The specified resource could not be found. |
429 | Too Many Requests | Slow down and try again later! |
500 | Internal Server Error | We encountered a problem with our server. Please get in touch! |
503 | Service Unavailable | We're offline for maintenance. Please try again later. |
Async / Sync
We are working on 2 sets of endpoints. One for sync, long-lived requests and one for async requests.
You can tell the type of request from the endpoint naming convention we use.
Sync
Synchronous requests are useful if you want to render a single template on-demand. Such requests typically take from 10 to 30 seconds.
Note that the first request will be a warm-up request and will take 10 seconds longer than consequent requests.
Async
Coming soon
Asyncronous requests can be used to simply submit requests to render the templates when you do not wish to wait for the response. This means that after sending a request to render a template, we will respond straight away acknowledging your request.
Since images take a long time to process and generate, we decided to process them in batches. On average, it can take up-to 1 hour for your image to be generated.
You will need to either poll for updates or integrate a webhook in order to receive an update when processing is complete.