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:
