## Set model status `models.set_status(id, **kwargs) -> Model` **put** `/v1/workspaces/{workspaceId}/models/{id}/status` Enables or disables a model in the workspace ### Parameters - `workspace_id: String` - `id: String` - `status: :MODEL_STATUS_UNSPECIFIED | :MODEL_STATUS_ENABLED | :MODEL_STATUS_DISABLED` The new status for the model - `:MODEL_STATUS_UNSPECIFIED` - `:MODEL_STATUS_ENABLED` - `:MODEL_STATUS_DISABLED` ### Returns - `class Model` - `metadata: ResourceMetadata` Standard metadata for persistent, named resources (e.g., agents, tools, prompts) - `id: String` Unique identifier for the resource (prefixed ULID, e.g., "agent_01HXK...") - `account_id: String` Account this resource belongs to for multi-tenant isolation (prefixed ULID) - `created_at: Time` Timestamp when this resource was created - `name: String` Human-readable name for the resource (e.g., "Customer Support Agent", "Email Tool") Required for resources that users interact with directly - `profile_id: String` ID of the actor (user or service account) that created this resource - `workspace_id: String` Workspace this resource belongs to for organizational grouping (prefixed ULID) - `bundle_key: String` Optional bundle ownership key. When set, indicates the resource is managed by a configuration bundle identified by this key. Used by BulkWorkspaceResources.Apply to track which resources belong to which bundle for reconciliation / soft-delete on re-apply. - `external_id: String` External ID for the resource (e.g., a workflow ID from an external system) - `labels: Hash[Symbol, String]` Arbitrary key-value pairs for categorization and filtering Examples: {"environment": "production", "team": "platform", "version": "v2"} - `spec: ModelSpec` Model specification - `family: String` The model family (e.g., "claude-sonnet-4.6", "gpt-5.4", "gemini-2.5-flash") - `input_price_per_million_tokens: String` Cost per million input tokens in cents (e.g., 300 = $3.00) - `max_input_tokens: Integer` Maximum number of input tokens the model supports - `max_output_tokens: Integer` Maximum number of output tokens the model can generate - `output_price_per_million_tokens: String` Cost per million output tokens in cents (e.g., 1500 = $15.00) - `provider: String` The model provider (e.g., "anthropic", "openai", "google") - `status: :MODEL_STATUS_UNSPECIFIED | :MODEL_STATUS_ENABLED | :MODEL_STATUS_DISABLED` The status of the model in the workspace - `:MODEL_STATUS_UNSPECIFIED` - `:MODEL_STATUS_ENABLED` - `:MODEL_STATUS_DISABLED` ### Example ```ruby require "cadenya" cadenya = Cadenya::Client.new(api_key: "My API Key") model = cadenya.models.set_status("id", workspace_id: "workspaceId") puts(model) ``` #### Response ```json { "metadata": { "id": "id", "accountId": "accountId", "createdAt": "2019-12-27T18:11:19.117Z", "name": "name", "profileId": "profileId", "workspaceId": "workspaceId", "bundleKey": "bundleKey", "externalId": "externalId", "labels": { "foo": "string" } }, "spec": { "family": "family", "inputPricePerMillionTokens": "inputPricePerMillionTokens", "maxInputTokens": 0, "maxOutputTokens": 0, "outputPricePerMillionTokens": "outputPricePerMillionTokens", "provider": "provider", "status": "MODEL_STATUS_UNSPECIFIED" } } ```