Reference

Technical reference for APIs, terminology, and integration details.

This section provides technical reference materials for integrating with OpenIndustrial.


API Reference

REST API

The REST API provides programmatic access to your warm queries and workspace resources.

Quick reference:

MethodEndpointPurpose
GET/oi-api/warm-queries/{lookup}Execute a named warm query
POST/oi-api/warm-queriesExecute an ad-hoc query
GET/oi-api/data-stores/{lookup}/containersList containers in a database
GET/oi-api/data-stores/{store}/databases/{database}/tables/{table}List documents in a table
GET/oi-api/openapiThe OpenAPI 3.1 spec for this workspace

Full REST API Reference →

GraphQL API

For more complex queries and graph-based access to workspace resources.

Full GraphQL Reference →


Authentication

API Key Authentication

Include your API key in the request header:

Authorization: Bearer YOUR_API_KEY

Getting your API key:

  1. Go to workspace settings
  2. Navigate to API Keys section
  3. Generate a new key
  4. Copy and store securely (shown only once)

Key Management

ActionHow
Generate keyWorkspace settings → API Keys → Generate
Revoke keyWorkspace settings → API Keys → Revoke
View usageWorkspace settings → API Keys → Usage
Thinking Tip:

Keep your API key secure. Don't commit it to source control. Use environment variables or secrets management.


Base URLs

All consumer API endpoints live under /oi-api/ on your own workspace host.

https://{your-workspace-host}/oi-api/

There is no separate API hostname and no workspace id in the path - the host you sign in to is the host you call.


Response Formats

Success Response

{
  "data": { ... },
  "meta": {
    "requestId": "abc123",
    "timestamp": "2026-01-19T10:30:00Z"
  }
}

Error Response

{
  "error": {
    "code": "RESOURCE_NOT_FOUND",
    "message": "Query 'my-query' not found",
    "details": { ... }
  },
  "meta": {
    "requestId": "abc123",
    "timestamp": "2026-01-19T10:30:00Z"
  }
}

Common Error Codes

CodeHTTP StatusMeaning
UNAUTHORIZED401Invalid or missing API key
FORBIDDEN403Valid key, insufficient permissions
RESOURCE_NOT_FOUND404Resource doesn't exist
VALIDATION_ERROR400Invalid request parameters
RATE_LIMITED429Too many requests
INTERNAL_ERROR500Server error

Rate Limits

TierRequests/secondRequests/minute
Standard10300
Enterprise501500

When rate limited, the response includes:

X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1705661400

Best practices:

  • Implement exponential backoff
  • Cache responses where appropriate
  • Use webhooks instead of polling (when available)

Glossary

Quick access to terminology used throughout OpenIndustrial.

Full Glossary →

Key Terms

TermDefinition
ConnectionEntry point for telemetry data (IoT Hub, Event Hub)
SurfaceQueryable workspace containing warm queries
Warm QuerySaved KQL query with API endpoint
ProposalAI-generated change awaiting your approval

SDKs & Tools

MCP Integration

Connect any MCP-native AI to your OpenIndustrial workspace:

  • Claude Desktop
  • VS Code with Copilot
  • Any MCP-compatible agent

MCP Integration Guide →

Coming Soon

  • Python SDK
  • TypeScript/JavaScript SDK
  • CLI tools

Additional Resources

On this page