# Omni Settings

> Read and update global application settings: system prompts, thinking budget, IP filters, payload rules, combo defaults, and require-login configuration.

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

---

<!-- generated by src/lib/agentSkills/generator.ts; manual edits will be overwritten -->

## Overview

Read and update global application settings: system prompts, thinking budget, IP filters, payload rules, combo defaults, and require-login configuration.

## 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/settings/memory

Get memory settings

Returns the extended memory settings including 7 new fields added in plan 21 (embeddingSource, embeddingProviderModel, transformersEnabled, staticEnabled, rerankEnabled, rerankProviderModel, vectorStore).

```bash
curl https://localhost:20128/api/settings/memory \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/memory

Update memory settings

Update any subset of the extended memory settings. All fields are optional; only provided fields are updated. Schema: `MemorySettingsExtendedSchema`.

```bash
curl -X PUT https://localhost:20128/api/settings/memory \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/qdrant

Get Qdrant settings

Returns current Qdrant configuration. The `apiKey` field is never returned raw — use `hasApiKey` / `apiKeyMasked` instead.

```bash
curl https://localhost:20128/api/settings/qdrant \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/qdrant

Update Qdrant settings

Update Qdrant configuration. Pass `apiKey: ""` to remove the stored key. Schema: `QdrantSettingsUpdateSchema`.

```bash
curl -X PUT https://localhost:20128/api/settings/qdrant \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/qdrant/health

Qdrant health probe

Performs a liveness check against the configured Qdrant instance. Returns latency and any connection error (sanitized — no stack traces).

```bash
curl https://localhost:20128/api/settings/qdrant/health \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/qdrant/search

Qdrant semantic search test

Performs a test semantic search against the Qdrant collection. Useful for validating that the integration works end-to-end. Schema: `QdrantSearchSchema`.

```bash
curl -X POST https://localhost:20128/api/settings/qdrant/search \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/qdrant/cleanup

Clean up expired Qdrant points

Removes Qdrant points for memories that have expired or exceeded the configured retention window.

```bash
curl -X POST https://localhost:20128/api/settings/qdrant/cleanup \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/qdrant/embedding-models

List Qdrant embedding models

Returns the list of embedding models available for use with Qdrant.

```bash
curl https://localhost:20128/api/settings/qdrant/embedding-models \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings

Get application settings

```bash
curl https://localhost:20128/api/settings \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PATCH /api/settings

Update settings

```bash
curl -X PATCH https://localhost:20128/api/settings \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/purge-request-history

Clear request log history

Deletes `call_logs`, legacy `request_detail_logs`, and local request artifact files under `DATA_DIR/call_logs`.

```bash
curl -X POST https://localhost:20128/api/settings/purge-request-history \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/compression

Get global compression settings

```bash
curl https://localhost:20128/api/settings/compression \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/compression

Update global compression settings

```bash
curl -X PUT https://localhost:20128/api/settings/compression \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/compression/mcp-accessibility

Get the MCP tool-output accessibility (trimming) config

```bash
curl https://localhost:20128/api/settings/compression/mcp-accessibility \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/compression/mcp-accessibility

Update the MCP tool-output accessibility (trimming) config

Partial-merge update. Numeric floors (e.g. a maxTextChars below the truncation-tail reserve) are folded back to the safe defaults server-side, so the response reflects the effective config.

```bash
curl -X PUT https://localhost:20128/api/settings/compression/mcp-accessibility \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/payload-rules

Get payload rules configuration

Returns the current payload rules used to mutate outgoing request payloads before they
are sent upstream.

Requires a dashboard management session cookie when management auth is enabled.


```bash
curl https://localhost:20128/api/settings/payload-rules \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/payload-rules

Update payload rules configuration

Persists and hot reloads payload rules. The legacy input field `default-raw` is accepted
on writes and normalized to `defaultRaw` in responses/runtime state.

Requires a dashboard management session cookie when management auth is enabled.


```bash
curl -X PUT https://localhost:20128/api/settings/payload-rules \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/combo-defaults

Get combo default settings

```bash
curl https://localhost:20128/api/settings/combo-defaults \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/proxy

