AI
List AI providers
A workspace's AI providers: the keys it keeps for frontier labs (anthropic, openai, gemini, xai, mistral, deepseek), model platforms (azure_openai, openrouter, groq, together, fireworks, cerebras) and self-hosted endpoints (anthropic_endpoint, openai_endpoint), each with its group, its config, the models it offered when last checked and its last error.
/workspaces/{workspace}/ai/providersKeys are sealed and never returned; secret_hint shows a key’s last four characters. g1t hosts no model and bills nothing for them: they run on the workspace’s own account. Members only.
group is labs, platforms or self_hosted. secret_hint shows the end of the key; the key itself is never returned. models are those the provider offered when last checked. See AI.
- Authentication: Required. Send an access token as
Authorization: Bearer. - MCP tool:
aiwithactionlist_providers, and the same inputs - Scope: An access token needs
workspace:read.
Path parameters
Section titled “Path parameters”| Name | Type | Required | Description |
|---|---|---|---|
workspace |
string | Yes | The workspace’s slug, e.g. “flagon-io”. |
Example request
Section titled “Example request”curl https://api.g1t.sh/workspaces/flagon-io/ai/providers \ -H "Authorization: Bearer $G1T_TOKEN"Example response
Section titled “Example response”A successful request answers 200 with:
[ { "id": "ai_01kpx4n8r3g9s0v5w7x1z2a3be", "workspace": "flagon-io", "provider": "anthropic", "group": "labs", "name": "Anthropic", "config": {}, "secret_hint": "…Q2fA", "created_by": "syntaqx", "created_at": "2026-10-04T15:42:07.318Z", "last_used_at": "2026-10-14T09:12:44.051Z", "last_error": null, "models": [ "claude-haiku-4-5", "claude-sonnet-4-5", "claude-opus-4-1" ] }, { "id": "ai_01kpx4n8r3g9s0v5w7x1z2a3bf", "workspace": "flagon-io", "provider": "openai_endpoint", "group": "self_hosted", "name": "vLLM", "config": { "base_url": "https://llm.example.com/v1", "auth_header": "authorization", "model": "qwen3-coder" }, "secret_hint": "…k9Lm", "created_by": "syntaqx", "created_at": "2026-10-14T10:03:51.902Z", "last_used_at": null, "last_error": null, "models": [ "qwen3-coder" ] }]Errors
Section titled “Errors”A failed request answers with one of these statuses and a body like {"error": {"code": "not_found", "message": "Repository not found."}}. See errors.
| Status | Code | When |
|---|---|---|
| 401 | unauthenticated |
A token is required, or the one sent is not valid. |
| 403 | forbidden |
The token is valid but not allowed to do this, such as a member-only change, or a token without the scope it needs. |
| 404 | not_found |
It does not exist, or you cannot see it. |
| 422 | invalid |
The input is not valid. message says which field and why. |