Integrations API

Integrations connect an agent to upstream systems (CRMs, DMS, custom HTTP tools). This API manages the integration records; gated on integrations.read / integrations.write.

Secrets are write-only

Credentials are passed in a secrets object on create/update — a { key: value } map. They are encrypted at rest and never returned by the API. A GET exposes only secret_keys — the names of configured secrets, not their values.

List & get

GET /api/v1/rest/integrations
GET /api/v1/rest/integrations/:id

Create an integration

POST /api/v1/rest/integrations
{
  "kind":        "http",
  "name":        "Dealer DMS",
  "config":      { "base_url": "https://dms.example" },
  "secrets":     { "api_token": "…" }
}

config is operator-readable and returned as-is; secrets is write-only.

Update & delete

PATCH  /api/v1/rest/integrations/:id
DELETE /api/v1/rest/integrations/:id

Pass secrets on PATCH to rotate or add credentials.