Get proxy settings

```bash
curl https://localhost:20128/api/settings/proxy \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PATCH /api/settings/proxy

Update proxy settings

```bash
curl -X PATCH https://localhost:20128/api/settings/proxy \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/proxy/test

Test proxy connection

```bash
curl -X POST https://localhost:20128/api/settings/proxy/test \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/require-login

Toggle login requirement

```bash
curl -X POST https://localhost:20128/api/settings/require-login \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/ip-filter

Get IP filter configuration

Returns the current IP filter settings including blacklist, whitelist, and temp bans.

```bash
curl https://localhost:20128/api/settings/ip-filter \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/ip-filter

Update IP filter configuration

Configure IP filtering with blacklist/whitelist modes, add/remove individual IPs, and manage temp bans.


```bash
curl -X PUT https://localhost:20128/api/settings/ip-filter \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/system-prompt

Get system prompt configuration

Returns the current system prompt injection settings.

```bash
curl https://localhost:20128/api/settings/system-prompt \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/system-prompt

Update system prompt configuration

```bash
curl -X PUT https://localhost:20128/api/settings/system-prompt \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/thinking-budget

Get thinking budget configuration

Returns the current thinking/reasoning budget settings for AI models.

```bash
curl https://localhost:20128/api/settings/thinking-budget \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/thinking-budget

Update thinking budget configuration

```bash
curl -X PUT https://localhost:20128/api/settings/thinking-budget \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/tags

List Ollama-compatible model tags

Returns models in Ollama /api/tags format for Ollama client compatibility

```bash
curl https://localhost:20128/api/tags \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/quota-store

Get current quota store driver settings

Redis URL is masked in the response (shows only scheme+host).

```bash
curl https://localhost:20128/api/settings/quota-store \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/quota-store

Update quota store driver settings

```bash
curl -X PUT https://localhost:20128/api/settings/quota-store \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/purge-usage-history

Purge usage history

Dashboard-only. Purges stored usage-history records.

```bash
curl -X POST https://localhost:20128/api/settings/purge-usage-history \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/authz-inventory

GET settings › authz inventory

```bash
curl https://localhost:20128/api/settings/authz-inventory \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/auto-disable-accounts

GET settings › auto disable accounts

```bash
curl https://localhost:20128/api/settings/auto-disable-accounts \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/auto-disable-accounts

PUT settings › auto disable accounts

```bash
curl -X PUT https://localhost:20128/api/settings/auto-disable-accounts \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/background-degradation

GET settings › background degradation

```bash
curl https://localhost:20128/api/settings/background-degradation \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/background-degradation

POST settings › background degradation

```bash
curl -X POST https://localhost:20128/api/settings/background-degradation \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PUT /api/settings/background-degradation

PUT settings › background degradation

```bash
curl -X PUT https://localhost:20128/api/settings/background-degradation \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/cache-config

GET settings › cache config

```bash
curl https://localhost:20128/api/settings/cache-config \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/cache-config

PUT settings › cache config

```bash
curl -X PUT https://localhost:20128/api/settings/cache-config \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/cache-metrics

GET settings › cache metrics

```bash
curl https://localhost:20128/api/settings/cache-metrics \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### DELETE /api/settings/cache-metrics

DELETE settings › cache metrics

```bash
curl -X DELETE https://localhost:20128/api/settings/cache-metrics \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/cc-discovery-metrics

GET settings › cc discovery metrics

```bash
curl https://localhost:20128/api/settings/cc-discovery-metrics \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/compression/rules

GET settings › compression › rules

```bash
curl https://localhost:20128/api/settings/compression/rules \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/compression/run-telemetry

GET settings › compression › run telemetry

```bash
curl https://localhost:20128/api/settings/compression/run-telemetry \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/database

GET settings › database

```bash
curl https://localhost:20128/api/settings/database \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/database

PUT settings › database

```bash
curl -X PUT https://localhost:20128/api/settings/database \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PATCH /api/settings/database

PATCH settings › database

```bash
curl -X PATCH https://localhost:20128/api/settings/database \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/database/refresh-stats

