Octop Providers API: Configure LLM Providers and Models
The Providers API lets you configure which LLM providers and models your agents use. Providers can be per-user (created by any authenticated user and visible only to them) or admin-global (created under /api/admin/providers and shared across all accounts). All agents reference providers by name when selecting a model.
Endpoints
Create a provider
Provide a name, a kind, and the connection details for your chosen LLM service.
API keys are stored encrypted at rest and will not appear in plaintext in any GET response. If you need to update a key, send a PATCH request with the new api_key value.
Test a provider
After creating a provider, verify the connection is healthy by calling its test endpoint. Octop sends a minimal model request with a timeout. For embedding providers, it probes the embeddings endpoint instead. Common authentication, quota, rate-limit, and provider-outage failures are returned as localized guidance when Octop can classify the upstream error.
Pass model_id or embedding: true in the JSON body when you want to test a specific chat or embedding model.
List resolved models
GET /models returns the combined list of models available across all providers enabled for your account. Use the model values from this list when creating or updating agents.
Set the active model
The active model is the system-wide default used when an agent does not specify a default_model. Only admins can change it.
Deleting a provider that is still referenced by one or more agents returns 409 PROVIDER_REFERENCED. Update or delete the dependent agents before removing the provider.
Admin-managed shared providers
Admins can create providers that are visible to every user by posting to /api/admin/providers instead of /api/providers. The request body is identical. Use PATCH /admin/providers/{id} and DELETE /admin/providers/{id} to manage these shared rows. Regular users can list and test shared providers but cannot modify or delete them.
ACP (Agent Client Protocol)
The ACP endpoints let you configure external runner connections that agents can invoke as tools. These endpoints are separate from provider configuration but live in the same authentication context.
See the ACP integration guide for the full runner object schema and setup examples.

