Skip to content
AGH RuntimeAPI Reference

Providers

AGH Providers HTTP endpoints.

Audience
Operators running durable agent work
Focus
API Reference guidance shaped for scanability, day-two clarity, and operator context.
GET/api/model-catalog/models

Query Parameters

provider_id?string

Filter by AGH provider id

view?string

Catalog view; defaults to curated

Value in

  • "curated"
  • "all"
source_id?string

Filter by catalog source id

refresh?boolean

Refresh sources before listing models

include_stale?boolean

Include stale source rows in the merged projection

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/model-catalog/models"
{  "models": [    {      "availability_state": "string",      "available": true,      "context_window": 0,      "cost": {        "cache_read_per_million": 0,        "cache_write_per_million": 0,        "input_per_million": 0,        "output_per_million": 0,        "reasoning_per_million": 0      },      "curated": true,      "default_reasoning_effort": "none",      "deprecated": true,      "display_name": "string",      "featured": true,      "hidden": true,      "last_error": "string",      "max_input_tokens": 0,      "max_output_tokens": 0,      "model_id": "string",      "provider_id": "string",      "reasoning_efforts": [        "none"      ],      "reasoning_source": "acp",      "refreshed_at": "string",      "release_date": "string",      "sources": [        {          "last_error": "string",          "priority": 0,          "refreshed_at": "string",          "source_id": "string",          "source_kind": "string",          "stale": true        }      ],      "stale": true,      "supports_reasoning": true,      "supports_tools": true    }  ]}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
POST/api/model-catalog/models/refresh

Request Body

application/json

JSON request body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/model-catalog/models/refresh" \  -H "Content-Type: application/json" \  -d '{}'
{  "error": "string",  "sources": [    {      "last_error": "string",      "last_refresh": "string",      "last_success": "string",      "next_refresh": "string",      "priority": 0,      "provider_id": "string",      "refresh_state": "string",      "row_count": 0,      "source_id": "string",      "source_kind": "string",      "stale": true    }  ]}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "error": "string",  "sources": [    {      "last_error": "string",      "last_refresh": "string",      "last_success": "string",      "next_refresh": "string",      "priority": 0,      "provider_id": "string",      "refresh_state": "string",      "row_count": 0,      "source_id": "string",      "source_kind": "string",      "stale": true    }  ]}
GET/api/model-catalog/providers/{provider_id}/models

Path Parameters

provider_id*string

AGH provider id

Query Parameters

view?string

Catalog view; defaults to curated

Value in

  • "curated"
  • "all"
source_id?string

Filter by catalog source id

refresh?boolean

Refresh sources before listing models

include_stale?boolean

Include stale source rows in the merged projection

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/model-catalog/providers/string/models"
{  "models": [    {      "availability_state": "string",      "available": true,      "context_window": 0,      "cost": {        "cache_read_per_million": 0,        "cache_write_per_million": 0,        "input_per_million": 0,        "output_per_million": 0,        "reasoning_per_million": 0      },      "curated": true,      "default_reasoning_effort": "none",      "deprecated": true,      "display_name": "string",      "featured": true,      "hidden": true,      "last_error": "string",      "max_input_tokens": 0,      "max_output_tokens": 0,      "model_id": "string",      "provider_id": "string",      "reasoning_efforts": [        "none"      ],      "reasoning_source": "acp",      "refreshed_at": "string",      "release_date": "string",      "sources": [        {          "last_error": "string",          "priority": 0,          "refreshed_at": "string",          "source_id": "string",          "source_kind": "string",          "stale": true        }      ],      "stale": true,      "supports_reasoning": true,      "supports_tools": true    }  ]}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
POST/api/model-catalog/providers/{provider_id}/models/curate

Path Parameters

provider_id*string

AGH provider id

Request Body

application/json