POST settings › database › refresh stats

```bash
curl -X POST https://localhost:20128/api/settings/database/refresh-stats \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/database/vacuum

GET settings › database › vacuum

```bash
curl https://localhost:20128/api/settings/database/vacuum \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/database/vacuum

POST settings › database › vacuum

```bash
curl -X POST https://localhost:20128/api/settings/database/vacuum \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/export-json

GET settings › export json

```bash
curl https://localhost:20128/api/settings/export-json \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/favicon

GET settings › favicon

```bash
curl https://localhost:20128/api/settings/favicon \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/feature-flags

GET settings › feature flags

```bash
curl https://localhost:20128/api/settings/feature-flags \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/feature-flags

PUT settings › feature flags

```bash
curl -X PUT https://localhost:20128/api/settings/feature-flags \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/feature-flags

DELETE settings › feature flags

```bash
curl -X DELETE https://localhost:20128/api/settings/feature-flags \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/free-proxies

GET settings › free proxies

```bash
curl https://localhost:20128/api/settings/free-proxies \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### DELETE /api/settings/free-proxies

DELETE settings › free proxies

```bash
curl -X DELETE https://localhost:20128/api/settings/free-proxies \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/free-proxies/{id}/add-to-pool

POST settings › free proxies › <id> › add to pool

```bash
curl -X POST https://localhost:20128/api/settings/free-proxies/{id}/add-to-pool \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/free-proxies/bulk-add-to-pool

POST settings › free proxies › bulk add to pool

```bash
curl -X POST https://localhost:20128/api/settings/free-proxies/bulk-add-to-pool \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/free-proxies/stats

GET settings › free proxies › stats

```bash
curl https://localhost:20128/api/settings/free-proxies/stats \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/free-proxies/sync

POST settings › free proxies › sync

```bash
curl -X POST https://localhost:20128/api/settings/free-proxies/sync \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/import-json

POST settings › import json

```bash
curl -X POST https://localhost:20128/api/settings/import-json \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/lkgp-cache

DELETE settings › lkgp cache

```bash
curl -X DELETE https://localhost:20128/api/settings/lkgp-cache \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/local-corpus

GET settings › local corpus

```bash
curl https://localhost:20128/api/settings/local-corpus \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/local-corpus

POST settings › local corpus

```bash
curl -X POST https://localhost:20128/api/settings/local-corpus \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/local-corpus

DELETE settings › local corpus

```bash
curl -X DELETE https://localhost:20128/api/settings/local-corpus \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/mitm

GET settings › mitm

```bash
curl https://localhost:20128/api/settings/mitm \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/mitm

POST settings › mitm

```bash
curl -X POST https://localhost:20128/api/settings/mitm \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PUT /api/settings/mitm

PUT settings › mitm

```bash
curl -X PUT https://localhost:20128/api/settings/mitm \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/model-aliases

GET settings › model aliases

```bash
curl https://localhost:20128/api/settings/model-aliases \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/model-aliases

POST settings › model aliases

```bash
curl -X POST https://localhost:20128/api/settings/model-aliases \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PUT /api/settings/model-aliases

PUT settings › model aliases

```bash
curl -X PUT https://localhost:20128/api/settings/model-aliases \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/model-aliases

DELETE settings › model aliases

```bash
curl -X DELETE https://localhost:20128/api/settings/model-aliases \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/models-dev

GET settings › models dev

```bash
curl https://localhost:20128/api/settings/models-dev \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/models-dev

POST settings › models dev

```bash
curl -X POST https://localhost:20128/api/settings/models-dev \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/notion

GET settings › notion

```bash
curl https://localhost:20128/api/settings/notion \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/notion

POST settings › notion

```bash
curl -X POST https://localhost:20128/api/settings/notion \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/notion

DELETE settings › notion

```bash
curl -X DELETE https://localhost:20128/api/settings/notion \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/obsidian

GET settings › obsidian

```bash
curl https://localhost:20128/api/settings/obsidian \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/obsidian

POST settings › obsidian

```bash
curl -X POST https://localhost:20128/api/settings/obsidian \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/obsidian

DELETE settings › obsidian

```bash
curl -X DELETE https://localhost:20128/api/settings/obsidian \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/obsidian/webdav

GET settings › obsidian › webdav

```bash
curl https://localhost:20128/api/settings/obsidian/webdav \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/obsidian/webdav

POST settings › obsidian › webdav

```bash
curl -X POST https://localhost:20128/api/settings/obsidian/webdav \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/obsidian/webdav

DELETE settings › obsidian › webdav

```bash
curl -X DELETE https://localhost:20128/api/settings/obsidian/webdav \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### GET /api/settings/oneproxy

GET settings › oneproxy

```bash
curl https://localhost:20128/api/settings/oneproxy \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/oneproxy

POST settings › oneproxy

```bash
curl -X POST https://localhost:20128/api/settings/oneproxy \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/oneproxy

DELETE settings › oneproxy

```bash
curl -X DELETE https://localhost:20128/api/settings/oneproxy \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/oneproxy/rotate

POST settings › oneproxy › rotate

```bash
curl -X POST https://localhost:20128/api/settings/oneproxy/rotate \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/proxies

GET settings › proxies

```bash
curl https://localhost:20128/api/settings/proxies \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/proxies

POST settings › proxies

```bash
curl -X POST https://localhost:20128/api/settings/proxies \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PATCH /api/settings/proxies

PATCH settings › proxies

```bash
curl -X PATCH https://localhost:20128/api/settings/proxies \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/proxies

DELETE settings › proxies

```bash
curl -X DELETE https://localhost:20128/api/settings/proxies \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/proxies/{id}/repair-relay

POST settings › proxies › <id> › repair relay

```bash
curl -X POST https://localhost:20128/api/settings/proxies/{id}/repair-relay \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/proxies/assignments

GET settings › proxies › assignments

```bash
curl https://localhost:20128/api/settings/proxies/assignments \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/proxies/assignments

PUT settings › proxies › assignments

```bash
curl -X PUT https://localhost:20128/api/settings/proxies/assignments \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/proxies/auto-test

POST settings › proxies › auto test

```bash
curl -X POST https://localhost:20128/api/settings/proxies/auto-test \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/proxies/batch-activate

POST settings › proxies › batch activate

```bash
curl -X POST https://localhost:20128/api/settings/proxies/batch-activate \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/proxies/batch-delete

POST settings › proxies › batch delete

```bash
curl -X POST https://localhost:20128/api/settings/proxies/batch-delete \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PUT /api/settings/proxies/bulk-assign

PUT settings › proxies › bulk assign

```bash
curl -X PUT https://localhost:20128/api/settings/proxies/bulk-assign \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/proxies/bulk-import

POST settings › proxies › bulk import

```bash
curl -X POST https://localhost:20128/api/settings/proxies/bulk-import \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/proxies/egress

GET settings › proxies › egress

```bash
curl https://localhost:20128/api/settings/proxies/egress \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/proxies/egress

POST settings › proxies › egress

```bash
curl -X POST https://localhost:20128/api/settings/proxies/egress \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/proxies/health

GET settings › proxies › health

```bash
curl https://localhost:20128/api/settings/proxies/health \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/proxies/migrate

POST settings › proxies › migrate

```bash
curl -X POST https://localhost:20128/api/settings/proxies/migrate \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/proxies/pool

GET settings › proxies › pool

```bash
curl https://localhost:20128/api/settings/proxies/pool \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/proxies/pool

PUT settings › proxies › pool

```bash
curl -X PUT https://localhost:20128/api/settings/proxies/pool \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PATCH /api/settings/proxies/pool

PATCH settings › proxies › pool

```bash
curl -X PATCH https://localhost:20128/api/settings/proxies/pool \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/proxies/pool

DELETE settings › proxies › pool

```bash
curl -X DELETE https://localhost:20128/api/settings/proxies/pool \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/proxy/cloudflare-deploy

POST settings › proxy › cloudflare deploy

```bash
curl -X POST https://localhost:20128/api/settings/proxy/cloudflare-deploy \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/proxy/deno-deploy

POST settings › proxy › deno deploy

```bash
curl -X POST https://localhost:20128/api/settings/proxy/deno-deploy \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/proxy/vercel-deploy

POST settings › proxy › vercel deploy

```bash
curl -X POST https://localhost:20128/api/settings/proxy/vercel-deploy \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/purge-call-logs

POST settings › purge call logs

```bash
curl -X POST https://localhost:20128/api/settings/purge-call-logs \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/purge-detailed-logs

POST settings › purge detailed logs

```bash
curl -X POST https://localhost:20128/api/settings/purge-detailed-logs \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/purge-logs

POST settings › purge logs

```bash
curl -X POST https://localhost:20128/api/settings/purge-logs \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### POST /api/settings/purge-quota-snapshots

POST settings › purge quota snapshots

```bash
curl -X POST https://localhost:20128/api/settings/purge-quota-snapshots \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/quota/state

GET settings › quota › state

```bash
curl https://localhost:20128/api/settings/quota/state \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/quota/state

POST settings › quota › state

```bash
curl -X POST https://localhost:20128/api/settings/quota/state \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/reasoning-routing-rules

GET settings › reasoning routing rules

```bash
curl https://localhost:20128/api/settings/reasoning-routing-rules \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/reasoning-routing-rules

POST settings › reasoning routing rules

```bash
curl -X POST https://localhost:20128/api/settings/reasoning-routing-rules \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/reasoning-routing-rules/{id}

GET settings › reasoning routing rules › <id>

```bash
curl https://localhost:20128/api/settings/reasoning-routing-rules/{id} \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PATCH /api/settings/reasoning-routing-rules/{id}

PATCH settings › reasoning routing rules › <id>

```bash
curl -X PATCH https://localhost:20128/api/settings/reasoning-routing-rules/{id} \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### DELETE /api/settings/reasoning-routing-rules/{id}

DELETE settings › reasoning routing rules › <id>

```bash
curl -X DELETE https://localhost:20128/api/settings/reasoning-routing-rules/{id} \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/reasoning-routing-rules/simulate

POST settings › reasoning routing rules › simulate

```bash
curl -X POST https://localhost:20128/api/settings/reasoning-routing-rules/simulate \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/task-routing

GET settings › task routing

```bash
curl https://localhost:20128/api/settings/task-routing \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### POST /api/settings/task-routing

POST settings › task routing

```bash
curl -X POST https://localhost:20128/api/settings/task-routing \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### PUT /api/settings/task-routing

PUT settings › task routing

```bash
curl -X PUT https://localhost:20128/api/settings/task-routing \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### GET /api/settings/tier-config

GET settings › tier config

```bash
curl https://localhost:20128/api/settings/tier-config \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN"
```

### PUT /api/settings/tier-config

PUT settings › tier config

```bash
curl -X PUT https://localhost:20128/api/settings/tier-config \
  -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 -->
<!-- Thinking budget behavior (preserved curated content — #10169) -->

### GET /api/settings/thinking-budget — behavior

Returns proxy-level thinking/reasoning **request rewrite** settings:

| Field | Meaning |
|-------|---------|
| `mode` | `passthrough` (leave client reasoning alone — **required for Codex visible thinking**), `auto` (**strips** all client thinking fields), `custom`, `adaptive` |
| `customBudget` | Fixed budget when `mode=custom` |
| `effortLevel` | Base effort when `mode=adaptive` |

**Not** compression and **not** "decrypt encrypted reasoning". Full guide: `docs/guides/THINKING_BUDGET.md`.

Example — keep client-controlled reasoning (Codex/Desktop):

```bash
curl -X PUT https://localhost:20128/api/settings/thinking-budget \
  -H "Authorization: Bearer $OMNIROUTE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode":"passthrough","customBudget":10240,"effortLevel":"medium"}'
```

Warning: `mode=auto` deletes `reasoning` / `reasoning_effort` / Claude `thinking` from the outbound body before upstream. That can empty thinking panels even when the client requested Ultra + summary.
<!-- skill:custom-end -->

