# Omni Providers

> Manage provider connections, API keys, OAuth flows, and connection tests via the REST API. List, add, update, remove, and test AI provider integrations across OmniRoute's 327-provider catalog.

- Skill: `diegosouzapw/omni-providers` (Agent Skill)
- Install (CLI): `npx skillmds@latest add diegosouzapw/omni-providers`
- Raw SKILL.md: https://api.skillmd.com/api/skills/diegosouzapw/omni-providers/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: diegosouzapw (https://skillmd.com/u/diegosouzapw)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/diegosouzapw/omni-providers

---

<!-- generated by src/lib/agentSkills/generator.ts; manual edits will be overwritten -->

## Overview

Manage provider connections, API keys, OAuth flows, and connection tests via the REST API. List, add, update, remove, and test AI provider integrations across OmniRoute's 327-provider catalog.

## Authentication

All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development.

## Endpoints

### GET /api/providers

List provider connections

```bash
curl https://localhost:20128/api/providers \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers

Create provider connection

```bash
curl -X POST https://localhost:20128/api/providers \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/{id}

Get provider connection

```bash
curl https://localhost:20128/api/providers/{id} \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PATCH /api/providers/{id}

Update provider connection

```bash
curl -X PATCH https://localhost:20128/api/providers/{id} \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/providers/{id}

Delete provider connection

```bash
curl -X DELETE https://localhost:20128/api/providers/{id} \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/{id}/test

Test provider connection

```bash
curl -X POST https://localhost:20128/api/providers/{id}/test \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/{id}/models

List models for a provider

```bash
curl https://localhost:20128/api/providers/{id}/models \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/providers/cursor/agent-availability

Check cursor-agent availability

Credential-free, informational check for whether cursor-agent is installed and authenticated on this host — backs the dashboard's dismissible install-nudge banner. Returns only cursorAgentAvailable (boolean); never tokens or machineId.

```bash
curl https://localhost:20128/api/providers/cursor/agent-availability \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/test-batch

Test multiple providers at once

```bash
curl -X POST https://localhost:20128/api/providers/test-batch \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/validate

Validate provider credentials

```bash
curl -X POST https://localhost:20128/api/providers/validate \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/client

Get client-side provider info

```bash
curl https://localhost:20128/api/providers/client \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/agy-auth/import

Import an Antigravity CLI (agy) token file as an `agy` connection

```bash
curl -X POST https://localhost:20128/api/providers/agy-auth/import \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/agy-auth/import-bulk

Bulk-import multiple Antigravity CLI (agy) token files (up to 50)

```bash
curl -X POST https://localhost:20128/api/providers/agy-auth/import-bulk \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/agy-auth/zip-extract

Extract `.json` token files from an uploaded ZIP for agy bulk import

```bash
curl -X POST https://localhost:20128/api/providers/agy-auth/zip-extract \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/agy-auth/apply-local

Auto-detect and import the local Antigravity CLI (agy) login from disk

```bash
curl -X POST https://localhost:20128/api/providers/agy-auth/apply-local \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/provider-nodes

List provider nodes

```bash
curl https://localhost:20128/api/provider-nodes \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/provider-nodes

Create provider node

```bash
curl -X POST https://localhost:20128/api/provider-nodes \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PATCH /api/provider-nodes/{id}

Update provider node

```bash
curl -X PATCH https://localhost:20128/api/provider-nodes/{id} \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/provider-nodes/{id}

Delete provider node

```bash
curl -X DELETE https://localhost:20128/api/provider-nodes/{id} \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/provider-nodes/validate

Validate a provider node

```bash
curl -X POST https://localhost:20128/api/provider-nodes/validate \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/provider-models

List provider models

```bash
curl https://localhost:20128/api/provider-models \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/providers/{id}/cc-alias

GET providers › <id> › cc alias

```bash
curl https://localhost:20128/api/providers/{id}/cc-alias \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/providers/{id}/cc-alias

PUT providers › <id> › cc alias

```bash
curl -X PUT https://localhost:20128/api/providers/{id}/cc-alias \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/{id}/chatgpt-web-codex-doctor

GET providers › <id> › chatgpt web codex doctor

```bash
curl https://localhost:20128/api/providers/{id}/chatgpt-web-codex-doctor \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/{id}/claude-auth/apply-local

