BaseUrl
All API access are over HTTPS, and accessed from the {baseUrl}/api/v1 domain.
Any non-secure requests are met with a redirect (HTTP 301) to the HTTPS equivalent URI.
Production
API: https://o21c.obvious21.com
Dashboard: https://dashboard.o21.io
O21Pay App: https://pay.o21.io
Sandbox
API: https://sandbox-o21c.obvious21.com
Dashboard: https://sandbox-dashboard.o21.io
O21Pay App: https://sandbox-pay.o21.io
HTTP verbs
As per RESTful design patterns, the Obvious21 API implements following HTTP verbs:
| HTTP Verb | Description |
|---|---|
| POST | Create new resource |
| GET | Read resource |
| PATCH | Update existing resource |
| PUT | Add resource |
| DELETE | Remove resource |
HTTP Status Codes
All responses use standard HTTP status codes:
| Status Code | Description |
|---|---|
| 200 | OK - Successful request |
| 301 | Moved Permanently |
| 400 | Bad Request - The request is malformed. Check the parameters or the syntax |
| 401 | Unauthorized - Couldn’t authenticate the request |
| 403 | Forbidden - The request is not allowed |
| 404 | Not Found - Resource not found |
| 429 | Too many requests - See Rate limits |
| 500 | Internal Server Error |
Response 2xx
| Field name | Type |
|---|---|
| data | Object |
| statusCode | Integer |
{
statusCode: 2xx,
data: {
...
}
}
Errors
| Field name | Type |
|---|---|
| statusCode | Integer |
| error | String |
| message | String |
{
statusCode: 401,
error: 'Unauthorized',
message: 'Missing secret provided'
}
Rate Limits
Rate limits
The limit is set according to your subscription plan, it varies between 50 and 200 reqs/min. This value can be increased according to your needs, please contact us.
| Plan | Reqs/Min |
|---|---|
| Starter | 20 |
| Advanced | 50 |
| Premium | 100 |
| Entreprise | 200 |
Timestamps and dates
All timestamps are returned in ISO 8601 format with time :
yyyy-MM-ddTHH:mm:ss.SSSZ
All dates are returned in format:
