Skip to Content
API ReferenceOverview

API Reference Overview

The Slim.io REST API enables programmatic access to connectors, scans, findings, and governance features. All endpoints are JSON-based and require authentication via Firebase JWT tokens.

Base URLs

EnvironmentBase URL
Productionhttps://api.slim.io/api/v1/
Developmenthttps://dev-api.slim.io/api/v1/

All API paths referenced in this documentation are relative to the base URL. For example, GET /connectors means GET https://api.slim.io/api/v1/connectors.

Versioning

The API is versioned via URL path. The current version is v1. When breaking changes are introduced, a new version (v2) will be released with a migration period.

Request Format

  • Content-Type: application/json for all request bodies
  • Authorization: Bearer <firebase-jwt-token> header on all requests
  • YAML Bodies: Policy and classifier endpoints also accept application/yaml content type

Response Format

All responses follow a consistent envelope:

{ "status": "success", "data": { ... }, "metadata": { "request_id": "req-abc123", "timestamp": "2024-03-15T14:30:00Z" } }

Error Responses

{ "status": "error", "error": { "code": "CONNECTOR_NOT_FOUND", "message": "No connector found with ID 'conn-xyz'", "details": {} }, "metadata": { "request_id": "req-abc456", "timestamp": "2024-03-15T14:30:00Z" } }

Common HTTP Status Codes

CodeMeaning
200Success
201Resource created
400Bad request (invalid parameters)
401Unauthorized (missing or invalid token)
403Forbidden (insufficient permissions)
404Resource not found
409Conflict (duplicate resource)
429Rate limit exceeded
500Internal server error

Pagination

List endpoints support cursor-based pagination:

GET /api/v1/connectors?limit=20&cursor=eyJsYXN0X2lkIjoiY29ubi0xMjMifQ

Response includes a next_cursor field when more results are available:

{ "status": "success", "data": [ ... ], "pagination": { "limit": 20, "next_cursor": "eyJsYXN0X2lkIjoiY29ubi0xNDMifQ", "has_more": true } }

The default page size is 20 items. Maximum page size is 100. Cursors are opaque strings — do not parse or construct them manually.

API Sections

Last updated on