API Guide¶
This guide is automatically generated from the main Partner API documentation.
Source Documentation
This content is copied from Partner API documentation source files during the build process. See the full API documentation for complete details.
API Overview¶
The Partner API consists of three main components:
- Partner Admin API (
/v1/partner/admin/*) - For partner apps to manage their automations and settings - Partner User API (
/v1/partner/user/*) - For partner apps to access user data via OAuth - OAuth Endpoints (
/oauth2/*,/auth/*) - For authentication and authorization
Base URLs¶
| Environment | Base URL |
|---|---|
| Production | https://api.contio.ai |
| Beta | https://beta.api.contio.ai |
Authentication¶
See Authentication Guide for detailed setup instructions.
Rate Limits¶
Rate limits are enforced at the infrastructure level (AWS WAF) and are evaluated per IP address over a rolling 5-minute window.
| Endpoint Type | Rate Limit | Approx. per Minute |
|---|---|---|
User API (/v1/partner/user/*) | 1,000 requests / 5 min | ~200/min |
Admin API (/v1/partner/admin/*) | 500 requests / 5 min | ~100/min |
OAuth (/oauth/*, /auth/*) | 100 requests / 5 min | ~20/min |
Rate Limit Responses
When you exceed the rate limit, the API returns a 429 Too Many Requests response:
Best Practices
- Implement exponential backoff when receiving 429 responses
- Cache responses where appropriate to reduce API calls
- Use webhooks for real-time updates instead of polling
Error Responses¶
All errors follow the OAuth 2.0 standard format:
{
"error": "invalid_request",
"error_description": "Missing required parameter: client_id",
"request_id": "abc123xyz"
}
Common Error Codes¶
| Code | HTTP Status | Description |
|---|---|---|
invalid_request | 400 | Missing required parameter or redirect_uri mismatch |
invalid_client | 401 | Invalid client_id or client_secret |
invalid_grant | 400 | Invalid, expired, or already-used authorization code or refresh token |
unsupported_grant_type | 400 | Grant type is not authorization_code or refresh_token |
access_denied | 403 | User denied authorization |
server_error | 500 | Internal server error |
Next Steps¶
- OAuth Flow Guide - Detailed OAuth 2.0 implementation
- Webhook Events - Real-time event notifications
- API Versioning - Version policy and compatibility