Inversion
Back to API Reference

REST API Reference

Comprehensive documentation for Inversion's RESTful API endpoints, authentication, and usage.

Overview

Inversion's REST API provides a comprehensive interface for integrating with our platform. The API follows RESTful principles and uses standard HTTP methods to perform operations on resources.

Base URL

https://api.inversion.ai/v1

Authentication

All API requests must be authenticated using API keys. You can obtain an API key from your Inversion dashboard. API keys should be included in the Authorization header of your requests.

Authorization: Bearer YOUR_API_KEY

Security Note

Keep your API keys secure and never expose them in client-side code. If you believe your API key has been compromised, you can regenerate it from your dashboard.

Request Format

The API accepts request data in JSON format. Set the Content-Type header to application/json for all requests that include a request body.

Content-Type: application/json

Response Format

All responses are returned in JSON format. Successful responses include a data field containing the requested information. Error responses include an error field with details about what went wrong.

Successful Response Example

{ "data": { "id": "proc_123456", "status": "completed", "created_at": "2023-06-15T10:30:00Z", "results": { // Result data } } }

Error Response Example

{ "error": { "code": "invalid_request", "message": "The request was invalid. Please check your parameters and try again.", "details": { "field": "source_id", "issue": "required" } } }

API Endpoints

The Inversion REST API is organized around resources. Each resource has specific endpoints for performing operations on that resource.

Data Sources

MethodEndpointDescription
GET/sourcesList all data sources
POST/sourcesCreate a new data source
GET/sources/{source_id}Get a specific data source
PUT/sources/{source_id}Update a data source
DELETE/sources/{source_id}Delete a data source

Processes

MethodEndpointDescription
GET/processesList all processes
POST/processesCreate and start a new process
GET/processes/{process_id}Get a specific process
PUT/processes/{process_id}Update a process
DELETE/processes/{process_id}Cancel and delete a process

Results

MethodEndpointDescription
GET/resultsList all results
GET/results/{result_id}Get a specific result
DELETE/results/{result_id}Delete a result

Detailed Documentation

For detailed information about each endpoint, including request parameters, response fields, and examples, please refer to the specific endpoint documentation.

Rate Limiting

To ensure the stability and availability of our API, we implement rate limiting. The current limits are:

  • 100 requests per minute for standard accounts
  • 1,000 requests per minute for enterprise accounts

Rate limit information is included in the response headers:

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1623760800

Pagination

List endpoints support pagination using the limit and offset parameters:

GET /sources?limit=10&offset=20

Pagination information is included in the response:

{ "data": [...], "pagination": { "total": 45, "limit": 10, "offset": 20, "next": "/sources?limit=10&offset=30", "previous": "/sources?limit=10&offset=10" } }

Versioning

The API version is included in the URL path. The current version is v1. We maintain backward compatibility within a major version, but breaking changes may be introduced in new major versions.

Related Documentation

Authentication

Learn how to authenticate your API requests.

Read More →

Endpoints

Detailed documentation for all API endpoints.

Read More →

Error Handling

Learn how to handle API errors effectively.

Read More →