Skip to content

Administration - Translation Models and Aliases

Configure Text Services inference models and tenant aliases. Clients discover aliases through Translation Models. Standard API request rate limits apply; model management does not consume translation execution admissions.

Method Endpoint Description
GET /api/v1/text-services/admin/translation-models List Translation Models
GET /api/v1/text-services/admin/translation-models/{name} Get Translation Model
POST /api/v1/text-services/admin/translation-models Register Translation Model
PUT /api/v1/text-services/admin/translation-models/{name} Update Translation Model
PATCH /api/v1/text-services/admin/translation-models/{name}/status Update Translation Model Status
DELETE /api/v1/text-services/admin/translation-models/{name} Delete Translation Model
GET /api/v1/text-services/admin/translation-model-aliases List Translation Model Aliases
PUT /api/v1/text-services/admin/translation-model-aliases/{alias} Create or Update Translation Model Alias
PUT /api/v1/text-services/admin/translation-model-aliases/{alias}/resolve Update Translation Model Alias Resolution
PUT /api/v1/text-services/admin/translation-model-aliases/{alias}/deprecate Deprecate Translation Model Alias
PUT /api/v1/text-services/admin/translation-model-aliases/{alias}/undeprecate Undeprecate Translation Model Alias
DELETE /api/v1/text-services/admin/translation-model-aliases/{alias} Delete Translation Model Alias

List Translation Models

GET /api/v1/text-services/admin/translation-models

Requires Authentication - Scopes: admin:translation-models:read

Pagination: page=0, size=20 (1–100), sort=name,asc, optional query. Response: models, size, total, page, filters, sort.

AdminTranslationModelListResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Get Translation Model

GET /api/v1/text-services/admin/translation-models/{name}

Requires Authentication - Scopes: admin:translation-models:read

Get a concrete model configuration. gRPC metadata is never returned.

AdminTranslationModelResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Register Translation Model

POST /api/v1/text-services/admin/translation-models

Requires Authentication - Scopes: admin:translation-models:write

Register an immutable unique name and the configuration below. Returns 201 Created and Location. New models start INACTIVE; activate after verifying the configured server.

RegisterTranslationModelRequest
AdminTranslationModelResponse
Status Description
201 Created Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Update Translation Model

PUT /api/v1/text-services/admin/translation-models/{name}

Requires Authentication - Scopes: admin:translation-models:write

Replace model configuration using the fields below, excluding name. Omitted grpcMetadata preserves credentials; {} clears them. Accepted jobs retain their resolved model name.

UpdateTranslationModelRequest
AdminTranslationModelResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Update Translation Model Status

PATCH /api/v1/text-services/admin/translation-models/{name}/status

Requires Authentication - Scopes: admin:translation-models:write

Body: required status (AVAILABLE, DEPRECATED, MAINTENANCE, INACTIVE) and optional statusMessage.

UpdateTranslationModelStatusRequest
AdminTranslationModelResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Delete Translation Model

DELETE /api/v1/text-services/admin/translation-models/{name}

Requires Authentication - Scopes: admin:translation-models:delete

Delete an unreferenced model. Aliases and translation jobs prevent deletion (409).

Status Description
204 No Content Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

List Translation Model Aliases

GET /api/v1/text-services/admin/translation-model-aliases

Requires Authentication - Scopes: admin:translation-model-aliases:write

TranslationModelAliasListResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Create or Update Translation Model Alias

PUT /api/v1/text-services/admin/translation-model-aliases/{alias}

Requires Authentication - Scopes: admin:translation-model-aliases:write

Set type, display name, concrete resolution, optional fallback/default and role visibility. A tenant has at most one default alias.

CreateUpdateTranslationAliasRequest
TranslationModelAliasResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Update Translation Model Alias Resolution

PUT /api/v1/text-services/admin/translation-model-aliases/{alias}/resolve

Requires Authentication - Scopes: admin:translation-model-aliases:write

Body: required resolvedModel, optional fallbackModel. The change applies to future jobs.

UpdateTranslationAliasResolutionRequest
TranslationModelAliasResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Deprecate Translation Model Alias

PUT /api/v1/text-services/admin/translation-model-aliases/{alias}/deprecate

Requires Authentication - Scopes: admin:translation-model-aliases:write

Body: optional ISO 8601 deprecationDate, sunsetDate, and migration message. Public resolution returns 410 after sunset.

DeprecateTranslationAliasRequest
TranslationModelAliasResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Undeprecate Translation Model Alias

PUT /api/v1/text-services/admin/translation-model-aliases/{alias}/undeprecate

Requires Authentication - Scopes: admin:translation-model-aliases:write

Remove deprecation and sunset metadata. No request body.

TranslationModelAliasResponse
Status Description
200 OK Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Delete Translation Model Alias

DELETE /api/v1/text-services/admin/translation-model-aliases/{alias}

Requires Authentication - Scopes: admin:translation-model-aliases:delete

Remove this alias. Accepted jobs retain their already resolved concrete model.

Status Description
204 No Content Operation completed.
400 Bad Request Invalid request or pagination.
403 Forbidden Insufficient scope.
404 Not Found Referenced model or alias missing.
409 Conflict Duplicate or referenced model, or conflicting default alias.

Data Types

Translation Model Configuration

Field Type Required Description
name string On registration Immutable unique name, 1–128 letters/digits/dot/underscore/hyphen; starts with letter/digit.
displayName string Yes Up to 256 characters.
description string No Human-readable description.
supportedLanguagePairs TranslationLanguagePair[] Yes Nonempty source/target BCP 47 pairs.
tokenizerId string No unicode-codepoint-v1.
maxInputTokens integer No Positive limit; default 1,000,000.
grpcTarget string Yes Inference endpoint, maximum 512 characters.
grpcTlsMode string No PLAINTEXT (default) or SYSTEM_TRUST.
grpcAuthority string No Optional TLS authority.
grpcDeadlineMs integer No Positive RPC deadline, default 1,800,000 ms (30 minutes).
grpcMaxInboundMessageBytes integer No Positive inbound message limit.
grpcMetadata object No Write-only headers; omitted preserves existing metadata, {} clears it.

AdminTranslationModelResponse returns this configuration without credentials, plus status, status message, creation/update timestamps and deprecation/inactivation timestamps.

CreateUpdateTranslationAliasRequest

Field Type Required Description
type string Yes FAMILY, PINNED, or CONCRETE.
displayName string Yes Human-readable name.
description string No Description.
resolvedModel string Yes Concrete model name.
fallbackModel string No Model used if the primary is unavailable at admission.
isDefault boolean No Make this the tenant default.
minHierarchyOrder integer No Minimum role hierarchy; zero permits all authenticated roles.