Generated from the live OpenAPI document — 2026-10-19.This group has no curated guide page.All routes require Authorization: Bearer atamaia_… and return ApiEnvelope<T>({ ok, requestId, data, error, errorCode, count, hint }); the schemas below show thedata payload. * marks required properties.

Operations

MethodPathSummary / bodyResponses
POST /api/ai/broadcast 200 BroadcastResponse
GET /api/ai/catalog 200 PagedResultOfAIProviderDto
GET /api/ai/catalog/{id} 200 AIProviderDetailDto
POST /api/ai/chat 200 ChatResponse
GET /api/ai/credentials 200 PagedResultOfTenantProviderCredentialDto
POST /api/ai/credentials 200 TenantProviderCredentialDto
DELETE /api/ai/credentials/{id} 200
POST /api/ai/credentials/{id}/validate 200 ValidateCredentialResult
GET /api/ai/model-groups 200 PagedResultOfAIModelGroupDto
POST /api/ai/model-groups 200 AIModelGroupDetailDto
DELETE /api/ai/model-groups/{id} 200
GET /api/ai/model-groups/{id} 200 AIModelGroupDetailDto
PATCH /api/ai/model-groups/{id} 200 AIModelGroupDetailDto
POST /api/ai/model-groups/{id}/members 200 AIModelGroupDetailDto
DELETE /api/ai/model-groups/{id}/members/{modelId} 200 AIModelGroupDetailDto
GET /api/ai/model-groups/by-name/{name} 200 AIModelGroupDetailDto
GET /api/ai/models 200 PagedResultOfAIModelDto
POST /api/ai/models 200 AIModelDto
DELETE /api/ai/models/{id} 200
GET /api/ai/models/{id} 200 AIModelDto
PATCH /api/ai/models/{id} 200 AIModelDto
POST /api/ai/models/{id}/test 200 ModelTestResult
GET /api/ai/models/search 200 GlobalSearchHit[]
GET /api/ai/providers 200 PagedResultOfAIProviderDto
POST /api/ai/providers 200 AIProviderDto
DELETE /api/ai/providers/{id} 200
GET /api/ai/providers/{id} 200 AIProviderDetailDto
PATCH /api/ai/providers/{id} 200 AIProviderDto
GET /api/ai/providers/{id}/catalog 200 ProviderCatalogResult
POST /api/ai/providers/{id}/models/sync 200 ModelSyncResult
POST /api/ai/providers/{id}/sync-key 200 SyncKeyResult
POST /api/ai/providers/{id}/test 200 ModelTestResult
GET /api/ai/providers/search 200 GlobalSearchHit[]
GET /api/ai/resolve/{modelId} 200 AIModelDto
GET /api/ai/route-policy 200 RoutePolicyDto
PUT /api/ai/route-policy 200 RoutePolicyDto
GET /api/ai/routes 200 PagedResultOfAIRouteConfigDto
POST /api/ai/routes 200 AIRouteConfigDto
DELETE /api/ai/routes/{id} 200
PATCH /api/ai/routes/{id} 200 AIRouteConfigDto
GET /api/ai/routing-status 200 RoutingStatusDto
POST /api/ai/sync-pricing 200 SyncPricingResult

Schemas

Request and response shapes referenced by the operations above. Nested types named here are also defined under their own group or inthe group index.

AIModelDto

PropertyTypeDescription
id int64
guid uuid
providerId int64
providerName null,string
providerPrefix null,string
modelId string
fullModelId null,string
displayName null,string
enabled boolean
available boolean
contextLength int32
maxCompletionTokens int32
isLocal boolean
approvedForAgent boolean
approvedForChat boolean
enableHydration boolean
hydrationIdentityId int64
localModelPath null,string
isEmbedding boolean
specDecode null,string
isLockedDefault boolean
temperature float
maxTokens int32
topP float
topK int32
minP float
repeatPenalty float
frequencyPenalty float
presencePenalty float
systemPrompt null,string
notes null,string
inputCostPer1M double
outputCostPer1M double
cacheReadCostPer1M double
supportsTools null,boolean
supportsVision null,boolean
supportsReasoning null,boolean
supportsDecisions null,boolean
reasoningMandatory null,boolean
reasoningDefaultEnabled null,boolean
reasoningDefaultEffort null,string
reasoningSupportedEfforts null,string
reasoningSupportsMaxTokens null,boolean
reasoningEffort null,string
providerType ProviderType
createdAtUtc date-time

AIModelGroupDetailDto

PropertyTypeDescription
members AIModelGroupMemberDto[]
id int64
guid uuid
name string
displayName null,string
description null,string
enabled boolean
memberCount int32
createdAtUtc date-time
updatedAtUtc date-time

AIProviderDetailDto