JSON request body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/model-catalog/providers/string/models/curate" \  -H "Content-Type: application/json" \  -d '{    "model_id": "string"  }'
{  "apply": {    "active_config_hash": "string",    "active_generation": 0,    "agent_name": "string",    "applied": true,    "apply_record_id": "string",    "lifecycle": "live",    "next_action": "none",    "partial_failures": [      {        "diagnostic": {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        },        "subsystem": "string"      }    ],    "restart_required": true,    "restart_scope": "string",    "scope": "global",    "section": "string",    "skipped": true,    "skipped_reason": "string",    "warnings": [      "string"    ],    "workspace_id": "string",    "write_target": "global-config"  },  "model": {    "availability_state": "string",    "available": true,    "context_window": 0,    "cost": {      "cache_read_per_million": 0,      "cache_write_per_million": 0,      "input_per_million": 0,      "output_per_million": 0,      "reasoning_per_million": 0    },    "curated": true,    "default_reasoning_effort": "none",    "deprecated": true,    "display_name": "string",    "featured": true,    "hidden": true,    "last_error": "string",    "max_input_tokens": 0,    "max_output_tokens": 0,    "model_id": "string",    "provider_id": "string",    "reasoning_efforts": [      "none"    ],    "reasoning_source": "acp",    "refreshed_at": "string",    "release_date": "string",    "sources": [      {        "last_error": "string",        "priority": 0,        "refreshed_at": "string",        "source_id": "string",        "source_kind": "string",        "stale": true      }    ],    "stale": true,    "supports_reasoning": true,    "supports_tools": true  }}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
POST/api/model-catalog/providers/{provider_id}/models/refresh

Path Parameters

provider_id*string

AGH provider id

Request Body

application/json

JSON request body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/model-catalog/providers/string/models/refresh" \  -H "Content-Type: application/json" \  -d '{}'
{  "error": "string",  "sources": [    {      "last_error": "string",      "last_refresh": "string",      "last_success": "string",      "next_refresh": "string",      "priority": 0,      "provider_id": "string",      "refresh_state": "string",      "row_count": 0,      "source_id": "string",      "source_kind": "string",      "stale": true    }  ]}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "error": "string",  "sources": [    {      "last_error": "string",      "last_refresh": "string",      "last_success": "string",      "next_refresh": "string",      "priority": 0,      "provider_id": "string",      "refresh_state": "string",      "row_count": 0,      "source_id": "string",      "source_kind": "string",      "stale": true    }  ]}
GET/api/model-catalog/providers/{provider_id}/models/status

Path Parameters

provider_id*string

AGH provider id

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/model-catalog/providers/string/models/status"
{  "sources": [    {      "last_error": "string",      "last_refresh": "string",      "last_success": "string",      "next_refresh": "string",      "priority": 0,      "provider_id": "string",      "refresh_state": "string",      "row_count": 0,      "source_id": "string",      "source_kind": "string",      "stale": true    }  ]}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
GET/api/model-catalog/sources/status

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/model-catalog/sources/status"
{  "sources": [    {      "last_error": "string",      "last_refresh": "string",      "last_success": "string",      "next_refresh": "string",      "priority": 0,      "provider_id": "string",      "refresh_state": "string",      "row_count": 0,      "source_id": "string",      "source_kind": "string",      "stale": true    }  ]}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
GET/api/providers

Response Body

application/json

application/json

curl -X GET "https://example.com/api/providers"
{  "providers": [    {      "auth_status": {        "code": "string",        "env_policy": "string",        "home_policy": "string",        "last_probe_at": "2019-08-24T14:15:22Z",        "login_command": "string",        "message": "string",        "mode": "string",        "state": "string",        "status_command": "string"      },      "default": true,      "display_name": "string",      "name": "string"    }  ]}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
GET/api/providers/{provider_id}

Path Parameters

provider_id*string

AGH provider id

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/api/providers/string"
{  "auth_status": {    "code": "string",    "env_policy": "string",    "home_policy": "string",    "last_probe_at": "2019-08-24T14:15:22Z",    "login_command": "string",    "message": "string",    "mode": "string",    "state": "string",    "status_command": "string"  },  "default": true,  "display_name": "string",  "name": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
POST/api/providers/{provider_id}/auth/probe

Path Parameters

provider_id*string

AGH provider id

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/providers/string/auth/probe"
{  "auth_status": {    "code": "string",    "env_policy": "string",    "home_policy": "string",    "last_probe_at": "2019-08-24T14:15:22Z",    "login_command": "string",    "message": "string",    "mode": "string",    "state": "string",    "status_command": "string"  },  "probe": {    "duration_ms": 0,    "exit_code": 0,    "stderr": "string",    "stdout": "string"  },  "provider": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}
{  "diagnostic": {    "category": "string",    "code": "string",    "data_freshness": "string",    "doc_url": "string",    "evidence": {      "property1": null,      "property2": null    },    "id": "string",    "message": "string",    "severity": "string",    "suggested_command": "string",    "title": "string"  },  "error": "string"}