POST providers › <id> › claude auth › apply local

```bash
curl -X POST https://localhost:20128/api/providers/{id}/claude-auth/apply-local \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/{id}/claude-auth/export

POST providers › <id> › claude auth › export

```bash
curl -X POST https://localhost:20128/api/providers/{id}/claude-auth/export \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/{id}/codex-auth/apply-local

POST providers › <id> › codex auth › apply local

```bash
curl -X POST https://localhost:20128/api/providers/{id}/codex-auth/apply-local \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/{id}/codex-auth/export

POST providers › <id> › codex auth › export

```bash
curl -X POST https://localhost:20128/api/providers/{id}/codex-auth/export \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/{id}/interception-rules

GET providers › <id> › interception rules

```bash
curl https://localhost:20128/api/providers/{id}/interception-rules \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/providers/{id}/interception-rules

PUT providers › <id> › interception rules

```bash
curl -X PUT https://localhost:20128/api/providers/{id}/interception-rules \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/providers/{id}/interception-rules

DELETE providers › <id> › interception rules

```bash
curl -X DELETE https://localhost:20128/api/providers/{id}/interception-rules \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/{id}/login

POST providers › <id> › login

```bash
curl -X POST https://localhost:20128/api/providers/{id}/login \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/{id}/param-filters

GET providers › <id> › param filters

```bash
curl https://localhost:20128/api/providers/{id}/param-filters \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/providers/{id}/param-filters

PUT providers › <id> › param filters

```bash
curl -X PUT https://localhost:20128/api/providers/{id}/param-filters \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/providers/{id}/param-filters

DELETE providers › <id> › param filters

```bash
curl -X DELETE https://localhost:20128/api/providers/{id}/param-filters \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/{id}/refresh

POST providers › <id> › refresh

```bash
curl -X POST https://localhost:20128/api/providers/{id}/refresh \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/{id}/refresh-cursor

POST providers › <id> › refresh cursor

```bash
curl -X POST https://localhost:20128/api/providers/{id}/refresh-cursor \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/{id}/refresh-token

POST providers › <id> › refresh token

```bash
curl -X POST https://localhost:20128/api/providers/{id}/refresh-token \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/{id}/sync-models

POST providers › <id> › sync models

```bash
curl -X POST https://localhost:20128/api/providers/{id}/sync-models \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/bulk

POST providers › bulk

```bash
curl -X POST https://localhost:20128/api/providers/bulk \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/bulk-web-session

POST providers › bulk web session

```bash
curl -X POST https://localhost:20128/api/providers/bulk-web-session \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/claude-auth/import

POST providers › claude auth › import

```bash
curl -X POST https://localhost:20128/api/providers/claude-auth/import \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/claude-auth/import-bulk

POST providers › claude auth › import bulk

```bash
curl -X POST https://localhost:20128/api/providers/claude-auth/import-bulk \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/claude-auth/zip-extract

POST providers › claude auth › zip extract

```bash
curl -X POST https://localhost:20128/api/providers/claude-auth/zip-extract \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/codex-auth/import

POST providers › codex auth › import

```bash
curl -X POST https://localhost:20128/api/providers/codex-auth/import \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/codex-auth/import-bulk

POST providers › codex auth › import bulk

```bash
curl -X POST https://localhost:20128/api/providers/codex-auth/import-bulk \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/codex-auth/zip-extract

POST providers › codex auth › zip extract

```bash
curl -X POST https://localhost:20128/api/providers/codex-auth/zip-extract \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/command-code/auth/apply

POST providers › command code › auth › apply

```bash
curl -X POST https://localhost:20128/api/providers/command-code/auth/apply \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/command-code/auth/callback

POST providers › command code › auth › callback

```bash
curl -X POST https://localhost:20128/api/providers/command-code/auth/callback \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/command-code/auth/start

POST providers › command code › auth › start

```bash
curl -X POST https://localhost:20128/api/providers/command-code/auth/start \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/command-code/auth/status

GET providers › command code › auth › status

```bash
curl https://localhost:20128/api/providers/command-code/auth/status \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/command-code/auth/status

POST providers › command code › auth › status

```bash
curl -X POST https://localhost:20128/api/providers/command-code/auth/status \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/expiration