PropertyTypeDescription
stripPrefixInRequests boolean
configJson null,string
models AIModelDto[]
id int64
guid uuid
name string
type ProviderType
prefix null,string
baseUrl null,string
defaultModel null,string
apiKey null,string
enabled boolean
priority int32
timeoutSeconds int32
modelCount int32
createdAtUtc date-time
isGlobal boolean
hasCredential boolean
description null,string
logoUrl null,string
docsUrl null,string
websiteUrl null,string

AIProviderDto

PropertyTypeDescription
id int64
guid uuid
name string
type ProviderType
prefix null,string
baseUrl null,string
defaultModel null,string
apiKey null,string
enabled boolean
priority int32
timeoutSeconds int32
modelCount int32
createdAtUtc date-time
isGlobal boolean
hasCredential boolean
description null,string
logoUrl null,string
docsUrl null,string
websiteUrl null,string

AIRouteConfigDto

PropertyTypeDescription
id int64
providerId int64
providerName null,string
modelId int64
modelDisplayName null,string
role string
priority int32
isBroken boolean
brokenReason null,string
notes null,string

BroadcastResponse

PropertyTypeDescription
totalModels int32
successCount int32
responses ChatResponse[]
totalTimeMs int64

ChatResponse

PropertyTypeDescription
success boolean
modelId string
reply null,string
error null,string
usage null | ChatUsageDto
responseTimeMs int64
toolCalls null,array
reasoningContent null,string
finishReason null,string
reasoningEffort null,string
reasoningEnabled null,boolean
reasoningSource null,string
reasoningInjection null,string

ModelSyncResult

PropertyTypeDescription
dryRun boolean
additive boolean
added int32
updated int32
deactivated int32
restored int32
revived int32
unchanged int32
addedModels string[]
updatedModels string[]
deactivatedModels string[]
restoredModels string[]
revivedModels string[]

ModelTestResult

PropertyTypeDescription
success boolean
error null,string
responseTimeMs int64
providerName string
modelId string
sample null,string

PagedResultOfAIModelDto

PropertyTypeDescription
items* AIModelDto[]
totalCount int32
page int32
pageSize int32
hasTotal boolean
moreAvailable null,boolean
totalPages int32
hasNextPage boolean
hasPreviousPage boolean

PagedResultOfAIModelGroupDto

PropertyTypeDescription
items* AIModelGroupDto[]
totalCount int32
page int32
pageSize int32
hasTotal boolean
moreAvailable null,boolean
totalPages int32
hasNextPage boolean
hasPreviousPage boolean

PagedResultOfAIProviderDto

PropertyTypeDescription
items* AIProviderDto[]
totalCount int32
page int32
pageSize int32
hasTotal boolean
moreAvailable null,boolean
totalPages int32
hasNextPage boolean
hasPreviousPage boolean

PagedResultOfAIRouteConfigDto

PropertyTypeDescription
items* AIRouteConfigDto[]
totalCount int32
page int32
pageSize int32
hasTotal boolean
moreAvailable null,boolean
totalPages int32
hasNextPage boolean
hasPreviousPage boolean

PagedResultOfTenantProviderCredentialDto

PropertyTypeDescription
items* TenantProviderCredentialDto[]
totalCount int32
page int32
pageSize int32
hasTotal boolean
moreAvailable null,boolean
totalPages int32
hasNextPage boolean
hasPreviousPage boolean

ProviderCatalogResult

PropertyTypeDescription
providerId int64
providerName string
providerType ProviderType
totalAvailable int32
inDatabase int32
fetchedAtUtc date-time
models CatalogModelDto[]

RoutePolicyDto

PropertyTypeDescription
id int64
name string
mode RoutePolicyMode
monthlyBudgetUsd double
budgetAction BudgetExhaustedAction
enabled boolean
notes null,string
monthToDateSpendUsd double

RoutingStatusDto

PropertyTypeDescription
windowMinutes int32
autoCalls int32
autoRefusals int32
localShare double
tiers RoutingTierStats[]
latency RoutingModelLatency[]
budgetCapUsd double
budgetSpentUsd double
policyMode null | RoutePolicyMode
budgetAction null | BudgetExhaustedAction
circuits RoutingCircuitState[]
recentDecisions RoutingDecision[]

SyncKeyResult

PropertyTypeDescription
providerId int64
key string
note string

SyncPricingResult

PropertyTypeDescription
scanned int32
updated int32
truncated int32
changes SyncPricingChange[]

TenantProviderCredentialDto

PropertyTypeDescription
id int64
guid uuid
providerId int64
providerName string
providerPrefix null,string
label null,string
isValidated boolean
lastValidatedAtUtc date-time
createdAtUtc date-time

ValidateCredentialResult

PropertyTypeDescription
success boolean
error null,string