Assignments
Assignments are the recommended way for business workflows to run models. An
assignment has a stable key, such as default or forecast, and points to one
active model version in a domain or service scope.
Why assignments exist
Section titled “Why assignments exist”Without assignments, consumers would need to know the exact model_id and
model_version for each workflow. Assignments let the platform change the model
version behind a stable key while callers keep using the same route.
Scopes
Section titled “Scopes”| Scope | Route shape | Use when |
|---|---|---|
| Domain | /v2/clients/{client_id}/domains/{domain_id}/assignments/{assignment_key} | The capability belongs to the domain as a whole. |
| Service | /v2/clients/{client_id}/domains/{domain_id}/service/{service_id}/assignments/{assignment_key} | The capability belongs to one initialized service. |
Active and archived revisions
Section titled “Active and archived revisions”Each assignment key has one active revision. Creating a new revision archives the previous active revision for the same key. Historical jobs remain linked to the revision that launched them.
flowchart LR
Key[assignment key forecast] --> Active[active revision]
Active --> ModelVersion[model version]
NewRevision[new revision] --> Active
Active --> Archived[previous revision archived]
Running jobs
Section titled “Running jobs”Run inference through the assignment job route. The response returns a job_id.
Poll GET /v2/jobs/{job_id} to read status, output, and errors.
Assignments keep the caller insulated from model-version changes, but they do not hide async behavior. Always treat assignment execution as a job lifecycle.