GET providers › expiration

```bash
curl https://localhost:20128/api/providers/expiration \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/providers/free-onboarding

GET providers › free onboarding

```bash
curl https://localhost:20128/api/providers/free-onboarding \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/free-onboarding

POST providers › free onboarding

```bash
curl -X POST https://localhost:20128/api/providers/free-onboarding \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/health-autopilot

GET providers › health autopilot

```bash
curl https://localhost:20128/api/providers/health-autopilot \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/health-autopilot/actions

POST providers › health autopilot › actions

```bash
curl -X POST https://localhost:20128/api/providers/health-autopilot/actions \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/health-matrix

GET providers › health matrix

```bash
curl https://localhost:20128/api/providers/health-matrix \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/import

POST providers › import

```bash
curl -X POST https://localhost:20128/api/providers/import \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/openrouter-stats

GET providers › openrouter stats

```bash
curl https://localhost:20128/api/providers/openrouter-stats \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/providers/quota-windows

GET providers › quota windows

```bash
curl https://localhost:20128/api/providers/quota-windows \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/volcengine-plan/connect

POST providers › volcengine plan › connect

```bash
curl -X POST https://localhost:20128/api/providers/volcengine-plan/connect \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/volcengine-plan/connect/{sessionId}/cancel

POST providers › volcengine plan › connect › <sessionId> › cancel

```bash
curl -X POST https://localhost:20128/api/providers/volcengine-plan/connect/{sessionId}/cancel \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/volcengine-plan/connect/{sessionId}/code

POST providers › volcengine plan › connect › <sessionId> › code

```bash
curl -X POST https://localhost:20128/api/providers/volcengine-plan/connect/{sessionId}/code \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/volcengine-plan/connect/{sessionId}/identity

POST providers › volcengine plan › connect › <sessionId> › identity

```bash
curl -X POST https://localhost:20128/api/providers/volcengine-plan/connect/{sessionId}/identity \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/volcengine-plan/connect/{sessionId}/resend

POST providers › volcengine plan › connect › <sessionId> › resend

```bash
curl -X POST https://localhost:20128/api/providers/volcengine-plan/connect/{sessionId}/resend \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/providers/volcengine-plan/connect/{sessionId}/status

GET providers › volcengine plan › connect › <sessionId> › status

```bash
curl https://localhost:20128/api/providers/volcengine-plan/connect/{sessionId}/status \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/providers/web-session-contract

GET providers › web session contract

```bash
curl https://localhost:20128/api/providers/web-session-contract \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/providers/zed/discover

POST providers › zed › discover

```bash
curl -X POST https://localhost:20128/api/providers/zed/discover \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/zed/import

POST providers › zed › import

```bash
curl -X POST https://localhost:20128/api/providers/zed/import \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/providers/zed/manual-import

POST providers › zed › manual import

```bash
curl -X POST https://localhost:20128/api/providers/zed/manual-import \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

## Payloads

See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/openapi.yaml` for detailed request/response schemas.

<!-- skill:custom-start -->
## Additional endpoints

### POST /api/providers/{id}/refresh

Rotate / refresh OAuth tokens or re-validate credentials for a provider connection. Useful after token expiration or when credentials need to be renewed without deleting the connection.

```bash
curl -X POST https://localhost:20128/api/providers/{id}/refresh \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/provider-metrics

Retrieve aggregated usage and performance metrics for all provider connections (request counts, error rates, latency percentiles, token usage). Used by dashboards and Auto-Combo scoring.

```bash
curl https://localhost:20128/api/provider-metrics \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

**Response example:**
```json
{
  "providers": [
    {
      "id": "my-openai",
      "requestCount": 1240,
      "errorRate": 0.02,
      "p50LatencyMs": 340,
      "p99LatencyMs": 1200,
      "tokensIn": 500000,
      "tokensOut": 250000
    }
  ]
}
```

### GET /api/providers/health-matrix

Returns a health-matrix view of all providers with per-connection status, circuit-breaker state, and cooldown expiry. Useful for debugging routing decisions.

```bash
curl https://localhost:20128/api/providers/health-matrix \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```
<!-- skill:custom-end -->

