Skip to content

artifacts

Manage artifact definitions and container specifications.

Get Artifact Repositories

Operation path: GET /artifactRepositories

Returns the list of artifact repositories.

Parameters

Name In Type Required Description
offset query integer false Skip the specified number of values.
limit query integer false Retrieve only the specified number of values.
createdBy query any false Filters by those created by the given user.
ids query any false Filter by specific IDs
search query any false Case insensitive search against name, description and partial ID.
tagKeys query any false List of tag keys to filter for. If multiple values are specified, results with tags that match any of the values will be returned.
tagValues query any false List of tag values to filter for. If multiple values are specified, results with tags that match any of the values will be returned.
orderBy query any false Select a sorting strategy from the list.
type query any false Filters artifacts by their type (e.g., service, nim).

Example responses

200 Response

{
  "additionalProperties": false,
  "properties": {
    "count": {
      "description": "The number of records on this page.",
      "title": "Count",
      "type": "integer"
    },
    "data": {
      "description": "The list of records.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "description": "Timestamp of when the entity was created.",
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "creator": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "User information embedded in API responses.",
                "properties": {
                  "email": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User email address.",
                    "title": "Email"
                  },
                  "fullName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's full name.",
                    "title": "Full Name"
                  },
                  "id": {
                    "description": "User id associated with this resource.",
                    "title": "User ID",
                    "type": "string"
                  },
                  "userhash": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's gravatar hash.",
                    "title": "Userhash"
                  },
                  "username": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Username.",
                    "title": "Username"
                  }
                },
                "required": [
                  "id"
                ],
                "title": "UserData",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Owner user details including id, username and email.",
            "title": "Creator"
          },
          "id": {
            "description": "Unique identifier of the entity.",
            "title": "ID",
            "type": "string"
          },
          "lastVersionNumber": {
            "default": 0,
            "description": "Last version number.",
            "title": "Lastversionnumber",
            "type": "integer"
          },
          "name": {
            "description": "Name of the entity.",
            "title": "Name",
            "type": "string"
          },
          "numArtifacts": {
            "default": 0,
            "description": "Number of artifacts in this repository.",
            "minimum": 0,
            "title": "Numartifacts",
            "type": "integer"
          },
          "permissions": {
            "anyOf": [
              {
                "items": {
                  "description": "Represents the particular role a user, group or organization holds on an entity.",
                  "enum": [
                    "CAN_VIEW",
                    "CAN_UPDATE",
                    "CAN_DELETE",
                    "CAN_SHARE",
                    "CAN_MAKE_PREDICTIONS",
                    "CAN_SHARE_ROLE_OWNER",
                    "CAN_SHARE_ROLE_READ_WRITE",
                    "CAN_SHARE_ROLE_READ_ONLY"
                  ],
                  "title": "ResourcePermission",
                  "type": "string"
                },
                "type": "array"
              },
              {
                "items": {
                  "const": "*",
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "tags": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "id": {
                  "description": "Unique identifier of the tag.",
                  "title": "Id",
                  "type": "string"
                },
                "name": {
                  "description": "Name of the tag.",
                  "title": "Name",
                  "type": "string"
                },
                "value": {
                  "description": "Value of the tag.",
                  "title": "Value",
                  "type": "string"
                }
              },
              "required": [
                "id",
                "name",
                "value"
              ],
              "title": "TagInfo",
              "type": "object"
            },
            "type": "array"
          },
          "type": {
            "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
            "enum": [
              "service",
              "nim"
            ],
            "title": "ArtifactType",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp of when the entity was last updated.",
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "createdAt",
          "updatedAt"
        ],
        "title": "ArtifactRepositoryFormatted",
        "type": "object"
      },
      "title": "Data",
      "type": "array"
    },
    "next": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the next page, or `null` if there is no such page.",
      "title": "Next"
    },
    "previous": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the previous page, or `null` if there is no such page.",
      "title": "Previous"
    },
    "totalCount": {
      "description": "The total number of records.",
      "title": "Totalcount",
      "type": "integer"
    }
  },
  "required": [
    "totalCount",
    "count",
    "next",
    "previous",
    "data"
  ],
  "title": "ArtifactRepositoryListResponse",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ArtifactRepositoryListResponse
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
422 Unprocessable Entity Validation Error HTTPValidationError

Delete Artifact Repository By Artifact_repository_ Id by artifact_repository_ ID

Operation path: DELETE /artifactRepositories/{artifact_repository_id}

Delete an artifact repository. Artifacts within the repository are cascade-deleted unless they are locked or still in use by workloads.

Parameters

Name In Type Required Description
artifact_repository_id path string true Artifact Repository ID

Example responses

422 Response

{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "ctx": {
            "title": "Context",
            "type": "object"
          },
          "input": {
            "title": "Input"
          },
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "title": "Location",
            "type": "array"
          },
          "msg": {
            "title": "Message",
            "type": "string"
          },
          "type": {
            "title": "Error Type",
            "type": "string"
          }
        },
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError",
        "type": "object"
      },
      "title": "Detail",
      "type": "array"
    }
  },
  "title": "HTTPValidationError",
  "type": "object"
}

Responses

Status Meaning Description Schema
204 No Content Successful Response None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact repository not found None
409 Conflict Repository contains locked artifacts or artifacts in use by workloads None
422 Unprocessable Entity Validation Error HTTPValidationError

Get Artifact Repository By Artifact_repository_ Id by artifact_repository_ ID

Operation path: GET /artifactRepositories/{artifact_repository_id}

Get a specific artifact repository by ID.

Parameters

Name In Type Required Description
artifact_repository_id path string true Artifact Repository ID

Example responses

200 Response

{
  "additionalProperties": false,
  "properties": {
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "lastVersionNumber": {
      "default": 0,
      "description": "Last version number.",
      "title": "Lastversionnumber",
      "type": "integer"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "numArtifacts": {
      "default": 0,
      "description": "Number of artifacts in this repository.",
      "minimum": 0,
      "title": "Numartifacts",
      "type": "integer"
    },
    "permissions": {
      "anyOf": [
        {
          "items": {
            "description": "Represents the particular role a user, group or organization holds on an entity.",
            "enum": [
              "CAN_VIEW",
              "CAN_UPDATE",
              "CAN_DELETE",
              "CAN_SHARE",
              "CAN_MAKE_PREDICTIONS",
              "CAN_SHARE_ROLE_OWNER",
              "CAN_SHARE_ROLE_READ_WRITE",
              "CAN_SHARE_ROLE_READ_ONLY"
            ],
            "title": "ResourcePermission",
            "type": "string"
          },
          "type": "array"
        },
        {
          "items": {
            "const": "*",
            "type": "string"
          },
          "type": "array"
        }
      ]
    },
    "tags": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Unique identifier of the tag.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "Name of the tag.",
            "title": "Name",
            "type": "string"
          },
          "value": {
            "description": "Value of the tag.",
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "value"
        ],
        "title": "TagInfo",
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt"
  ],
  "title": "ArtifactRepositoryFormatted",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ArtifactRepositoryFormatted
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact repository not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Get Artifact Repository Shared Roles By Artifact_repository_ Id by artifact_repository_ ID

Operation path: GET /artifactRepositories/{artifact_repository_id}/sharedRoles

Get artifact repository shared roles. Returns the list of roles shared for this artifact repository.

Parameters

Name In Type Required Description
artifact_repository_id path string true Artifact Repository ID
offset query integer false Skip the specified number of values.
limit query integer false Retrieve only the specified number of values.

Example responses

200 Response

{
  "additionalProperties": false,
  "properties": {
    "count": {
      "description": "The number of records on this page.",
      "title": "Count",
      "type": "integer"
    },
    "data": {
      "description": "The list of records.",
      "items": {
        "additionalProperties": false,
        "description": "Represents a recipient (user, group, or organization) with access to an entity. this model is used for listing and managing access control on shared resources, providing information about who has access and what role they have.",
        "properties": {
          "id": {
            "description": "The identifier of the recipient.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "The name of the recipient.",
            "title": "Name",
            "type": "string"
          },
          "role": {
            "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
            "enum": [
              "NO_ROLE",
              "OWNER",
              "READ_WRITE",
              "EDITOR",
              "USER",
              "DATA_SCIENTIST",
              "ADMIN",
              "READ_ONLY",
              "CONSUMER",
              "OBSERVER"
            ],
            "title": "SharingRole",
            "type": "string"
          },
          "shareRecipientType": {
            "description": "Enum of possible subject types.",
            "enum": [
              "user",
              "group",
              "organization",
              "role"
            ],
            "title": "SubjectType",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "shareRecipientType",
          "role"
        ],
        "title": "SharedRole",
        "type": "object"
      },
      "title": "Data",
      "type": "array"
    },
    "next": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the next page, or `null` if there is no such page.",
      "title": "Next"
    },
    "previous": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the previous page, or `null` if there is no such page.",
      "title": "Previous"
    },
    "totalCount": {
      "description": "The total number of records.",
      "title": "Totalcount",
      "type": "integer"
    }
  },
  "required": [
    "totalCount",
    "count",
    "next",
    "previous",
    "data"
  ],
  "title": "SharedRoleListResponse",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response SharedRoleListResponse
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact repository not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Update Artifact Repository Shared Roles By Artifact_repository_ Id by artifact_repository_ ID

Operation path: PATCH /artifactRepositories/{artifact_repository_id}/sharedRoles

Update artifact repository shared roles. Replaces the current shared roles with the provided list.

Body parameter

{
  "additionalProperties": false,
  "description": "Request model for updating shared roles on an entity. used to grant access, remove access, or update roles for organizations, groups, or users. up to 100 roles may be set in a single request.",
  "properties": {
    "operation": {
      "const": "updateRoles",
      "description": "Name of the action being taken. the only operation is 'updateroles'.",
      "title": "Operation",
      "type": "string"
    },
    "roles": {
      "description": "Array of grantaccesscontrol objects, up to maximum 100 objects.",
      "items": {
        "anyOf": [
          {
            "additionalProperties": false,
            "description": "Grant access control request using username for user identification.",
            "properties": {
              "role": {
                "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
                "enum": [
                  "NO_ROLE",
                  "OWNER",
                  "READ_WRITE",
                  "EDITOR",
                  "USER",
                  "DATA_SCIENTIST",
                  "ADMIN",
                  "READ_ONLY",
                  "CONSUMER",
                  "OBSERVER"
                ],
                "title": "SharingRole",
                "type": "string"
              },
              "shareRecipientType": {
                "description": "Enum of possible subject types.",
                "enum": [
                  "user",
                  "group",
                  "organization",
                  "role"
                ],
                "title": "SubjectType",
                "type": "string"
              },
              "username": {
                "description": "Username of the user to update the access role for.",
                "title": "Username",
                "type": "string"
              }
            },
            "required": [
              "shareRecipientType",
              "role",
              "username"
            ],
            "title": "GrantAccessControlWithUsername",
            "type": "object"
          },
          {
            "additionalProperties": false,
            "description": "Grant access control request using id for recipient identification. can be used for users, groups, or organizations.",
            "properties": {
              "id": {
                "description": "The id of the recipient.",
                "title": "Id",
                "type": "string"
              },
              "role": {
                "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
                "enum": [
                  "NO_ROLE",
                  "OWNER",
                  "READ_WRITE",
                  "EDITOR",
                  "USER",
                  "DATA_SCIENTIST",
                  "ADMIN",
                  "READ_ONLY",
                  "CONSUMER",
                  "OBSERVER"
                ],
                "title": "SharingRole",
                "type": "string"
              },
              "shareRecipientType": {
                "description": "Enum of possible subject types.",
                "enum": [
                  "user",
                  "group",
                  "organization",
                  "role"
                ],
                "title": "SubjectType",
                "type": "string"
              }
            },
            "required": [
              "shareRecipientType",
              "role",
              "id"
            ],
            "title": "GrantAccessControlWithId",
            "type": "object"
          }
        ]
      },
      "maxItems": 100,
      "minItems": 1,
      "title": "Roles",
      "type": "array"
    }
  },
  "required": [
    "operation",
    "roles"
  ],
  "title": "SharedRolesUpdateRequest",
  "type": "object"
}

Parameters

Name In Type Required Description
artifact_repository_id path string true Artifact Repository ID
body body SharedRolesUpdateRequest true none

Example responses

422 Response

{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "ctx": {
            "title": "Context",
            "type": "object"
          },
          "input": {
            "title": "Input"
          },
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "title": "Location",
            "type": "array"
          },
          "msg": {
            "title": "Message",
            "type": "string"
          },
          "type": {
            "title": "Error Type",
            "type": "string"
          }
        },
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError",
        "type": "object"
      },
      "title": "Detail",
      "type": "array"
    }
  },
  "title": "HTTPValidationError",
  "type": "object"
}

Responses

Status Meaning Description Schema
204 No Content Successful Response None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact repository not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Get artifacts

Operation path: GET /artifacts

List all artifacts accessible to the authenticated user.

Parameters

Name In Type Required Description
offset query integer false Skip the specified number of values.
limit query integer false Retrieve only the specified number of values.
createdBy query any false Filters by those created by the given user.
ids query any false Filter by specific IDs
search query any false Case insensitive search against name, description and partial ID.
tagKeys query any false List of tag keys to filter for. If multiple values are specified, results with tags that match any of the values will be returned.
tagValues query any false List of tag values to filter for. If multiple values are specified, results with tags that match any of the values will be returned.
orderBy query any false The order to sort the results.
type query any false Filters artifacts by their type (e.g., service, nim).
status query any false Filters artifacts by their status.
repositoryId query any false Filter artifacts by their artifact repository ID

Example responses

200 Response

{
  "additionalProperties": false,
  "properties": {
    "count": {
      "description": "The number of records on this page.",
      "title": "Count",
      "type": "integer"
    },
    "data": {
      "description": "The list of records.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "artifactRepositoryId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
            "title": "Artifact Repository ID"
          },
          "createdAt": {
            "description": "Timestamp of when the entity was created.",
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "creator": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "User information embedded in API responses.",
                "properties": {
                  "email": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User email address.",
                    "title": "Email"
                  },
                  "fullName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's full name.",
                    "title": "Full Name"
                  },
                  "id": {
                    "description": "User id associated with this resource.",
                    "title": "User ID",
                    "type": "string"
                  },
                  "userhash": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's gravatar hash.",
                    "title": "Userhash"
                  },
                  "username": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Username.",
                    "title": "Username"
                  }
                },
                "required": [
                  "id"
                ],
                "title": "UserData",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Owner user details including id, username and email.",
            "title": "Creator"
          },
          "description": {
            "default": "",
            "description": "Description of the artifact.",
            "title": "Description",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the entity.",
            "title": "ID",
            "type": "string"
          },
          "name": {
            "description": "Name of the entity.",
            "title": "Name",
            "type": "string"
          },
          "permissions": {
            "anyOf": [
              {
                "items": {
                  "description": "Represents the particular role a user, group or organization holds on an entity.",
                  "enum": [
                    "CAN_VIEW",
                    "CAN_UPDATE",
                    "CAN_DELETE",
                    "CAN_SHARE",
                    "CAN_MAKE_PREDICTIONS",
                    "CAN_SHARE_ROLE_OWNER",
                    "CAN_SHARE_ROLE_READ_WRITE",
                    "CAN_SHARE_ROLE_READ_ONLY"
                  ],
                  "title": "ResourcePermission",
                  "type": "string"
                },
                "type": "array"
              },
              {
                "items": {
                  "const": "*",
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "spec": {
            "description": "Artifact specification.",
            "discriminator": {
              "mapping": {
                "nim": "#/components/schemas/NimArtifactSpec",
                "service": "#/components/schemas/ServiceArtifactSpec"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "containerGroups": {
                    "default": [],
                    "description": "List of container groups.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "containers": {
                          "default": [],
                          "description": "List of containers making this container group.",
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "build": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "Build reference embedded in a container spec when an image build is triggered.",
                                    "properties": {
                                      "artifactImageBuildId": {
                                        "description": "Artifact image build id.",
                                        "title": "Artifactimagebuildid",
                                        "type": "string"
                                      },
                                      "createdAt": {
                                        "description": "Build creation timestamp (utc).",
                                        "format": "date-time",
                                        "title": "Createdat",
                                        "type": "string"
                                      },
                                      "status": {
                                        "description": "Image build reported status at submit time.",
                                        "title": "Status",
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "artifactImageBuildId",
                                      "status",
                                      "createdAt"
                                    ],
                                    "title": "ContainerBuildInfo",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                              },
                              "description": {
                                "default": "",
                                "description": "Description of the container.",
                                "title": "Description",
                                "type": "string"
                              },
                              "entrypoint": {
                                "anyOf": [
                                  {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": "array"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                                "title": "Entrypoint"
                              },
                              "environmentVars": {
                                "default": [],
                                "description": "Environment variables.",
                                "items": {
                                  "anyOf": [
                                    {
                                      "properties": {
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "string",
                                          "default": "string",
                                          "title": "Source",
                                          "type": "string"
                                        },
                                        "value": {
                                          "description": "Value of the environment variable.",
                                          "title": "Value",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "name",
                                        "value"
                                      ],
                                      "title": "StringEnvironmentVariable",
                                      "type": "object"
                                    },
                                    {
                                      "properties": {
                                        "drCredentialId": {
                                          "description": "Id of the datarobot credential to use.",
                                          "title": "DR Credential ID",
                                          "type": "string"
                                        },
                                        "key": {
                                          "description": "Key within the credential.",
                                          "title": "Key",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "dr-credential",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "source",
                                        "name",
                                        "drCredentialId",
                                        "key"
                                      ],
                                      "title": "CredentialEnvironmentVariable",
                                      "type": "object"
                                    },
                                    {
                                      "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                      "properties": {
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "dr-api-token",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "source",
                                        "name"
                                      ],
                                      "title": "DrApiTokenEnvironmentVariable",
                                      "type": "object"
                                    }
                                  ]
                                },
                                "title": "Environmentvars",
                                "type": "array"
                              },
                              "imageBuildConfig": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "User-provided configuration for server-side image builds from source code.",
                                    "properties": {
                                      "codeRef": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "properties": {
                                              "datarobot": {
                                                "additionalProperties": false,
                                                "properties": {
                                                  "catalogId": {
                                                    "title": "Catalogid",
                                                    "type": "string"
                                                  },
                                                  "catalogVersionId": {
                                                    "title": "Catalogversionid",
                                                    "type": "string"
                                                  }
                                                },
                                                "required": [
                                                  "catalogId",
                                                  "catalogVersionId"
                                                ],
                                                "title": "DataRobotCodeRef",
                                                "type": "object"
                                              },
                                              "provider": {
                                                "const": "datarobot",
                                                "default": "datarobot",
                                                "title": "Provider",
                                                "type": "string"
                                              },
                                              "type": {
                                                "const": "datarobot",
                                                "default": "datarobot",
                                                "title": "Type",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "datarobot"
                                            ],
                                            "title": "CodeRef",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                      },
                                      "dockerfile": {
                                        "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                        "discriminator": {
                                          "mapping": {
                                            "generated": "#/components/schemas/GeneratedDockerfile",
                                            "provided": "#/components/schemas/ProvidedDockerfile"
                                          },
                                          "propertyName": "source"
                                        },
                                        "oneOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "User supplies a dockerfile in the uploaded source code.",
                                            "properties": {
                                              "path": {
                                                "default": "./Dockerfile",
                                                "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                                "title": "Path",
                                                "type": "string"
                                              },
                                              "source": {
                                                "const": "provided",
                                                "default": "provided",
                                                "title": "Source",
                                                "type": "string"
                                              }
                                            },
                                            "title": "ProvidedDockerfile",
                                            "type": "object"
                                          },
                                          {
                                            "additionalProperties": false,
                                            "description": "System generates a dockerfile from execution environment metadata.",
                                            "properties": {
                                              "entrypoint": {
                                                "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                                "items": {
                                                  "type": "string"
                                                },
                                                "minItems": 1,
                                                "title": "Entrypoint",
                                                "type": "array"
                                              },
                                              "executionEnvironmentId": {
                                                "description": "Execution environment id used to resolve the base Docker image.",
                                                "title": "Execution Environment ID",
                                                "type": "string"
                                              },
                                              "executionEnvironmentVersionId": {
                                                "description": "Execution environment version id that pins the exact base image tag.",
                                                "title": "Execution Environment Version ID",
                                                "type": "string"
                                              },
                                              "source": {
                                                "const": "generated",
                                                "default": "generated",
                                                "title": "Source",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "executionEnvironmentId",
                                              "executionEnvironmentVersionId",
                                              "entrypoint"
                                            ],
                                            "title": "GeneratedDockerfile",
                                            "type": "object"
                                          }
                                        ],
                                        "title": "Dockerfile"
                                      }
                                    },
                                    "title": "ImageBuildConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Configuration for server-side image builds from source code."
                              },
                              "imageUri": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                                "title": "Imageuri"
                              },
                              "livenessProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container liveness check configuration."
                              },
                              "name": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                                "title": "Name"
                              },
                              "port": {
                                "anyOf": [
                                  {
                                    "maximum": 65535,
                                    "minimum": 1024,
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                                "title": "Port"
                              },
                              "primary": {
                                "anyOf": [
                                  {
                                    "type": "boolean"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": false,
                                "description": "Whether this is the primary container.",
                                "title": "Primary"
                              },
                              "readinessProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container readiness check configuration."
                              },
                              "securityContext": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                                    "properties": {
                                      "allowPrivilegeEscalation": {
                                        "anyOf": [
                                          {
                                            "type": "boolean"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                        "title": "Allowprivilegeescalation"
                                      },
                                      "capabilities": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "Linux capabilities to add or drop from the container.",
                                            "properties": {
                                              "add": {
                                                "anyOf": [
                                                  {
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "type": "array"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Capabilities to add.",
                                                "title": "Add"
                                              },
                                              "drop": {
                                                "anyOf": [
                                                  {
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "type": "array"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Capabilities to drop.",
                                                "title": "Drop"
                                              }
                                            },
                                            "title": "Capabilities",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Linux capabilities to add or drop."
                                      },
                                      "readOnlyRootFilesystem": {
                                        "anyOf": [
                                          {
                                            "type": "boolean"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Whether the root filesystem is read-only.",
                                        "title": "Readonlyrootfilesystem"
                                      },
                                      "seccompProfile": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "Seccomp profile configuration.",
                                            "properties": {
                                              "localhostProfile": {
                                                "anyOf": [
                                                  {
                                                    "type": "string"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                                "title": "Localhostprofile"
                                              },
                                              "type": {
                                                "description": "Allowed seccomp profile types.",
                                                "enum": [
                                                  "RuntimeDefault",
                                                  "Unconfined",
                                                  "Localhost"
                                                ],
                                                "title": "SeccompProfileType",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "type"
                                            ],
                                            "title": "SeccompProfile",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Seccomp profile for the container."
                                      }
                                    },
                                    "title": "SecurityContext",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container security context."
                              },
                              "startupProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container startup check configuration."
                              }
                            },
                            "title": "Container",
                            "type": "object"
                          },
                          "title": "Containers",
                          "type": "array"
                        },
                        "name": {
                          "default": "default",
                          "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name",
                          "type": "string"
                        }
                      },
                      "title": "ContainerGroup",
                      "type": "object"
                    },
                    "title": "Containergroups",
                    "type": "array"
                  },
                  "type": {
                    "const": "service",
                    "default": "service",
                    "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
                    "title": "Type",
                    "type": "string"
                  }
                },
                "title": "ServiceArtifactSpec",
                "type": "object"
              },
              {
                "additionalProperties": false,
                "properties": {
                  "containerGroups": {
                    "default": [],
                    "description": "List of container groups.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "containers": {
                          "default": [],
                          "description": "List of containers making this container group.",
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "build": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "Build reference embedded in a container spec when an image build is triggered.",
                                    "properties": {
                                      "artifactImageBuildId": {
                                        "description": "Artifact image build id.",
                                        "title": "Artifactimagebuildid",
                                        "type": "string"
                                      },
                                      "createdAt": {
                                        "description": "Build creation timestamp (utc).",
                                        "format": "date-time",
                                        "title": "Createdat",
                                        "type": "string"
                                      },
                                      "status": {
                                        "description": "Image build reported status at submit time.",
                                        "title": "Status",
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "artifactImageBuildId",
                                      "status",
                                      "createdAt"
                                    ],
                                    "title": "ContainerBuildInfo",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                              },
                              "description": {
                                "default": "",
                                "description": "Description of the container.",
                                "title": "Description",
                                "type": "string"
                              },
                              "entrypoint": {
                                "anyOf": [
                                  {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": "array"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                                "title": "Entrypoint"
                              },
                              "environmentVars": {
                                "default": [],
                                "description": "Environment variables.",
                                "items": {
                                  "anyOf": [
                                    {
                                      "properties": {
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "string",
                                          "default": "string",
                                          "title": "Source",
                                          "type": "string"
                                        },
                                        "value": {
                                          "description": "Value of the environment variable.",
                                          "title": "Value",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "name",
                                        "value"
                                      ],
                                      "title": "StringEnvironmentVariable",
                                      "type": "object"
                                    },
                                    {
                                      "properties": {
                                        "drCredentialId": {
                                          "description": "Id of the datarobot credential to use.",
                                          "title": "DR Credential ID",
                                          "type": "string"
                                        },
                                        "key": {
                                          "description": "Key within the credential.",
                                          "title": "Key",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "dr-credential",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "source",
                                        "name",
                                        "drCredentialId",
                                        "key"
                                      ],
                                      "title": "CredentialEnvironmentVariable",
                                      "type": "object"
                                    },
                                    {
                                      "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                      "properties": {
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "dr-api-token",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "source",
                                        "name"
                                      ],
                                      "title": "DrApiTokenEnvironmentVariable",
                                      "type": "object"
                                    }
                                  ]
                                },
                                "title": "Environmentvars",
                                "type": "array"
                              },
                              "imageBuildConfig": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "User-provided configuration for server-side image builds from source code.",
                                    "properties": {
                                      "codeRef": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "properties": {
                                              "datarobot": {
                                                "additionalProperties": false,
                                                "properties": {
                                                  "catalogId": {
                                                    "title": "Catalogid",
                                                    "type": "string"
                                                  },
                                                  "catalogVersionId": {
                                                    "title": "Catalogversionid",
                                                    "type": "string"
                                                  }
                                                },
                                                "required": [
                                                  "catalogId",
                                                  "catalogVersionId"
                                                ],
                                                "title": "DataRobotCodeRef",
                                                "type": "object"
                                              },
                                              "provider": {
                                                "const": "datarobot",
                                                "default": "datarobot",
                                                "title": "Provider",
                                                "type": "string"
                                              },
                                              "type": {
                                                "const": "datarobot",
                                                "default": "datarobot",
                                                "title": "Type",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "datarobot"
                                            ],
                                            "title": "CodeRef",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                      },
                                      "dockerfile": {
                                        "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                        "discriminator": {
                                          "mapping": {
                                            "generated": "#/components/schemas/GeneratedDockerfile",
                                            "provided": "#/components/schemas/ProvidedDockerfile"
                                          },
                                          "propertyName": "source"
                                        },
                                        "oneOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "User supplies a dockerfile in the uploaded source code.",
                                            "properties": {
                                              "path": {
                                                "default": "./Dockerfile",
                                                "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                                "title": "Path",
                                                "type": "string"
                                              },
                                              "source": {
                                                "const": "provided",
                                                "default": "provided",
                                                "title": "Source",
                                                "type": "string"
                                              }
                                            },
                                            "title": "ProvidedDockerfile",
                                            "type": "object"
                                          },
                                          {
                                            "additionalProperties": false,
                                            "description": "System generates a dockerfile from execution environment metadata.",
                                            "properties": {
                                              "entrypoint": {
                                                "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                                "items": {
                                                  "type": "string"
                                                },
                                                "minItems": 1,
                                                "title": "Entrypoint",
                                                "type": "array"
                                              },
                                              "executionEnvironmentId": {
                                                "description": "Execution environment id used to resolve the base Docker image.",
                                                "title": "Execution Environment ID",
                                                "type": "string"
                                              },
                                              "executionEnvironmentVersionId": {
                                                "description": "Execution environment version id that pins the exact base image tag.",
                                                "title": "Execution Environment Version ID",
                                                "type": "string"
                                              },
                                              "source": {
                                                "const": "generated",
                                                "default": "generated",
                                                "title": "Source",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "executionEnvironmentId",
                                              "executionEnvironmentVersionId",
                                              "entrypoint"
                                            ],
                                            "title": "GeneratedDockerfile",
                                            "type": "object"
                                          }
                                        ],
                                        "title": "Dockerfile"
                                      }
                                    },
                                    "title": "ImageBuildConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Configuration for server-side image builds from source code."
                              },
                              "imageUri": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                                "title": "Imageuri"
                              },
                              "livenessProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container liveness check configuration."
                              },
                              "name": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                                "title": "Name"
                              },
                              "port": {
                                "anyOf": [
                                  {
                                    "maximum": 65535,
                                    "minimum": 1024,
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                                "title": "Port"
                              },
                              "primary": {
                                "anyOf": [
                                  {
                                    "type": "boolean"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": false,
                                "description": "Whether this is the primary container.",
                                "title": "Primary"
                              },
                              "readinessProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container readiness check configuration."
                              },
                              "securityContext": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                                    "properties": {
                                      "allowPrivilegeEscalation": {
                                        "anyOf": [
                                          {
                                            "type": "boolean"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                        "title": "Allowprivilegeescalation"
                                      },
                                      "capabilities": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "Linux capabilities to add or drop from the container.",
                                            "properties": {
                                              "add": {
                                                "anyOf": [
                                                  {
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "type": "array"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Capabilities to add.",
                                                "title": "Add"
                                              },
                                              "drop": {
                                                "anyOf": [
                                                  {
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "type": "array"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Capabilities to drop.",
                                                "title": "Drop"
                                              }
                                            },
                                            "title": "Capabilities",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Linux capabilities to add or drop."
                                      },
                                      "readOnlyRootFilesystem": {
                                        "anyOf": [
                                          {
                                            "type": "boolean"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Whether the root filesystem is read-only.",
                                        "title": "Readonlyrootfilesystem"
                                      },
                                      "seccompProfile": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "Seccomp profile configuration.",
                                            "properties": {
                                              "localhostProfile": {
                                                "anyOf": [
                                                  {
                                                    "type": "string"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                                "title": "Localhostprofile"
                                              },
                                              "type": {
                                                "description": "Allowed seccomp profile types.",
                                                "enum": [
                                                  "RuntimeDefault",
                                                  "Unconfined",
                                                  "Localhost"
                                                ],
                                                "title": "SeccompProfileType",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "type"
                                            ],
                                            "title": "SeccompProfile",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Seccomp profile for the container."
                                      }
                                    },
                                    "title": "SecurityContext",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container security context."
                              },
                              "startupProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container startup check configuration."
                              }
                            },
                            "title": "Container",
                            "type": "object"
                          },
                          "title": "Containers",
                          "type": "array"
                        },
                        "name": {
                          "default": "default",
                          "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name",
                          "type": "string"
                        }
                      },
                      "title": "ContainerGroup",
                      "type": "object"
                    },
                    "title": "Containergroups",
                    "type": "array"
                  },
                  "storage": {
                    "anyOf": [
                      {
                        "additionalProperties": false,
                        "description": "Model weight storage configuration for nim artifacts.",
                        "properties": {
                          "mode": {
                            "default": "dedicatedPvc",
                            "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                            "enum": [
                              "dedicatedPvc",
                              "nimCache"
                            ],
                            "title": "Mode",
                            "type": "string"
                          },
                          "pvcSize": {
                            "anyOf": [
                              {
                                "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ],
                            "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                            "title": "Pvcsize"
                          }
                        },
                        "title": "NimStorageConfig",
                        "type": "object"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
                  },
                  "templateId": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Id of the template used to create this nim artifact.",
                    "title": "Templateid"
                  },
                  "type": {
                    "const": "nim",
                    "default": "nim",
                    "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
                    "title": "Type",
                    "type": "string"
                  }
                },
                "title": "NimArtifactSpec",
                "type": "object"
              }
            ],
            "title": "Spec"
          },
          "status": {
            "enum": [
              "draft",
              "locked"
            ],
            "title": "ArtifactStatus",
            "type": "string"
          },
          "tags": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "id": {
                  "description": "Unique identifier of the tag.",
                  "title": "Id",
                  "type": "string"
                },
                "name": {
                  "description": "Name of the tag.",
                  "title": "Name",
                  "type": "string"
                },
                "value": {
                  "description": "Value of the tag.",
                  "title": "Value",
                  "type": "string"
                }
              },
              "required": [
                "id",
                "name",
                "value"
              ],
              "title": "TagInfo",
              "type": "object"
            },
            "type": "array"
          },
          "type": {
            "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
            "enum": [
              "service",
              "nim"
            ],
            "title": "ArtifactType",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp of when the entity was last updated.",
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
          },
          "version": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "description": "Version number of the artifact (set only for locked artifacts).",
            "title": "Version"
          }
        },
        "required": [
          "id",
          "name",
          "createdAt",
          "updatedAt",
          "spec",
          "artifactRepositoryId"
        ],
        "title": "ArtifactFormatted",
        "type": "object"
      },
      "title": "Data",
      "type": "array"
    },
    "next": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the next page, or `null` if there is no such page.",
      "title": "Next"
    },
    "previous": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the previous page, or `null` if there is no such page.",
      "title": "Previous"
    },
    "totalCount": {
      "description": "The total number of records.",
      "title": "Totalcount",
      "type": "integer"
    }
  },
  "required": [
    "totalCount",
    "count",
    "next",
    "previous",
    "data"
  ],
  "title": "ArtifactListResponse",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ArtifactListResponse
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
422 Unprocessable Entity Validation Error HTTPValidationError

Create Artifact

Operation path: POST /artifacts

Create a new artifact from the provided container specification. Artifacts are always created as drafts.

Body parameter

{
  "additionalProperties": false,
  "description": "Request to create an artifact. an artifact is always created as a draft.",
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifactrepositoryid"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "name": {
      "description": "Name of the artifact.",
      "maxLength": 5000,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    }
  },
  "required": [
    "name",
    "spec"
  ],
  "title": "InputArtifact",
  "type": "object"
}

Parameters

Name In Type Required Description
body body InputArtifact true none

Example responses

201 Response

{
  "additionalProperties": false,
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifact Repository ID"
    },
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "permissions": {
      "anyOf": [
        {
          "items": {
            "description": "Represents the particular role a user, group or organization holds on an entity.",
            "enum": [
              "CAN_VIEW",
              "CAN_UPDATE",
              "CAN_DELETE",
              "CAN_SHARE",
              "CAN_MAKE_PREDICTIONS",
              "CAN_SHARE_ROLE_OWNER",
              "CAN_SHARE_ROLE_READ_WRITE",
              "CAN_SHARE_ROLE_READ_ONLY"
            ],
            "title": "ResourcePermission",
            "type": "string"
          },
          "type": "array"
        },
        {
          "items": {
            "const": "*",
            "type": "string"
          },
          "type": "array"
        }
      ]
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "tags": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Unique identifier of the tag.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "Name of the tag.",
            "title": "Name",
            "type": "string"
          },
          "value": {
            "description": "Value of the tag.",
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "value"
        ],
        "title": "TagInfo",
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    },
    "version": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Version number of the artifact (set only for locked artifacts).",
      "title": "Version"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt",
    "spec",
    "artifactRepositoryId"
  ],
  "title": "ArtifactFormatted",
  "type": "object"
}

Responses

Status Meaning Description Schema
201 Created Successful Response ArtifactFormatted
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
422 Unprocessable Entity Validation Error HTTPValidationError

Delete Artifact By Artifact_ Id by artifact_ ID

Operation path: DELETE /artifacts/{artifact_id}

Delete an artifact. Locked artifacts and artifacts with associated protons cannot be deleted.

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID

Example responses

422 Response

{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "ctx": {
            "title": "Context",
            "type": "object"
          },
          "input": {
            "title": "Input"
          },
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "title": "Location",
            "type": "array"
          },
          "msg": {
            "title": "Message",
            "type": "string"
          },
          "type": {
            "title": "Error Type",
            "type": "string"
          }
        },
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError",
        "type": "object"
      },
      "title": "Detail",
      "type": "array"
    }
  },
  "title": "HTTPValidationError",
  "type": "object"
}

Responses

Status Meaning Description Schema
204 No Content Successful Response None
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
409 Conflict Artifact is locked or currently in use by a workload None
422 Unprocessable Entity Validation Error HTTPValidationError

Get Artifact By Artifact_ Id by artifact_ ID

Operation path: GET /artifacts/{artifact_id}

Get a specific artifact by ID.

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID

Example responses

200 Response

{
  "additionalProperties": false,
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifact Repository ID"
    },
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "permissions": {
      "anyOf": [
        {
          "items": {
            "description": "Represents the particular role a user, group or organization holds on an entity.",
            "enum": [
              "CAN_VIEW",
              "CAN_UPDATE",
              "CAN_DELETE",
              "CAN_SHARE",
              "CAN_MAKE_PREDICTIONS",
              "CAN_SHARE_ROLE_OWNER",
              "CAN_SHARE_ROLE_READ_WRITE",
              "CAN_SHARE_ROLE_READ_ONLY"
            ],
            "title": "ResourcePermission",
            "type": "string"
          },
          "type": "array"
        },
        {
          "items": {
            "const": "*",
            "type": "string"
          },
          "type": "array"
        }
      ]
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "tags": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Unique identifier of the tag.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "Name of the tag.",
            "title": "Name",
            "type": "string"
          },
          "value": {
            "description": "Value of the tag.",
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "value"
        ],
        "title": "TagInfo",
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    },
    "version": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Version number of the artifact (set only for locked artifacts).",
      "title": "Version"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt",
    "spec",
    "artifactRepositoryId"
  ],
  "title": "ArtifactFormatted",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ArtifactFormatted
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Patch Artifact By Artifact_ Id by artifact_ ID

Operation path: PATCH /artifacts/{artifact_id}

Partially update an artifact. Only the provided fields will be updated.

Body parameter

{
  "additionalProperties": false,
  "description": "Request to update an artifact. when updating an artifact, the user_id and tenant_id cannot be changed. currently transferring of ownership of an artifact is not supported.",
  "properties": {
    "description": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Description of the artifact.",
      "title": "Description"
    },
    "name": {
      "anyOf": [
        {
          "maxLength": 5000,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Name of the artifact.",
      "title": "Name"
    },
    "spec": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            }
          },
          "title": "MultiContainerArtifactSpec",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Artifact specification."
    },
    "status": {
      "anyOf": [
        {
          "enum": [
            "draft",
            "locked"
          ],
          "title": "ArtifactStatus",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Artifact status."
    }
  },
  "title": "UpdateArtifactRequest",
  "type": "object"
}

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID
body body UpdateArtifactRequest true none

Example responses

200 Response

{
  "additionalProperties": false,
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifact Repository ID"
    },
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "permissions": {
      "anyOf": [
        {
          "items": {
            "description": "Represents the particular role a user, group or organization holds on an entity.",
            "enum": [
              "CAN_VIEW",
              "CAN_UPDATE",
              "CAN_DELETE",
              "CAN_SHARE",
              "CAN_MAKE_PREDICTIONS",
              "CAN_SHARE_ROLE_OWNER",
              "CAN_SHARE_ROLE_READ_WRITE",
              "CAN_SHARE_ROLE_READ_ONLY"
            ],
            "title": "ResourcePermission",
            "type": "string"
          },
          "type": "array"
        },
        {
          "items": {
            "const": "*",
            "type": "string"
          },
          "type": "array"
        }
      ]
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "tags": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Unique identifier of the tag.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "Name of the tag.",
            "title": "Name",
            "type": "string"
          },
          "value": {
            "description": "Value of the tag.",
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "value"
        ],
        "title": "TagInfo",
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    },
    "version": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Version number of the artifact (set only for locked artifacts).",
      "title": "Version"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt",
    "spec",
    "artifactRepositoryId"
  ],
  "title": "ArtifactFormatted",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ArtifactFormatted
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Update Artifact By Artifact_ Id by artifact_ ID

Operation path: PUT /artifacts/{artifact_id}

Update an existing artifact.

Replaces all artifact fields with the provided values. For partial updates, use the PATCH endpoint instead.

Body parameter

{
  "additionalProperties": false,
  "description": "Request to create an artifact. an artifact is always created as a draft.",
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifactrepositoryid"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "name": {
      "description": "Name of the artifact.",
      "maxLength": 5000,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    }
  },
  "required": [
    "name",
    "spec"
  ],
  "title": "InputArtifact",
  "type": "object"
}

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID
body body InputArtifact true none

Example responses

200 Response

{
  "additionalProperties": false,
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifact Repository ID"
    },
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "permissions": {
      "anyOf": [
        {
          "items": {
            "description": "Represents the particular role a user, group or organization holds on an entity.",
            "enum": [
              "CAN_VIEW",
              "CAN_UPDATE",
              "CAN_DELETE",
              "CAN_SHARE",
              "CAN_MAKE_PREDICTIONS",
              "CAN_SHARE_ROLE_OWNER",
              "CAN_SHARE_ROLE_READ_WRITE",
              "CAN_SHARE_ROLE_READ_ONLY"
            ],
            "title": "ResourcePermission",
            "type": "string"
          },
          "type": "array"
        },
        {
          "items": {
            "const": "*",
            "type": "string"
          },
          "type": "array"
        }
      ]
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "tags": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Unique identifier of the tag.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "Name of the tag.",
            "title": "Name",
            "type": "string"
          },
          "value": {
            "description": "Value of the tag.",
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "value"
        ],
        "title": "TagInfo",
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    },
    "version": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Version number of the artifact (set only for locked artifacts).",
      "title": "Version"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt",
    "spec",
    "artifactRepositoryId"
  ],
  "title": "ArtifactFormatted",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ArtifactFormatted
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Get Artifact Build List By Artifact_ Id by artifact_ ID

Operation path: GET /artifacts/{artifact_id}/builds

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID
offset query integer false Skip the specified number of values.
limit query integer false Retrieve only the specified number of values.

Example responses

200 Response

{
  "additionalProperties": false,
  "description": "Paginated list of formatted artifact image builds for get …/builds.",
  "properties": {
    "count": {
      "description": "The number of records on this page.",
      "title": "Count",
      "type": "integer"
    },
    "data": {
      "description": "The list of records.",
      "items": {
        "additionalProperties": false,
        "description": "Build row formatted for get …/builds (same base fields as other `*formatted` API models).",
        "properties": {
          "artifactId": {
            "description": "Parent artifact id.",
            "title": "Artifact Id",
            "type": "string"
          },
          "createdAt": {
            "description": "Timestamp of when the entity was created.",
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "creator": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "User information embedded in API responses.",
                "properties": {
                  "email": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User email address.",
                    "title": "Email"
                  },
                  "fullName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's full name.",
                    "title": "Full Name"
                  },
                  "id": {
                    "description": "User id associated with this resource.",
                    "title": "User ID",
                    "type": "string"
                  },
                  "userhash": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's gravatar hash.",
                    "title": "Userhash"
                  },
                  "username": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Username.",
                    "title": "Username"
                  }
                },
                "required": [
                  "id"
                ],
                "title": "UserData",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Owner user details including id, username and email.",
            "title": "Creator"
          },
          "id": {
            "description": "Unique identifier of the entity.",
            "title": "ID",
            "type": "string"
          },
          "name": {
            "description": "Name of the entity.",
            "title": "Name",
            "type": "string"
          },
          "status": {
            "description": "Client-facing artifact image build status.",
            "enum": [
              "PENDING",
              "IN_PROGRESS",
              "BUILT",
              "COMPLETED",
              "CANCELLED",
              "FAILED",
              "UNKNOWN"
            ],
            "title": "ImageBuildExternalStatus",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp of when the entity was last updated.",
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "createdAt",
          "updatedAt",
          "artifactId"
        ],
        "title": "ImageBuildFormatted",
        "type": "object"
      },
      "title": "Data",
      "type": "array"
    },
    "next": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the next page, or `null` if there is no such page.",
      "title": "Next"
    },
    "previous": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the previous page, or `null` if there is no such page.",
      "title": "Previous"
    },
    "totalCount": {
      "description": "The total number of records.",
      "title": "Totalcount",
      "type": "integer"
    }
  },
  "required": [
    "totalCount",
    "count",
    "next",
    "previous",
    "data"
  ],
  "title": "ImageBuildFormattedList",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ImageBuildFormattedList
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Bad request None

Trigger Artifact Build By Artifact_ Id by artifact_ ID

Operation path: POST /artifacts/{artifact_id}/builds

Start image build(s) for a draft service artifact (codeRef). Locked artifacts are rejected.

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID

Example responses

202 Response

{
  "additionalProperties": false,
  "description": "Response after requesting image build(s) for a draft artifact.",
  "properties": {
    "buildIds": {
      "description": "Workload API artifact image build document ids (same strings returned as `build_id` on get/delete build routes), one per distinct files API catalog/version pair. internal image build ids are not returned.",
      "items": {
        "type": "string"
      },
      "title": "Buildids",
      "type": "array"
    }
  },
  "required": [
    "buildIds"
  ],
  "title": "ImageBuildTriggerResponse",
  "type": "object"
}

Responses

Status Meaning Description Schema
202 Accepted Successful Response ImageBuildTriggerResponse
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Invalid state, missing files, or other services error None

Delete Artifact Build By Artifact_ Id by artifact_ ID

Operation path: DELETE /artifacts/{artifact_id}/builds/{build_id}

Request cancellation/deletion of an image build for a draft artifact (immutable when locked).

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID
build_id path string true Workload API artifact image build id, same id returned by trigger build

Responses

Status Meaning Description Schema
204 No Content Successful Response None
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Artifact not draft or internal error None

Get Artifact Build By Artifact_ Id by artifact_ ID

Operation path: GET /artifacts/{artifact_id}/builds/{build_id}

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID
build_id path string true Workload API artifact image build id, same id returned by trigger build

Example responses

200 Response

{
  "additionalProperties": false,
  "description": "Build row formatted for get …/builds (same base fields as other `*formatted` API models).",
  "properties": {
    "artifactId": {
      "description": "Parent artifact id.",
      "title": "Artifact Id",
      "type": "string"
    },
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "status": {
      "description": "Client-facing artifact image build status.",
      "enum": [
        "PENDING",
        "IN_PROGRESS",
        "BUILT",
        "COMPLETED",
        "CANCELLED",
        "FAILED",
        "UNKNOWN"
      ],
      "title": "ImageBuildExternalStatus",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt",
    "artifactId"
  ],
  "title": "ImageBuildFormatted",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ImageBuildFormatted
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Invalid build id or bad request None

Get Artifact Build logs By Artifact_ Id by artifact_ ID

Operation path: GET /artifacts/{artifact_id}/builds/{build_id}/logs

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID
build_id path string true Workload API artifact image build id, same id returned by trigger build

Example responses

200 Response

{"type":"string"}

Responses

Status Meaning Description Schema
200 OK Successful Response string
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Invalid build id or bad request None

Clone Artifact By Artifact_ Id by artifact_ ID

Operation path: POST /artifacts/{artifact_id}/clone

Clone an existing artifact. Creates a new artifact with the same fields as the original.

Body parameter

{
  "additionalProperties": false,
  "properties": {
    "name": {
      "description": "The name of the cloned artifact.",
      "maxLength": 5000,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    }
  },
  "required": [
    "name"
  ],
  "title": "ArtifactCloneRequest",
  "type": "object"
}

Parameters

Name In Type Required Description
artifact_id path string true Artifact ID
body body ArtifactCloneRequest true none

Example responses

200 Response

{
  "additionalProperties": false,
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifact Repository ID"
    },
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "permissions": {
      "anyOf": [
        {
          "items": {
            "description": "Represents the particular role a user, group or organization holds on an entity.",
            "enum": [
              "CAN_VIEW",
              "CAN_UPDATE",
              "CAN_DELETE",
              "CAN_SHARE",
              "CAN_MAKE_PREDICTIONS",
              "CAN_SHARE_ROLE_OWNER",
              "CAN_SHARE_ROLE_READ_WRITE",
              "CAN_SHARE_ROLE_READ_ONLY"
            ],
            "title": "ResourcePermission",
            "type": "string"
          },
          "type": "array"
        },
        {
          "items": {
            "const": "*",
            "type": "string"
          },
          "type": "array"
        }
      ]
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "tags": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Unique identifier of the tag.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "Name of the tag.",
            "title": "Name",
            "type": "string"
          },
          "value": {
            "description": "Value of the tag.",
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "value"
        ],
        "title": "TagInfo",
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    },
    "version": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Version number of the artifact (set only for locked artifacts).",
      "title": "Version"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt",
    "spec",
    "artifactRepositoryId"
  ],
  "title": "ArtifactFormatted",
  "type": "object"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ArtifactFormatted
400 Bad Request Bad request None
401 Unauthorized Unauthenticated None
403 Forbidden Insufficient permissions None
404 Not Found Artifact not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Schemas

ANY_PERMISSION

{
  "const": "*",
  "type": "string"
}

Properties

Name Type Required Restrictions Description
anonymous string false none

ArtifactCloneRequest

{
  "additionalProperties": false,
  "properties": {
    "name": {
      "description": "The name of the cloned artifact.",
      "maxLength": 5000,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    }
  },
  "required": [
    "name"
  ],
  "title": "ArtifactCloneRequest",
  "type": "object"
}

ArtifactCloneRequest

Properties

Name Type Required Restrictions Description
name string true maxLength: 5000
minLength: 1
minLength: 1
The name of the cloned artifact.

ArtifactFormatted

{
  "additionalProperties": false,
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifact Repository ID"
    },
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "permissions": {
      "anyOf": [
        {
          "items": {
            "description": "Represents the particular role a user, group or organization holds on an entity.",
            "enum": [
              "CAN_VIEW",
              "CAN_UPDATE",
              "CAN_DELETE",
              "CAN_SHARE",
              "CAN_MAKE_PREDICTIONS",
              "CAN_SHARE_ROLE_OWNER",
              "CAN_SHARE_ROLE_READ_WRITE",
              "CAN_SHARE_ROLE_READ_ONLY"
            ],
            "title": "ResourcePermission",
            "type": "string"
          },
          "type": "array"
        },
        {
          "items": {
            "const": "*",
            "type": "string"
          },
          "type": "array"
        }
      ]
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "tags": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Unique identifier of the tag.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "Name of the tag.",
            "title": "Name",
            "type": "string"
          },
          "value": {
            "description": "Value of the tag.",
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "value"
        ],
        "title": "TagInfo",
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    },
    "version": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Version number of the artifact (set only for locked artifacts).",
      "title": "Version"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt",
    "spec",
    "artifactRepositoryId"
  ],
  "title": "ArtifactFormatted",
  "type": "object"
}

ArtifactFormatted

Properties

Name Type Required Restrictions Description
artifactRepositoryId any true Id of the artifact repository this artifact belongs to (for versioning support).

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
createdAt string(date-time) true Timestamp of when the entity was created.
creator any false Owner user details including id, username and email.

anyOf

Name Type Required Restrictions Description
» anonymous UserData false User information embedded in API responses.

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
description string false Description of the artifact.
id string true Unique identifier of the entity.
name string true Name of the entity.
permissions ResourcePermissions false User permissions for this artifact.
spec any true Artifact specification.

oneOf

Name Type Required Restrictions Description
» anonymous ServiceArtifactSpec false none

xor

Name Type Required Restrictions Description
» anonymous NimArtifactSpec false none

continued

Name Type Required Restrictions Description
status ArtifactStatus false Artifact status.
tags Tags false Tags associated with this artifact.
type ArtifactType false Artifact type.
updatedAt string(date-time) true Timestamp of when the entity was last updated.
version any false Version number of the artifact (set only for locked artifacts).

anyOf

Name Type Required Restrictions Description
» anonymous integer false none

or

Name Type Required Restrictions Description
» anonymous null false none

ArtifactListResponse

{
  "additionalProperties": false,
  "properties": {
    "count": {
      "description": "The number of records on this page.",
      "title": "Count",
      "type": "integer"
    },
    "data": {
      "description": "The list of records.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "artifactRepositoryId": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
            "title": "Artifact Repository ID"
          },
          "createdAt": {
            "description": "Timestamp of when the entity was created.",
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "creator": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "User information embedded in API responses.",
                "properties": {
                  "email": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User email address.",
                    "title": "Email"
                  },
                  "fullName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's full name.",
                    "title": "Full Name"
                  },
                  "id": {
                    "description": "User id associated with this resource.",
                    "title": "User ID",
                    "type": "string"
                  },
                  "userhash": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's gravatar hash.",
                    "title": "Userhash"
                  },
                  "username": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Username.",
                    "title": "Username"
                  }
                },
                "required": [
                  "id"
                ],
                "title": "UserData",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Owner user details including id, username and email.",
            "title": "Creator"
          },
          "description": {
            "default": "",
            "description": "Description of the artifact.",
            "title": "Description",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the entity.",
            "title": "ID",
            "type": "string"
          },
          "name": {
            "description": "Name of the entity.",
            "title": "Name",
            "type": "string"
          },
          "permissions": {
            "anyOf": [
              {
                "items": {
                  "description": "Represents the particular role a user, group or organization holds on an entity.",
                  "enum": [
                    "CAN_VIEW",
                    "CAN_UPDATE",
                    "CAN_DELETE",
                    "CAN_SHARE",
                    "CAN_MAKE_PREDICTIONS",
                    "CAN_SHARE_ROLE_OWNER",
                    "CAN_SHARE_ROLE_READ_WRITE",
                    "CAN_SHARE_ROLE_READ_ONLY"
                  ],
                  "title": "ResourcePermission",
                  "type": "string"
                },
                "type": "array"
              },
              {
                "items": {
                  "const": "*",
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "spec": {
            "description": "Artifact specification.",
            "discriminator": {
              "mapping": {
                "nim": "#/components/schemas/NimArtifactSpec",
                "service": "#/components/schemas/ServiceArtifactSpec"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "containerGroups": {
                    "default": [],
                    "description": "List of container groups.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "containers": {
                          "default": [],
                          "description": "List of containers making this container group.",
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "build": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "Build reference embedded in a container spec when an image build is triggered.",
                                    "properties": {
                                      "artifactImageBuildId": {
                                        "description": "Artifact image build id.",
                                        "title": "Artifactimagebuildid",
                                        "type": "string"
                                      },
                                      "createdAt": {
                                        "description": "Build creation timestamp (utc).",
                                        "format": "date-time",
                                        "title": "Createdat",
                                        "type": "string"
                                      },
                                      "status": {
                                        "description": "Image build reported status at submit time.",
                                        "title": "Status",
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "artifactImageBuildId",
                                      "status",
                                      "createdAt"
                                    ],
                                    "title": "ContainerBuildInfo",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                              },
                              "description": {
                                "default": "",
                                "description": "Description of the container.",
                                "title": "Description",
                                "type": "string"
                              },
                              "entrypoint": {
                                "anyOf": [
                                  {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": "array"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                                "title": "Entrypoint"
                              },
                              "environmentVars": {
                                "default": [],
                                "description": "Environment variables.",
                                "items": {
                                  "anyOf": [
                                    {
                                      "properties": {
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "string",
                                          "default": "string",
                                          "title": "Source",
                                          "type": "string"
                                        },
                                        "value": {
                                          "description": "Value of the environment variable.",
                                          "title": "Value",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "name",
                                        "value"
                                      ],
                                      "title": "StringEnvironmentVariable",
                                      "type": "object"
                                    },
                                    {
                                      "properties": {
                                        "drCredentialId": {
                                          "description": "Id of the datarobot credential to use.",
                                          "title": "DR Credential ID",
                                          "type": "string"
                                        },
                                        "key": {
                                          "description": "Key within the credential.",
                                          "title": "Key",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "dr-credential",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "source",
                                        "name",
                                        "drCredentialId",
                                        "key"
                                      ],
                                      "title": "CredentialEnvironmentVariable",
                                      "type": "object"
                                    },
                                    {
                                      "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                      "properties": {
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "dr-api-token",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "source",
                                        "name"
                                      ],
                                      "title": "DrApiTokenEnvironmentVariable",
                                      "type": "object"
                                    }
                                  ]
                                },
                                "title": "Environmentvars",
                                "type": "array"
                              },
                              "imageBuildConfig": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "User-provided configuration for server-side image builds from source code.",
                                    "properties": {
                                      "codeRef": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "properties": {
                                              "datarobot": {
                                                "additionalProperties": false,
                                                "properties": {
                                                  "catalogId": {
                                                    "title": "Catalogid",
                                                    "type": "string"
                                                  },
                                                  "catalogVersionId": {
                                                    "title": "Catalogversionid",
                                                    "type": "string"
                                                  }
                                                },
                                                "required": [
                                                  "catalogId",
                                                  "catalogVersionId"
                                                ],
                                                "title": "DataRobotCodeRef",
                                                "type": "object"
                                              },
                                              "provider": {
                                                "const": "datarobot",
                                                "default": "datarobot",
                                                "title": "Provider",
                                                "type": "string"
                                              },
                                              "type": {
                                                "const": "datarobot",
                                                "default": "datarobot",
                                                "title": "Type",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "datarobot"
                                            ],
                                            "title": "CodeRef",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                      },
                                      "dockerfile": {
                                        "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                        "discriminator": {
                                          "mapping": {
                                            "generated": "#/components/schemas/GeneratedDockerfile",
                                            "provided": "#/components/schemas/ProvidedDockerfile"
                                          },
                                          "propertyName": "source"
                                        },
                                        "oneOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "User supplies a dockerfile in the uploaded source code.",
                                            "properties": {
                                              "path": {
                                                "default": "./Dockerfile",
                                                "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                                "title": "Path",
                                                "type": "string"
                                              },
                                              "source": {
                                                "const": "provided",
                                                "default": "provided",
                                                "title": "Source",
                                                "type": "string"
                                              }
                                            },
                                            "title": "ProvidedDockerfile",
                                            "type": "object"
                                          },
                                          {
                                            "additionalProperties": false,
                                            "description": "System generates a dockerfile from execution environment metadata.",
                                            "properties": {
                                              "entrypoint": {
                                                "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                                "items": {
                                                  "type": "string"
                                                },
                                                "minItems": 1,
                                                "title": "Entrypoint",
                                                "type": "array"
                                              },
                                              "executionEnvironmentId": {
                                                "description": "Execution environment id used to resolve the base Docker image.",
                                                "title": "Execution Environment ID",
                                                "type": "string"
                                              },
                                              "executionEnvironmentVersionId": {
                                                "description": "Execution environment version id that pins the exact base image tag.",
                                                "title": "Execution Environment Version ID",
                                                "type": "string"
                                              },
                                              "source": {
                                                "const": "generated",
                                                "default": "generated",
                                                "title": "Source",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "executionEnvironmentId",
                                              "executionEnvironmentVersionId",
                                              "entrypoint"
                                            ],
                                            "title": "GeneratedDockerfile",
                                            "type": "object"
                                          }
                                        ],
                                        "title": "Dockerfile"
                                      }
                                    },
                                    "title": "ImageBuildConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Configuration for server-side image builds from source code."
                              },
                              "imageUri": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                                "title": "Imageuri"
                              },
                              "livenessProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container liveness check configuration."
                              },
                              "name": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                                "title": "Name"
                              },
                              "port": {
                                "anyOf": [
                                  {
                                    "maximum": 65535,
                                    "minimum": 1024,
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                                "title": "Port"
                              },
                              "primary": {
                                "anyOf": [
                                  {
                                    "type": "boolean"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": false,
                                "description": "Whether this is the primary container.",
                                "title": "Primary"
                              },
                              "readinessProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container readiness check configuration."
                              },
                              "securityContext": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                                    "properties": {
                                      "allowPrivilegeEscalation": {
                                        "anyOf": [
                                          {
                                            "type": "boolean"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                        "title": "Allowprivilegeescalation"
                                      },
                                      "capabilities": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "Linux capabilities to add or drop from the container.",
                                            "properties": {
                                              "add": {
                                                "anyOf": [
                                                  {
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "type": "array"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Capabilities to add.",
                                                "title": "Add"
                                              },
                                              "drop": {
                                                "anyOf": [
                                                  {
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "type": "array"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Capabilities to drop.",
                                                "title": "Drop"
                                              }
                                            },
                                            "title": "Capabilities",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Linux capabilities to add or drop."
                                      },
                                      "readOnlyRootFilesystem": {
                                        "anyOf": [
                                          {
                                            "type": "boolean"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Whether the root filesystem is read-only.",
                                        "title": "Readonlyrootfilesystem"
                                      },
                                      "seccompProfile": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "Seccomp profile configuration.",
                                            "properties": {
                                              "localhostProfile": {
                                                "anyOf": [
                                                  {
                                                    "type": "string"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                                "title": "Localhostprofile"
                                              },
                                              "type": {
                                                "description": "Allowed seccomp profile types.",
                                                "enum": [
                                                  "RuntimeDefault",
                                                  "Unconfined",
                                                  "Localhost"
                                                ],
                                                "title": "SeccompProfileType",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "type"
                                            ],
                                            "title": "SeccompProfile",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Seccomp profile for the container."
                                      }
                                    },
                                    "title": "SecurityContext",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container security context."
                              },
                              "startupProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container startup check configuration."
                              }
                            },
                            "title": "Container",
                            "type": "object"
                          },
                          "title": "Containers",
                          "type": "array"
                        },
                        "name": {
                          "default": "default",
                          "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name",
                          "type": "string"
                        }
                      },
                      "title": "ContainerGroup",
                      "type": "object"
                    },
                    "title": "Containergroups",
                    "type": "array"
                  },
                  "type": {
                    "const": "service",
                    "default": "service",
                    "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
                    "title": "Type",
                    "type": "string"
                  }
                },
                "title": "ServiceArtifactSpec",
                "type": "object"
              },
              {
                "additionalProperties": false,
                "properties": {
                  "containerGroups": {
                    "default": [],
                    "description": "List of container groups.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "containers": {
                          "default": [],
                          "description": "List of containers making this container group.",
                          "items": {
                            "additionalProperties": false,
                            "properties": {
                              "build": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "Build reference embedded in a container spec when an image build is triggered.",
                                    "properties": {
                                      "artifactImageBuildId": {
                                        "description": "Artifact image build id.",
                                        "title": "Artifactimagebuildid",
                                        "type": "string"
                                      },
                                      "createdAt": {
                                        "description": "Build creation timestamp (utc).",
                                        "format": "date-time",
                                        "title": "Createdat",
                                        "type": "string"
                                      },
                                      "status": {
                                        "description": "Image build reported status at submit time.",
                                        "title": "Status",
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "artifactImageBuildId",
                                      "status",
                                      "createdAt"
                                    ],
                                    "title": "ContainerBuildInfo",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                              },
                              "description": {
                                "default": "",
                                "description": "Description of the container.",
                                "title": "Description",
                                "type": "string"
                              },
                              "entrypoint": {
                                "anyOf": [
                                  {
                                    "items": {
                                      "type": "string"
                                    },
                                    "type": "array"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                                "title": "Entrypoint"
                              },
                              "environmentVars": {
                                "default": [],
                                "description": "Environment variables.",
                                "items": {
                                  "anyOf": [
                                    {
                                      "properties": {
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "string",
                                          "default": "string",
                                          "title": "Source",
                                          "type": "string"
                                        },
                                        "value": {
                                          "description": "Value of the environment variable.",
                                          "title": "Value",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "name",
                                        "value"
                                      ],
                                      "title": "StringEnvironmentVariable",
                                      "type": "object"
                                    },
                                    {
                                      "properties": {
                                        "drCredentialId": {
                                          "description": "Id of the datarobot credential to use.",
                                          "title": "DR Credential ID",
                                          "type": "string"
                                        },
                                        "key": {
                                          "description": "Key within the credential.",
                                          "title": "Key",
                                          "type": "string"
                                        },
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "dr-credential",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "source",
                                        "name",
                                        "drCredentialId",
                                        "key"
                                      ],
                                      "title": "CredentialEnvironmentVariable",
                                      "type": "object"
                                    },
                                    {
                                      "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                      "properties": {
                                        "name": {
                                          "description": "Name of the environment variable.",
                                          "title": "Name",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "dr-api-token",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "source",
                                        "name"
                                      ],
                                      "title": "DrApiTokenEnvironmentVariable",
                                      "type": "object"
                                    }
                                  ]
                                },
                                "title": "Environmentvars",
                                "type": "array"
                              },
                              "imageBuildConfig": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "User-provided configuration for server-side image builds from source code.",
                                    "properties": {
                                      "codeRef": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "properties": {
                                              "datarobot": {
                                                "additionalProperties": false,
                                                "properties": {
                                                  "catalogId": {
                                                    "title": "Catalogid",
                                                    "type": "string"
                                                  },
                                                  "catalogVersionId": {
                                                    "title": "Catalogversionid",
                                                    "type": "string"
                                                  }
                                                },
                                                "required": [
                                                  "catalogId",
                                                  "catalogVersionId"
                                                ],
                                                "title": "DataRobotCodeRef",
                                                "type": "object"
                                              },
                                              "provider": {
                                                "const": "datarobot",
                                                "default": "datarobot",
                                                "title": "Provider",
                                                "type": "string"
                                              },
                                              "type": {
                                                "const": "datarobot",
                                                "default": "datarobot",
                                                "title": "Type",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "datarobot"
                                            ],
                                            "title": "CodeRef",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                      },
                                      "dockerfile": {
                                        "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                        "discriminator": {
                                          "mapping": {
                                            "generated": "#/components/schemas/GeneratedDockerfile",
                                            "provided": "#/components/schemas/ProvidedDockerfile"
                                          },
                                          "propertyName": "source"
                                        },
                                        "oneOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "User supplies a dockerfile in the uploaded source code.",
                                            "properties": {
                                              "path": {
                                                "default": "./Dockerfile",
                                                "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                                "title": "Path",
                                                "type": "string"
                                              },
                                              "source": {
                                                "const": "provided",
                                                "default": "provided",
                                                "title": "Source",
                                                "type": "string"
                                              }
                                            },
                                            "title": "ProvidedDockerfile",
                                            "type": "object"
                                          },
                                          {
                                            "additionalProperties": false,
                                            "description": "System generates a dockerfile from execution environment metadata.",
                                            "properties": {
                                              "entrypoint": {
                                                "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                                "items": {
                                                  "type": "string"
                                                },
                                                "minItems": 1,
                                                "title": "Entrypoint",
                                                "type": "array"
                                              },
                                              "executionEnvironmentId": {
                                                "description": "Execution environment id used to resolve the base Docker image.",
                                                "title": "Execution Environment ID",
                                                "type": "string"
                                              },
                                              "executionEnvironmentVersionId": {
                                                "description": "Execution environment version id that pins the exact base image tag.",
                                                "title": "Execution Environment Version ID",
                                                "type": "string"
                                              },
                                              "source": {
                                                "const": "generated",
                                                "default": "generated",
                                                "title": "Source",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "executionEnvironmentId",
                                              "executionEnvironmentVersionId",
                                              "entrypoint"
                                            ],
                                            "title": "GeneratedDockerfile",
                                            "type": "object"
                                          }
                                        ],
                                        "title": "Dockerfile"
                                      }
                                    },
                                    "title": "ImageBuildConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Configuration for server-side image builds from source code."
                              },
                              "imageUri": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                                "title": "Imageuri"
                              },
                              "livenessProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container liveness check configuration."
                              },
                              "name": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                                "title": "Name"
                              },
                              "port": {
                                "anyOf": [
                                  {
                                    "maximum": 65535,
                                    "minimum": 1024,
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                                "title": "Port"
                              },
                              "primary": {
                                "anyOf": [
                                  {
                                    "type": "boolean"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": false,
                                "description": "Whether this is the primary container.",
                                "title": "Primary"
                              },
                              "readinessProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container readiness check configuration."
                              },
                              "securityContext": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                                    "properties": {
                                      "allowPrivilegeEscalation": {
                                        "anyOf": [
                                          {
                                            "type": "boolean"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                        "title": "Allowprivilegeescalation"
                                      },
                                      "capabilities": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "Linux capabilities to add or drop from the container.",
                                            "properties": {
                                              "add": {
                                                "anyOf": [
                                                  {
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "type": "array"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Capabilities to add.",
                                                "title": "Add"
                                              },
                                              "drop": {
                                                "anyOf": [
                                                  {
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "type": "array"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Capabilities to drop.",
                                                "title": "Drop"
                                              }
                                            },
                                            "title": "Capabilities",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Linux capabilities to add or drop."
                                      },
                                      "readOnlyRootFilesystem": {
                                        "anyOf": [
                                          {
                                            "type": "boolean"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Whether the root filesystem is read-only.",
                                        "title": "Readonlyrootfilesystem"
                                      },
                                      "seccompProfile": {
                                        "anyOf": [
                                          {
                                            "additionalProperties": false,
                                            "description": "Seccomp profile configuration.",
                                            "properties": {
                                              "localhostProfile": {
                                                "anyOf": [
                                                  {
                                                    "type": "string"
                                                  },
                                                  {
                                                    "type": "null"
                                                  }
                                                ],
                                                "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                                "title": "Localhostprofile"
                                              },
                                              "type": {
                                                "description": "Allowed seccomp profile types.",
                                                "enum": [
                                                  "RuntimeDefault",
                                                  "Unconfined",
                                                  "Localhost"
                                                ],
                                                "title": "SeccompProfileType",
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "type"
                                            ],
                                            "title": "SeccompProfile",
                                            "type": "object"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Seccomp profile for the container."
                                      }
                                    },
                                    "title": "SecurityContext",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container security context."
                              },
                              "startupProbe": {
                                "anyOf": [
                                  {
                                    "additionalProperties": false,
                                    "properties": {
                                      "failureThreshold": {
                                        "default": 3,
                                        "description": "Minimum consecutive failures for the probe to be considered failed.",
                                        "title": "Failurethreshold",
                                        "type": "integer"
                                      },
                                      "host": {
                                        "anyOf": [
                                          {
                                            "minLength": 0,
                                            "type": "string"
                                          },
                                          {
                                            "type": "null"
                                          }
                                        ],
                                        "description": "Host name to connect to, defaults to the pod ip.",
                                        "title": "Host"
                                      },
                                      "httpHeaders": {
                                        "additionalProperties": {
                                          "type": "string"
                                        },
                                        "description": "HTTP headers for probe.",
                                        "title": "Httpheaders",
                                        "type": "object"
                                      },
                                      "initialDelaySeconds": {
                                        "default": 30,
                                        "description": "Number of seconds to wait before the first probe is executed.",
                                        "title": "Initialdelayseconds",
                                        "type": "integer"
                                      },
                                      "path": {
                                        "description": "Url path to query for health check.",
                                        "title": "Path",
                                        "type": "string"
                                      },
                                      "periodSeconds": {
                                        "default": 30,
                                        "description": "How often (in seconds) to perform the probe.",
                                        "title": "Periodseconds",
                                        "type": "integer"
                                      },
                                      "port": {
                                        "default": 8080,
                                        "description": "Port number to access on the container.",
                                        "maximum": 65535,
                                        "minimum": 1,
                                        "title": "Port",
                                        "type": "integer"
                                      },
                                      "scheme": {
                                        "default": "HTTP",
                                        "description": "Scheme to use for connecting to the host.",
                                        "enum": [
                                          "HTTP",
                                          "HTTPS"
                                        ],
                                        "title": "Scheme",
                                        "type": "string"
                                      },
                                      "timeoutSeconds": {
                                        "default": 30,
                                        "description": "Number of seconds after which the probe times out.",
                                        "title": "Timeoutseconds",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "path"
                                    ],
                                    "title": "ProbeConfig",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "description": "Container startup check configuration."
                              }
                            },
                            "title": "Container",
                            "type": "object"
                          },
                          "title": "Containers",
                          "type": "array"
                        },
                        "name": {
                          "default": "default",
                          "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name",
                          "type": "string"
                        }
                      },
                      "title": "ContainerGroup",
                      "type": "object"
                    },
                    "title": "Containergroups",
                    "type": "array"
                  },
                  "storage": {
                    "anyOf": [
                      {
                        "additionalProperties": false,
                        "description": "Model weight storage configuration for nim artifacts.",
                        "properties": {
                          "mode": {
                            "default": "dedicatedPvc",
                            "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                            "enum": [
                              "dedicatedPvc",
                              "nimCache"
                            ],
                            "title": "Mode",
                            "type": "string"
                          },
                          "pvcSize": {
                            "anyOf": [
                              {
                                "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ],
                            "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                            "title": "Pvcsize"
                          }
                        },
                        "title": "NimStorageConfig",
                        "type": "object"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
                  },
                  "templateId": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Id of the template used to create this nim artifact.",
                    "title": "Templateid"
                  },
                  "type": {
                    "const": "nim",
                    "default": "nim",
                    "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
                    "title": "Type",
                    "type": "string"
                  }
                },
                "title": "NimArtifactSpec",
                "type": "object"
              }
            ],
            "title": "Spec"
          },
          "status": {
            "enum": [
              "draft",
              "locked"
            ],
            "title": "ArtifactStatus",
            "type": "string"
          },
          "tags": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "id": {
                  "description": "Unique identifier of the tag.",
                  "title": "Id",
                  "type": "string"
                },
                "name": {
                  "description": "Name of the tag.",
                  "title": "Name",
                  "type": "string"
                },
                "value": {
                  "description": "Value of the tag.",
                  "title": "Value",
                  "type": "string"
                }
              },
              "required": [
                "id",
                "name",
                "value"
              ],
              "title": "TagInfo",
              "type": "object"
            },
            "type": "array"
          },
          "type": {
            "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
            "enum": [
              "service",
              "nim"
            ],
            "title": "ArtifactType",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp of when the entity was last updated.",
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
          },
          "version": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "description": "Version number of the artifact (set only for locked artifacts).",
            "title": "Version"
          }
        },
        "required": [
          "id",
          "name",
          "createdAt",
          "updatedAt",
          "spec",
          "artifactRepositoryId"
        ],
        "title": "ArtifactFormatted",
        "type": "object"
      },
      "title": "Data",
      "type": "array"
    },
    "next": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the next page, or `null` if there is no such page.",
      "title": "Next"
    },
    "previous": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the previous page, or `null` if there is no such page.",
      "title": "Previous"
    },
    "totalCount": {
      "description": "The total number of records.",
      "title": "Totalcount",
      "type": "integer"
    }
  },
  "required": [
    "totalCount",
    "count",
    "next",
    "previous",
    "data"
  ],
  "title": "ArtifactListResponse",
  "type": "object"
}

ArtifactListResponse

Properties

Name Type Required Restrictions Description
count integer true The number of records on this page.
data [ArtifactFormatted] true The list of records.
next any true The url to the next page, or null if there is no such page.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
previous any true The url to the previous page, or null if there is no such page.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
totalCount integer true The total number of records.

ArtifactRepositoryFormatted

{
  "additionalProperties": false,
  "properties": {
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "lastVersionNumber": {
      "default": 0,
      "description": "Last version number.",
      "title": "Lastversionnumber",
      "type": "integer"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "numArtifacts": {
      "default": 0,
      "description": "Number of artifacts in this repository.",
      "minimum": 0,
      "title": "Numartifacts",
      "type": "integer"
    },
    "permissions": {
      "anyOf": [
        {
          "items": {
            "description": "Represents the particular role a user, group or organization holds on an entity.",
            "enum": [
              "CAN_VIEW",
              "CAN_UPDATE",
              "CAN_DELETE",
              "CAN_SHARE",
              "CAN_MAKE_PREDICTIONS",
              "CAN_SHARE_ROLE_OWNER",
              "CAN_SHARE_ROLE_READ_WRITE",
              "CAN_SHARE_ROLE_READ_ONLY"
            ],
            "title": "ResourcePermission",
            "type": "string"
          },
          "type": "array"
        },
        {
          "items": {
            "const": "*",
            "type": "string"
          },
          "type": "array"
        }
      ]
    },
    "tags": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "description": "Unique identifier of the tag.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "Name of the tag.",
            "title": "Name",
            "type": "string"
          },
          "value": {
            "description": "Value of the tag.",
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "value"
        ],
        "title": "TagInfo",
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt"
  ],
  "title": "ArtifactRepositoryFormatted",
  "type": "object"
}

ArtifactRepositoryFormatted

Properties

Name Type Required Restrictions Description
createdAt string(date-time) true Timestamp of when the entity was created.
creator any false Owner user details including id, username and email.

anyOf

Name Type Required Restrictions Description
» anonymous UserData false User information embedded in API responses.

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
id string true Unique identifier of the entity.
lastVersionNumber integer false Last version number.
name string true Name of the entity.
numArtifacts integer false minimum: 0
Number of artifacts in this repository.
permissions ResourcePermissions false User permissions for this artifact repository.
tags Tags false Tags for this repository.
type ArtifactType false Repository type (inherited from the first originating artifact).
updatedAt string(date-time) true Timestamp of when the entity was last updated.

ArtifactRepositoryListResponse

{
  "additionalProperties": false,
  "properties": {
    "count": {
      "description": "The number of records on this page.",
      "title": "Count",
      "type": "integer"
    },
    "data": {
      "description": "The list of records.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "createdAt": {
            "description": "Timestamp of when the entity was created.",
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "creator": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "User information embedded in API responses.",
                "properties": {
                  "email": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User email address.",
                    "title": "Email"
                  },
                  "fullName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's full name.",
                    "title": "Full Name"
                  },
                  "id": {
                    "description": "User id associated with this resource.",
                    "title": "User ID",
                    "type": "string"
                  },
                  "userhash": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's gravatar hash.",
                    "title": "Userhash"
                  },
                  "username": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Username.",
                    "title": "Username"
                  }
                },
                "required": [
                  "id"
                ],
                "title": "UserData",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Owner user details including id, username and email.",
            "title": "Creator"
          },
          "id": {
            "description": "Unique identifier of the entity.",
            "title": "ID",
            "type": "string"
          },
          "lastVersionNumber": {
            "default": 0,
            "description": "Last version number.",
            "title": "Lastversionnumber",
            "type": "integer"
          },
          "name": {
            "description": "Name of the entity.",
            "title": "Name",
            "type": "string"
          },
          "numArtifacts": {
            "default": 0,
            "description": "Number of artifacts in this repository.",
            "minimum": 0,
            "title": "Numartifacts",
            "type": "integer"
          },
          "permissions": {
            "anyOf": [
              {
                "items": {
                  "description": "Represents the particular role a user, group or organization holds on an entity.",
                  "enum": [
                    "CAN_VIEW",
                    "CAN_UPDATE",
                    "CAN_DELETE",
                    "CAN_SHARE",
                    "CAN_MAKE_PREDICTIONS",
                    "CAN_SHARE_ROLE_OWNER",
                    "CAN_SHARE_ROLE_READ_WRITE",
                    "CAN_SHARE_ROLE_READ_ONLY"
                  ],
                  "title": "ResourcePermission",
                  "type": "string"
                },
                "type": "array"
              },
              {
                "items": {
                  "const": "*",
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "tags": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "id": {
                  "description": "Unique identifier of the tag.",
                  "title": "Id",
                  "type": "string"
                },
                "name": {
                  "description": "Name of the tag.",
                  "title": "Name",
                  "type": "string"
                },
                "value": {
                  "description": "Value of the tag.",
                  "title": "Value",
                  "type": "string"
                }
              },
              "required": [
                "id",
                "name",
                "value"
              ],
              "title": "TagInfo",
              "type": "object"
            },
            "type": "array"
          },
          "type": {
            "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
            "enum": [
              "service",
              "nim"
            ],
            "title": "ArtifactType",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp of when the entity was last updated.",
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "createdAt",
          "updatedAt"
        ],
        "title": "ArtifactRepositoryFormatted",
        "type": "object"
      },
      "title": "Data",
      "type": "array"
    },
    "next": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the next page, or `null` if there is no such page.",
      "title": "Next"
    },
    "previous": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the previous page, or `null` if there is no such page.",
      "title": "Previous"
    },
    "totalCount": {
      "description": "The total number of records.",
      "title": "Totalcount",
      "type": "integer"
    }
  },
  "required": [
    "totalCount",
    "count",
    "next",
    "previous",
    "data"
  ],
  "title": "ArtifactRepositoryListResponse",
  "type": "object"
}

ArtifactRepositoryListResponse

Properties

Name Type Required Restrictions Description
count integer true The number of records on this page.
data [ArtifactRepositoryFormatted] true The list of records.
next any true The url to the next page, or null if there is no such page.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
previous any true The url to the previous page, or null if there is no such page.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
totalCount integer true The total number of records.

ArtifactSortQueryParams

{
  "anyOf": [
    {
      "anyOf": [
        {
          "const": "name",
          "description": "Sort by name in ascending order (A-Z)",
          "title": "Name Ascending",
          "type": "string"
        },
        {
          "const": "-name",
          "description": "Sort by name in descending order (Z-A)",
          "title": "Name Descending",
          "type": "string"
        },
        {
          "const": "createdAt",
          "description": "Sort by creation date in ascending order (oldest first)",
          "title": "Creation Date Ascending",
          "type": "string"
        },
        {
          "const": "-createdAt",
          "description": "Sort by creation date in descending order (newest first)",
          "title": "Creation Date Descending",
          "type": "string"
        },
        {
          "const": "updatedAt",
          "description": "Sort by update date in ascending order (oldest first)",
          "title": "Update Date Ascending",
          "type": "string"
        },
        {
          "const": "-updatedAt",
          "description": "Sort by update date in descending order (newest first)",
          "title": "Update Date Descending",
          "type": "string"
        }
      ]
    },
    {
      "const": "status",
      "description": "Sort by status in ascending order (e.g., STOPPED before RUNNING)",
      "title": "Status Ascending",
      "type": "string"
    },
    {
      "const": "-status",
      "description": "Sort by status in descending order (e.g., RUNNING before STOPPED)",
      "title": "Status Descending",
      "type": "string"
    }
  ]
}

Properties

anyOf

Name Type Required Restrictions Description
anonymous CommonSortQueryParams false none

or

Name Type Required Restrictions Description
anonymous string false Sort by status in ascending order (e.g., STOPPED before RUNNING)

or

Name Type Required Restrictions Description
anonymous string false Sort by status in descending order (e.g., RUNNING before STOPPED)

ArtifactStatus

{
  "enum": [
    "draft",
    "locked"
  ],
  "title": "ArtifactStatus",
  "type": "string"
}

ArtifactStatus

Properties

Name Type Required Restrictions Description
ArtifactStatus string false none

Enumerated Values

Property Value
ArtifactStatus [draft, locked]

ArtifactType

{
  "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
  "enum": [
    "service",
    "nim"
  ],
  "title": "ArtifactType",
  "type": "string"
}

ArtifactType

Properties

Name Type Required Restrictions Description
ArtifactType string false Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to service when omitted. - service: generic service artifact. - nim: nvidia nim model artifact.

Enumerated Values

Property Value
ArtifactType [service, nim]

Capabilities

{
  "additionalProperties": false,
  "description": "Linux capabilities to add or drop from the container.",
  "properties": {
    "add": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "description": "Capabilities to add.",
      "title": "Add"
    },
    "drop": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "description": "Capabilities to drop.",
      "title": "Drop"
    }
  },
  "title": "Capabilities",
  "type": "object"
}

Capabilities

Properties

Name Type Required Restrictions Description
add any false Capabilities to add.

anyOf

Name Type Required Restrictions Description
» anonymous [string] false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
drop any false Capabilities to drop.

anyOf

Name Type Required Restrictions Description
» anonymous [string] false none

or

Name Type Required Restrictions Description
» anonymous null false none

CodeRef

{
  "additionalProperties": false,
  "properties": {
    "datarobot": {
      "additionalProperties": false,
      "properties": {
        "catalogId": {
          "title": "Catalogid",
          "type": "string"
        },
        "catalogVersionId": {
          "title": "Catalogversionid",
          "type": "string"
        }
      },
      "required": [
        "catalogId",
        "catalogVersionId"
      ],
      "title": "DataRobotCodeRef",
      "type": "object"
    },
    "provider": {
      "const": "datarobot",
      "default": "datarobot",
      "title": "Provider",
      "type": "string"
    },
    "type": {
      "const": "datarobot",
      "default": "datarobot",
      "title": "Type",
      "type": "string"
    }
  },
  "required": [
    "datarobot"
  ],
  "title": "CodeRef",
  "type": "object"
}

CodeRef

Properties

Name Type Required Restrictions Description
datarobot DataRobotCodeRef true none
provider string false none
type string false none

CommonSortQueryParams

{
  "anyOf": [
    {
      "const": "name",
      "description": "Sort by name in ascending order (A-Z)",
      "title": "Name Ascending",
      "type": "string"
    },
    {
      "const": "-name",
      "description": "Sort by name in descending order (Z-A)",
      "title": "Name Descending",
      "type": "string"
    },
    {
      "const": "createdAt",
      "description": "Sort by creation date in ascending order (oldest first)",
      "title": "Creation Date Ascending",
      "type": "string"
    },
    {
      "const": "-createdAt",
      "description": "Sort by creation date in descending order (newest first)",
      "title": "Creation Date Descending",
      "type": "string"
    },
    {
      "const": "updatedAt",
      "description": "Sort by update date in ascending order (oldest first)",
      "title": "Update Date Ascending",
      "type": "string"
    },
    {
      "const": "-updatedAt",
      "description": "Sort by update date in descending order (newest first)",
      "title": "Update Date Descending",
      "type": "string"
    }
  ]
}

Properties

anyOf

Name Type Required Restrictions Description
anonymous string false Sort by name in ascending order (A-Z)

or

Name Type Required Restrictions Description
anonymous string false Sort by name in descending order (Z-A)

or

Name Type Required Restrictions Description
anonymous string false Sort by creation date in ascending order (oldest first)

or

Name Type Required Restrictions Description
anonymous string false Sort by creation date in descending order (newest first)

or

Name Type Required Restrictions Description
anonymous string false Sort by update date in ascending order (oldest first)

or

Name Type Required Restrictions Description
anonymous string false Sort by update date in descending order (newest first)

Container

{
  "additionalProperties": false,
  "properties": {
    "build": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "Build reference embedded in a container spec when an image build is triggered.",
          "properties": {
            "artifactImageBuildId": {
              "description": "Artifact image build id.",
              "title": "Artifactimagebuildid",
              "type": "string"
            },
            "createdAt": {
              "description": "Build creation timestamp (utc).",
              "format": "date-time",
              "title": "Createdat",
              "type": "string"
            },
            "status": {
              "description": "Image build reported status at submit time.",
              "title": "Status",
              "type": "string"
            }
          },
          "required": [
            "artifactImageBuildId",
            "status",
            "createdAt"
          ],
          "title": "ContainerBuildInfo",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
    },
    "description": {
      "default": "",
      "description": "Description of the container.",
      "title": "Description",
      "type": "string"
    },
    "entrypoint": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
      "title": "Entrypoint"
    },
    "environmentVars": {
      "default": [],
      "description": "Environment variables.",
      "items": {
        "anyOf": [
          {
            "properties": {
              "name": {
                "description": "Name of the environment variable.",
                "title": "Name",
                "type": "string"
              },
              "source": {
                "const": "string",
                "default": "string",
                "title": "Source",
                "type": "string"
              },
              "value": {
                "description": "Value of the environment variable.",
                "title": "Value",
                "type": "string"
              }
            },
            "required": [
              "name",
              "value"
            ],
            "title": "StringEnvironmentVariable",
            "type": "object"
          },
          {
            "properties": {
              "drCredentialId": {
                "description": "Id of the datarobot credential to use.",
                "title": "DR Credential ID",
                "type": "string"
              },
              "key": {
                "description": "Key within the credential.",
                "title": "Key",
                "type": "string"
              },
              "name": {
                "description": "Name of the environment variable.",
                "title": "Name",
                "type": "string"
              },
              "source": {
                "const": "dr-credential",
                "title": "Source",
                "type": "string"
              }
            },
            "required": [
              "source",
              "name",
              "drCredentialId",
              "key"
            ],
            "title": "CredentialEnvironmentVariable",
            "type": "object"
          },
          {
            "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
            "properties": {
              "name": {
                "description": "Name of the environment variable.",
                "title": "Name",
                "type": "string"
              },
              "source": {
                "const": "dr-api-token",
                "title": "Source",
                "type": "string"
              }
            },
            "required": [
              "source",
              "name"
            ],
            "title": "DrApiTokenEnvironmentVariable",
            "type": "object"
          }
        ]
      },
      "title": "Environmentvars",
      "type": "array"
    },
    "imageBuildConfig": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User-provided configuration for server-side image builds from source code.",
          "properties": {
            "codeRef": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "properties": {
                    "datarobot": {
                      "additionalProperties": false,
                      "properties": {
                        "catalogId": {
                          "title": "Catalogid",
                          "type": "string"
                        },
                        "catalogVersionId": {
                          "title": "Catalogversionid",
                          "type": "string"
                        }
                      },
                      "required": [
                        "catalogId",
                        "catalogVersionId"
                      ],
                      "title": "DataRobotCodeRef",
                      "type": "object"
                    },
                    "provider": {
                      "const": "datarobot",
                      "default": "datarobot",
                      "title": "Provider",
                      "type": "string"
                    },
                    "type": {
                      "const": "datarobot",
                      "default": "datarobot",
                      "title": "Type",
                      "type": "string"
                    }
                  },
                  "required": [
                    "datarobot"
                  ],
                  "title": "CodeRef",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
            },
            "dockerfile": {
              "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
              "discriminator": {
                "mapping": {
                  "generated": "#/components/schemas/GeneratedDockerfile",
                  "provided": "#/components/schemas/ProvidedDockerfile"
                },
                "propertyName": "source"
              },
              "oneOf": [
                {
                  "additionalProperties": false,
                  "description": "User supplies a dockerfile in the uploaded source code.",
                  "properties": {
                    "path": {
                      "default": "./Dockerfile",
                      "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                      "title": "Path",
                      "type": "string"
                    },
                    "source": {
                      "const": "provided",
                      "default": "provided",
                      "title": "Source",
                      "type": "string"
                    }
                  },
                  "title": "ProvidedDockerfile",
                  "type": "object"
                },
                {
                  "additionalProperties": false,
                  "description": "System generates a dockerfile from execution environment metadata.",
                  "properties": {
                    "entrypoint": {
                      "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                      "items": {
                        "type": "string"
                      },
                      "minItems": 1,
                      "title": "Entrypoint",
                      "type": "array"
                    },
                    "executionEnvironmentId": {
                      "description": "Execution environment id used to resolve the base Docker image.",
                      "title": "Execution Environment ID",
                      "type": "string"
                    },
                    "executionEnvironmentVersionId": {
                      "description": "Execution environment version id that pins the exact base image tag.",
                      "title": "Execution Environment Version ID",
                      "type": "string"
                    },
                    "source": {
                      "const": "generated",
                      "default": "generated",
                      "title": "Source",
                      "type": "string"
                    }
                  },
                  "required": [
                    "executionEnvironmentId",
                    "executionEnvironmentVersionId",
                    "entrypoint"
                  ],
                  "title": "GeneratedDockerfile",
                  "type": "object"
                }
              ],
              "title": "Dockerfile"
            }
          },
          "title": "ImageBuildConfig",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Configuration for server-side image builds from source code."
    },
    "imageUri": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
      "title": "Imageuri"
    },
    "livenessProbe": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "failureThreshold": {
              "default": 3,
              "description": "Minimum consecutive failures for the probe to be considered failed.",
              "title": "Failurethreshold",
              "type": "integer"
            },
            "host": {
              "anyOf": [
                {
                  "minLength": 0,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Host name to connect to, defaults to the pod ip.",
              "title": "Host"
            },
            "httpHeaders": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "HTTP headers for probe.",
              "title": "Httpheaders",
              "type": "object"
            },
            "initialDelaySeconds": {
              "default": 30,
              "description": "Number of seconds to wait before the first probe is executed.",
              "title": "Initialdelayseconds",
              "type": "integer"
            },
            "path": {
              "description": "Url path to query for health check.",
              "title": "Path",
              "type": "string"
            },
            "periodSeconds": {
              "default": 30,
              "description": "How often (in seconds) to perform the probe.",
              "title": "Periodseconds",
              "type": "integer"
            },
            "port": {
              "default": 8080,
              "description": "Port number to access on the container.",
              "maximum": 65535,
              "minimum": 1,
              "title": "Port",
              "type": "integer"
            },
            "scheme": {
              "default": "HTTP",
              "description": "Scheme to use for connecting to the host.",
              "enum": [
                "HTTP",
                "HTTPS"
              ],
              "title": "Scheme",
              "type": "string"
            },
            "timeoutSeconds": {
              "default": 30,
              "description": "Number of seconds after which the probe times out.",
              "title": "Timeoutseconds",
              "type": "integer"
            }
          },
          "required": [
            "path"
          ],
          "title": "ProbeConfig",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Container liveness check configuration."
    },
    "name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
      "title": "Name"
    },
    "port": {
      "anyOf": [
        {
          "maximum": 65535,
          "minimum": 1024,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
      "title": "Port"
    },
    "primary": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": false,
      "description": "Whether this is the primary container.",
      "title": "Primary"
    },
    "readinessProbe": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "failureThreshold": {
              "default": 3,
              "description": "Minimum consecutive failures for the probe to be considered failed.",
              "title": "Failurethreshold",
              "type": "integer"
            },
            "host": {
              "anyOf": [
                {
                  "minLength": 0,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Host name to connect to, defaults to the pod ip.",
              "title": "Host"
            },
            "httpHeaders": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "HTTP headers for probe.",
              "title": "Httpheaders",
              "type": "object"
            },
            "initialDelaySeconds": {
              "default": 30,
              "description": "Number of seconds to wait before the first probe is executed.",
              "title": "Initialdelayseconds",
              "type": "integer"
            },
            "path": {
              "description": "Url path to query for health check.",
              "title": "Path",
              "type": "string"
            },
            "periodSeconds": {
              "default": 30,
              "description": "How often (in seconds) to perform the probe.",
              "title": "Periodseconds",
              "type": "integer"
            },
            "port": {
              "default": 8080,
              "description": "Port number to access on the container.",
              "maximum": 65535,
              "minimum": 1,
              "title": "Port",
              "type": "integer"
            },
            "scheme": {
              "default": "HTTP",
              "description": "Scheme to use for connecting to the host.",
              "enum": [
                "HTTP",
                "HTTPS"
              ],
              "title": "Scheme",
              "type": "string"
            },
            "timeoutSeconds": {
              "default": 30,
              "description": "Number of seconds after which the probe times out.",
              "title": "Timeoutseconds",
              "type": "integer"
            }
          },
          "required": [
            "path"
          ],
          "title": "ProbeConfig",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Container readiness check configuration."
    },
    "securityContext": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
          "properties": {
            "allowPrivilegeEscalation": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
              "title": "Allowprivilegeescalation"
            },
            "capabilities": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Linux capabilities to add or drop from the container.",
                  "properties": {
                    "add": {
                      "anyOf": [
                        {
                          "items": {
                            "type": "string"
                          },
                          "type": "array"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Capabilities to add.",
                      "title": "Add"
                    },
                    "drop": {
                      "anyOf": [
                        {
                          "items": {
                            "type": "string"
                          },
                          "type": "array"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Capabilities to drop.",
                      "title": "Drop"
                    }
                  },
                  "title": "Capabilities",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Linux capabilities to add or drop."
            },
            "readOnlyRootFilesystem": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Whether the root filesystem is read-only.",
              "title": "Readonlyrootfilesystem"
            },
            "seccompProfile": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Seccomp profile configuration.",
                  "properties": {
                    "localhostProfile": {
                      "anyOf": [
                        {
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                      "title": "Localhostprofile"
                    },
                    "type": {
                      "description": "Allowed seccomp profile types.",
                      "enum": [
                        "RuntimeDefault",
                        "Unconfined",
                        "Localhost"
                      ],
                      "title": "SeccompProfileType",
                      "type": "string"
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "title": "SeccompProfile",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Seccomp profile for the container."
            }
          },
          "title": "SecurityContext",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Container security context."
    },
    "startupProbe": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "failureThreshold": {
              "default": 3,
              "description": "Minimum consecutive failures for the probe to be considered failed.",
              "title": "Failurethreshold",
              "type": "integer"
            },
            "host": {
              "anyOf": [
                {
                  "minLength": 0,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Host name to connect to, defaults to the pod ip.",
              "title": "Host"
            },
            "httpHeaders": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "HTTP headers for probe.",
              "title": "Httpheaders",
              "type": "object"
            },
            "initialDelaySeconds": {
              "default": 30,
              "description": "Number of seconds to wait before the first probe is executed.",
              "title": "Initialdelayseconds",
              "type": "integer"
            },
            "path": {
              "description": "Url path to query for health check.",
              "title": "Path",
              "type": "string"
            },
            "periodSeconds": {
              "default": 30,
              "description": "How often (in seconds) to perform the probe.",
              "title": "Periodseconds",
              "type": "integer"
            },
            "port": {
              "default": 8080,
              "description": "Port number to access on the container.",
              "maximum": 65535,
              "minimum": 1,
              "title": "Port",
              "type": "integer"
            },
            "scheme": {
              "default": "HTTP",
              "description": "Scheme to use for connecting to the host.",
              "enum": [
                "HTTP",
                "HTTPS"
              ],
              "title": "Scheme",
              "type": "string"
            },
            "timeoutSeconds": {
              "default": 30,
              "description": "Number of seconds after which the probe times out.",
              "title": "Timeoutseconds",
              "type": "integer"
            }
          },
          "required": [
            "path"
          ],
          "title": "ProbeConfig",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Container startup check configuration."
    }
  },
  "title": "Container",
  "type": "object"
}

Container

Properties

Name Type Required Restrictions Description
build any false Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it.

anyOf

Name Type Required Restrictions Description
» anonymous ContainerBuildInfo false Build reference embedded in a container spec when an image build is triggered.

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
description string false Description of the container.
entrypoint any false Runtime entrypoint override for the container command. independent of build entrypoint.

anyOf

Name Type Required Restrictions Description
» anonymous [string] false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
environmentVars [anyOf] false Environment variables.

anyOf

Name Type Required Restrictions Description
» anonymous StringEnvironmentVariable false none

or

Name Type Required Restrictions Description
» anonymous CredentialEnvironmentVariable false none

or

Name Type Required Restrictions Description
» anonymous DrApiTokenEnvironmentVariable false A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload workload <workloadid> API key scoped to the invoking user); no value or id is supplied by the user.

continued

Name Type Required Restrictions Description
imageBuildConfig any false Configuration for server-side image builds from source code.

anyOf

Name Type Required Restrictions Description
» anonymous ImageBuildConfig false User-provided configuration for server-side image builds from source code.

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
imageUri any false Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
livenessProbe any false Container liveness check configuration.

anyOf

Name Type Required Restrictions Description
» anonymous ProbeConfig false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
name any false Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
port any false Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.

anyOf

Name Type Required Restrictions Description
» anonymous integer false maximum: 65535
minimum: 1024
none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
primary any false Whether this is the primary container.

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
readinessProbe any false Container readiness check configuration.

anyOf

Name Type Required Restrictions Description
» anonymous ProbeConfig false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
securityContext any false Container security context.

anyOf

Name Type Required Restrictions Description
» anonymous SecurityContext false Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
startupProbe any false Container startup check configuration.

anyOf

Name Type Required Restrictions Description
» anonymous ProbeConfig false none

or

Name Type Required Restrictions Description
» anonymous null false none

ContainerBuildInfo

{
  "additionalProperties": false,
  "description": "Build reference embedded in a container spec when an image build is triggered.",
  "properties": {
    "artifactImageBuildId": {
      "description": "Artifact image build id.",
      "title": "Artifactimagebuildid",
      "type": "string"
    },
    "createdAt": {
      "description": "Build creation timestamp (utc).",
      "format": "date-time",
      "title": "Createdat",
      "type": "string"
    },
    "status": {
      "description": "Image build reported status at submit time.",
      "title": "Status",
      "type": "string"
    }
  },
  "required": [
    "artifactImageBuildId",
    "status",
    "createdAt"
  ],
  "title": "ContainerBuildInfo",
  "type": "object"
}

ContainerBuildInfo

Properties

Name Type Required Restrictions Description
artifactImageBuildId string true Artifact image build id.
createdAt string(date-time) true Build creation timestamp (utc).
status string true Image build reported status at submit time.

ContainerGroup

{
  "additionalProperties": false,
  "properties": {
    "containers": {
      "default": [],
      "description": "List of containers making this container group.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "build": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "Build reference embedded in a container spec when an image build is triggered.",
                "properties": {
                  "artifactImageBuildId": {
                    "description": "Artifact image build id.",
                    "title": "Artifactimagebuildid",
                    "type": "string"
                  },
                  "createdAt": {
                    "description": "Build creation timestamp (utc).",
                    "format": "date-time",
                    "title": "Createdat",
                    "type": "string"
                  },
                  "status": {
                    "description": "Image build reported status at submit time.",
                    "title": "Status",
                    "type": "string"
                  }
                },
                "required": [
                  "artifactImageBuildId",
                  "status",
                  "createdAt"
                ],
                "title": "ContainerBuildInfo",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
          },
          "description": {
            "default": "",
            "description": "Description of the container.",
            "title": "Description",
            "type": "string"
          },
          "entrypoint": {
            "anyOf": [
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
            "title": "Entrypoint"
          },
          "environmentVars": {
            "default": [],
            "description": "Environment variables.",
            "items": {
              "anyOf": [
                {
                  "properties": {
                    "name": {
                      "description": "Name of the environment variable.",
                      "title": "Name",
                      "type": "string"
                    },
                    "source": {
                      "const": "string",
                      "default": "string",
                      "title": "Source",
                      "type": "string"
                    },
                    "value": {
                      "description": "Value of the environment variable.",
                      "title": "Value",
                      "type": "string"
                    }
                  },
                  "required": [
                    "name",
                    "value"
                  ],
                  "title": "StringEnvironmentVariable",
                  "type": "object"
                },
                {
                  "properties": {
                    "drCredentialId": {
                      "description": "Id of the datarobot credential to use.",
                      "title": "DR Credential ID",
                      "type": "string"
                    },
                    "key": {
                      "description": "Key within the credential.",
                      "title": "Key",
                      "type": "string"
                    },
                    "name": {
                      "description": "Name of the environment variable.",
                      "title": "Name",
                      "type": "string"
                    },
                    "source": {
                      "const": "dr-credential",
                      "title": "Source",
                      "type": "string"
                    }
                  },
                  "required": [
                    "source",
                    "name",
                    "drCredentialId",
                    "key"
                  ],
                  "title": "CredentialEnvironmentVariable",
                  "type": "object"
                },
                {
                  "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                  "properties": {
                    "name": {
                      "description": "Name of the environment variable.",
                      "title": "Name",
                      "type": "string"
                    },
                    "source": {
                      "const": "dr-api-token",
                      "title": "Source",
                      "type": "string"
                    }
                  },
                  "required": [
                    "source",
                    "name"
                  ],
                  "title": "DrApiTokenEnvironmentVariable",
                  "type": "object"
                }
              ]
            },
            "title": "Environmentvars",
            "type": "array"
          },
          "imageBuildConfig": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "User-provided configuration for server-side image builds from source code.",
                "properties": {
                  "codeRef": {
                    "anyOf": [
                      {
                        "additionalProperties": false,
                        "properties": {
                          "datarobot": {
                            "additionalProperties": false,
                            "properties": {
                              "catalogId": {
                                "title": "Catalogid",
                                "type": "string"
                              },
                              "catalogVersionId": {
                                "title": "Catalogversionid",
                                "type": "string"
                              }
                            },
                            "required": [
                              "catalogId",
                              "catalogVersionId"
                            ],
                            "title": "DataRobotCodeRef",
                            "type": "object"
                          },
                          "provider": {
                            "const": "datarobot",
                            "default": "datarobot",
                            "title": "Provider",
                            "type": "string"
                          },
                          "type": {
                            "const": "datarobot",
                            "default": "datarobot",
                            "title": "Type",
                            "type": "string"
                          }
                        },
                        "required": [
                          "datarobot"
                        ],
                        "title": "CodeRef",
                        "type": "object"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                  },
                  "dockerfile": {
                    "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                    "discriminator": {
                      "mapping": {
                        "generated": "#/components/schemas/GeneratedDockerfile",
                        "provided": "#/components/schemas/ProvidedDockerfile"
                      },
                      "propertyName": "source"
                    },
                    "oneOf": [
                      {
                        "additionalProperties": false,
                        "description": "User supplies a dockerfile in the uploaded source code.",
                        "properties": {
                          "path": {
                            "default": "./Dockerfile",
                            "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                            "title": "Path",
                            "type": "string"
                          },
                          "source": {
                            "const": "provided",
                            "default": "provided",
                            "title": "Source",
                            "type": "string"
                          }
                        },
                        "title": "ProvidedDockerfile",
                        "type": "object"
                      },
                      {
                        "additionalProperties": false,
                        "description": "System generates a dockerfile from execution environment metadata.",
                        "properties": {
                          "entrypoint": {
                            "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                            "items": {
                              "type": "string"
                            },
                            "minItems": 1,
                            "title": "Entrypoint",
                            "type": "array"
                          },
                          "executionEnvironmentId": {
                            "description": "Execution environment id used to resolve the base Docker image.",
                            "title": "Execution Environment ID",
                            "type": "string"
                          },
                          "executionEnvironmentVersionId": {
                            "description": "Execution environment version id that pins the exact base image tag.",
                            "title": "Execution Environment Version ID",
                            "type": "string"
                          },
                          "source": {
                            "const": "generated",
                            "default": "generated",
                            "title": "Source",
                            "type": "string"
                          }
                        },
                        "required": [
                          "executionEnvironmentId",
                          "executionEnvironmentVersionId",
                          "entrypoint"
                        ],
                        "title": "GeneratedDockerfile",
                        "type": "object"
                      }
                    ],
                    "title": "Dockerfile"
                  }
                },
                "title": "ImageBuildConfig",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Configuration for server-side image builds from source code."
          },
          "imageUri": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
            "title": "Imageuri"
          },
          "livenessProbe": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "failureThreshold": {
                    "default": 3,
                    "description": "Minimum consecutive failures for the probe to be considered failed.",
                    "title": "Failurethreshold",
                    "type": "integer"
                  },
                  "host": {
                    "anyOf": [
                      {
                        "minLength": 0,
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Host name to connect to, defaults to the pod ip.",
                    "title": "Host"
                  },
                  "httpHeaders": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "HTTP headers for probe.",
                    "title": "Httpheaders",
                    "type": "object"
                  },
                  "initialDelaySeconds": {
                    "default": 30,
                    "description": "Number of seconds to wait before the first probe is executed.",
                    "title": "Initialdelayseconds",
                    "type": "integer"
                  },
                  "path": {
                    "description": "Url path to query for health check.",
                    "title": "Path",
                    "type": "string"
                  },
                  "periodSeconds": {
                    "default": 30,
                    "description": "How often (in seconds) to perform the probe.",
                    "title": "Periodseconds",
                    "type": "integer"
                  },
                  "port": {
                    "default": 8080,
                    "description": "Port number to access on the container.",
                    "maximum": 65535,
                    "minimum": 1,
                    "title": "Port",
                    "type": "integer"
                  },
                  "scheme": {
                    "default": "HTTP",
                    "description": "Scheme to use for connecting to the host.",
                    "enum": [
                      "HTTP",
                      "HTTPS"
                    ],
                    "title": "Scheme",
                    "type": "string"
                  },
                  "timeoutSeconds": {
                    "default": 30,
                    "description": "Number of seconds after which the probe times out.",
                    "title": "Timeoutseconds",
                    "type": "integer"
                  }
                },
                "required": [
                  "path"
                ],
                "title": "ProbeConfig",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Container liveness check configuration."
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
            "title": "Name"
          },
          "port": {
            "anyOf": [
              {
                "maximum": 65535,
                "minimum": 1024,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
            "title": "Port"
          },
          "primary": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "default": false,
            "description": "Whether this is the primary container.",
            "title": "Primary"
          },
          "readinessProbe": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "failureThreshold": {
                    "default": 3,
                    "description": "Minimum consecutive failures for the probe to be considered failed.",
                    "title": "Failurethreshold",
                    "type": "integer"
                  },
                  "host": {
                    "anyOf": [
                      {
                        "minLength": 0,
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Host name to connect to, defaults to the pod ip.",
                    "title": "Host"
                  },
                  "httpHeaders": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "HTTP headers for probe.",
                    "title": "Httpheaders",
                    "type": "object"
                  },
                  "initialDelaySeconds": {
                    "default": 30,
                    "description": "Number of seconds to wait before the first probe is executed.",
                    "title": "Initialdelayseconds",
                    "type": "integer"
                  },
                  "path": {
                    "description": "Url path to query for health check.",
                    "title": "Path",
                    "type": "string"
                  },
                  "periodSeconds": {
                    "default": 30,
                    "description": "How often (in seconds) to perform the probe.",
                    "title": "Periodseconds",
                    "type": "integer"
                  },
                  "port": {
                    "default": 8080,
                    "description": "Port number to access on the container.",
                    "maximum": 65535,
                    "minimum": 1,
                    "title": "Port",
                    "type": "integer"
                  },
                  "scheme": {
                    "default": "HTTP",
                    "description": "Scheme to use for connecting to the host.",
                    "enum": [
                      "HTTP",
                      "HTTPS"
                    ],
                    "title": "Scheme",
                    "type": "string"
                  },
                  "timeoutSeconds": {
                    "default": 30,
                    "description": "Number of seconds after which the probe times out.",
                    "title": "Timeoutseconds",
                    "type": "integer"
                  }
                },
                "required": [
                  "path"
                ],
                "title": "ProbeConfig",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Container readiness check configuration."
          },
          "securityContext": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                "properties": {
                  "allowPrivilegeEscalation": {
                    "anyOf": [
                      {
                        "type": "boolean"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                    "title": "Allowprivilegeescalation"
                  },
                  "capabilities": {
                    "anyOf": [
                      {
                        "additionalProperties": false,
                        "description": "Linux capabilities to add or drop from the container.",
                        "properties": {
                          "add": {
                            "anyOf": [
                              {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              {
                                "type": "null"
                              }
                            ],
                            "description": "Capabilities to add.",
                            "title": "Add"
                          },
                          "drop": {
                            "anyOf": [
                              {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              {
                                "type": "null"
                              }
                            ],
                            "description": "Capabilities to drop.",
                            "title": "Drop"
                          }
                        },
                        "title": "Capabilities",
                        "type": "object"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Linux capabilities to add or drop."
                  },
                  "readOnlyRootFilesystem": {
                    "anyOf": [
                      {
                        "type": "boolean"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Whether the root filesystem is read-only.",
                    "title": "Readonlyrootfilesystem"
                  },
                  "seccompProfile": {
                    "anyOf": [
                      {
                        "additionalProperties": false,
                        "description": "Seccomp profile configuration.",
                        "properties": {
                          "localhostProfile": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ],
                            "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                            "title": "Localhostprofile"
                          },
                          "type": {
                            "description": "Allowed seccomp profile types.",
                            "enum": [
                              "RuntimeDefault",
                              "Unconfined",
                              "Localhost"
                            ],
                            "title": "SeccompProfileType",
                            "type": "string"
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "title": "SeccompProfile",
                        "type": "object"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Seccomp profile for the container."
                  }
                },
                "title": "SecurityContext",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Container security context."
          },
          "startupProbe": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "failureThreshold": {
                    "default": 3,
                    "description": "Minimum consecutive failures for the probe to be considered failed.",
                    "title": "Failurethreshold",
                    "type": "integer"
                  },
                  "host": {
                    "anyOf": [
                      {
                        "minLength": 0,
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Host name to connect to, defaults to the pod ip.",
                    "title": "Host"
                  },
                  "httpHeaders": {
                    "additionalProperties": {
                      "type": "string"
                    },
                    "description": "HTTP headers for probe.",
                    "title": "Httpheaders",
                    "type": "object"
                  },
                  "initialDelaySeconds": {
                    "default": 30,
                    "description": "Number of seconds to wait before the first probe is executed.",
                    "title": "Initialdelayseconds",
                    "type": "integer"
                  },
                  "path": {
                    "description": "Url path to query for health check.",
                    "title": "Path",
                    "type": "string"
                  },
                  "periodSeconds": {
                    "default": 30,
                    "description": "How often (in seconds) to perform the probe.",
                    "title": "Periodseconds",
                    "type": "integer"
                  },
                  "port": {
                    "default": 8080,
                    "description": "Port number to access on the container.",
                    "maximum": 65535,
                    "minimum": 1,
                    "title": "Port",
                    "type": "integer"
                  },
                  "scheme": {
                    "default": "HTTP",
                    "description": "Scheme to use for connecting to the host.",
                    "enum": [
                      "HTTP",
                      "HTTPS"
                    ],
                    "title": "Scheme",
                    "type": "string"
                  },
                  "timeoutSeconds": {
                    "default": 30,
                    "description": "Number of seconds after which the probe times out.",
                    "title": "Timeoutseconds",
                    "type": "integer"
                  }
                },
                "required": [
                  "path"
                ],
                "title": "ProbeConfig",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Container startup check configuration."
          }
        },
        "title": "Container",
        "type": "object"
      },
      "title": "Containers",
      "type": "array"
    },
    "name": {
      "default": "default",
      "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
      "title": "Name",
      "type": "string"
    }
  },
  "title": "ContainerGroup",
  "type": "object"
}

ContainerGroup

Properties

Name Type Required Restrictions Description
containers [Container] false List of containers making this container group.
name string false Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.

CredentialEnvironmentVariable

{
  "properties": {
    "drCredentialId": {
      "description": "Id of the datarobot credential to use.",
      "title": "DR Credential ID",
      "type": "string"
    },
    "key": {
      "description": "Key within the credential.",
      "title": "Key",
      "type": "string"
    },
    "name": {
      "description": "Name of the environment variable.",
      "title": "Name",
      "type": "string"
    },
    "source": {
      "const": "dr-credential",
      "title": "Source",
      "type": "string"
    }
  },
  "required": [
    "source",
    "name",
    "drCredentialId",
    "key"
  ],
  "title": "CredentialEnvironmentVariable",
  "type": "object"
}

CredentialEnvironmentVariable

Properties

Name Type Required Restrictions Description
drCredentialId string true Id of the datarobot credential to use.
key string true Key within the credential.
name string true Name of the environment variable.
source string true none

DataRobotCodeRef

{
  "additionalProperties": false,
  "properties": {
    "catalogId": {
      "title": "Catalogid",
      "type": "string"
    },
    "catalogVersionId": {
      "title": "Catalogversionid",
      "type": "string"
    }
  },
  "required": [
    "catalogId",
    "catalogVersionId"
  ],
  "title": "DataRobotCodeRef",
  "type": "object"
}

DataRobotCodeRef

Properties

Name Type Required Restrictions Description
catalogId string true none
catalogVersionId string true none

DrApiTokenEnvironmentVariable

{
  "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
  "properties": {
    "name": {
      "description": "Name of the environment variable.",
      "title": "Name",
      "type": "string"
    },
    "source": {
      "const": "dr-api-token",
      "title": "Source",
      "type": "string"
    }
  },
  "required": [
    "source",
    "name"
  ],
  "title": "DrApiTokenEnvironmentVariable",
  "type": "object"
}

DrApiTokenEnvironmentVariable

Properties

Name Type Required Restrictions Description
name string true Name of the environment variable.
source string true none

GeneratedDockerfile

{
  "additionalProperties": false,
  "description": "System generates a dockerfile from execution environment metadata.",
  "properties": {
    "entrypoint": {
      "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "title": "Entrypoint",
      "type": "array"
    },
    "executionEnvironmentId": {
      "description": "Execution environment id used to resolve the base Docker image.",
      "title": "Execution Environment ID",
      "type": "string"
    },
    "executionEnvironmentVersionId": {
      "description": "Execution environment version id that pins the exact base image tag.",
      "title": "Execution Environment Version ID",
      "type": "string"
    },
    "source": {
      "const": "generated",
      "default": "generated",
      "title": "Source",
      "type": "string"
    }
  },
  "required": [
    "executionEnvironmentId",
    "executionEnvironmentVersionId",
    "entrypoint"
  ],
  "title": "GeneratedDockerfile",
  "type": "object"
}

GeneratedDockerfile

Properties

Name Type Required Restrictions Description
entrypoint [string] true minItems: 1
Entrypoint baked into the generated dockerfile cmd (e.g. ["python", "app.py"]).
executionEnvironmentId string true Execution environment id used to resolve the base Docker image.
executionEnvironmentVersionId string true Execution environment version id that pins the exact base image tag.
source string false none

GrantAccessControlWithId

{
  "additionalProperties": false,
  "description": "Grant access control request using id for recipient identification. can be used for users, groups, or organizations.",
  "properties": {
    "id": {
      "description": "The id of the recipient.",
      "title": "Id",
      "type": "string"
    },
    "role": {
      "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
      "enum": [
        "NO_ROLE",
        "OWNER",
        "READ_WRITE",
        "EDITOR",
        "USER",
        "DATA_SCIENTIST",
        "ADMIN",
        "READ_ONLY",
        "CONSUMER",
        "OBSERVER"
      ],
      "title": "SharingRole",
      "type": "string"
    },
    "shareRecipientType": {
      "description": "Enum of possible subject types.",
      "enum": [
        "user",
        "group",
        "organization",
        "role"
      ],
      "title": "SubjectType",
      "type": "string"
    }
  },
  "required": [
    "shareRecipientType",
    "role",
    "id"
  ],
  "title": "GrantAccessControlWithId",
  "type": "object"
}

GrantAccessControlWithId

Properties

Name Type Required Restrictions Description
id string true The id of the recipient.
role SharingRole true The role of the recipient on this entity.
shareRecipientType SubjectType true The type of the recipient.

GrantAccessControlWithUsername

{
  "additionalProperties": false,
  "description": "Grant access control request using username for user identification.",
  "properties": {
    "role": {
      "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
      "enum": [
        "NO_ROLE",
        "OWNER",
        "READ_WRITE",
        "EDITOR",
        "USER",
        "DATA_SCIENTIST",
        "ADMIN",
        "READ_ONLY",
        "CONSUMER",
        "OBSERVER"
      ],
      "title": "SharingRole",
      "type": "string"
    },
    "shareRecipientType": {
      "description": "Enum of possible subject types.",
      "enum": [
        "user",
        "group",
        "organization",
        "role"
      ],
      "title": "SubjectType",
      "type": "string"
    },
    "username": {
      "description": "Username of the user to update the access role for.",
      "title": "Username",
      "type": "string"
    }
  },
  "required": [
    "shareRecipientType",
    "role",
    "username"
  ],
  "title": "GrantAccessControlWithUsername",
  "type": "object"
}

GrantAccessControlWithUsername

Properties

Name Type Required Restrictions Description
role SharingRole true The role of the recipient on this entity.
shareRecipientType SubjectType true The type of the recipient.
username string true Username of the user to update the access role for.

HTTPValidationError

{
  "properties": {
    "detail": {
      "items": {
        "properties": {
          "ctx": {
            "title": "Context",
            "type": "object"
          },
          "input": {
            "title": "Input"
          },
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "title": "Location",
            "type": "array"
          },
          "msg": {
            "title": "Message",
            "type": "string"
          },
          "type": {
            "title": "Error Type",
            "type": "string"
          }
        },
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError",
        "type": "object"
      },
      "title": "Detail",
      "type": "array"
    }
  },
  "title": "HTTPValidationError",
  "type": "object"
}

HTTPValidationError

Properties

Name Type Required Restrictions Description
detail [ValidationError] false none

ImageBuildConfig

{
  "additionalProperties": false,
  "description": "User-provided configuration for server-side image builds from source code.",
  "properties": {
    "codeRef": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "datarobot": {
              "additionalProperties": false,
              "properties": {
                "catalogId": {
                  "title": "Catalogid",
                  "type": "string"
                },
                "catalogVersionId": {
                  "title": "Catalogversionid",
                  "type": "string"
                }
              },
              "required": [
                "catalogId",
                "catalogVersionId"
              ],
              "title": "DataRobotCodeRef",
              "type": "object"
            },
            "provider": {
              "const": "datarobot",
              "default": "datarobot",
              "title": "Provider",
              "type": "string"
            },
            "type": {
              "const": "datarobot",
              "default": "datarobot",
              "title": "Type",
              "type": "string"
            }
          },
          "required": [
            "datarobot"
          ],
          "title": "CodeRef",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
    },
    "dockerfile": {
      "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
      "discriminator": {
        "mapping": {
          "generated": "#/components/schemas/GeneratedDockerfile",
          "provided": "#/components/schemas/ProvidedDockerfile"
        },
        "propertyName": "source"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "description": "User supplies a dockerfile in the uploaded source code.",
          "properties": {
            "path": {
              "default": "./Dockerfile",
              "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
              "title": "Path",
              "type": "string"
            },
            "source": {
              "const": "provided",
              "default": "provided",
              "title": "Source",
              "type": "string"
            }
          },
          "title": "ProvidedDockerfile",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "description": "System generates a dockerfile from execution environment metadata.",
          "properties": {
            "entrypoint": {
              "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
              "items": {
                "type": "string"
              },
              "minItems": 1,
              "title": "Entrypoint",
              "type": "array"
            },
            "executionEnvironmentId": {
              "description": "Execution environment id used to resolve the base Docker image.",
              "title": "Execution Environment ID",
              "type": "string"
            },
            "executionEnvironmentVersionId": {
              "description": "Execution environment version id that pins the exact base image tag.",
              "title": "Execution Environment Version ID",
              "type": "string"
            },
            "source": {
              "const": "generated",
              "default": "generated",
              "title": "Source",
              "type": "string"
            }
          },
          "required": [
            "executionEnvironmentId",
            "executionEnvironmentVersionId",
            "entrypoint"
          ],
          "title": "GeneratedDockerfile",
          "type": "object"
        }
      ],
      "title": "Dockerfile"
    }
  },
  "title": "ImageBuildConfig",
  "type": "object"
}

ImageBuildConfig

Properties

Name Type Required Restrictions Description
codeRef any false Reference to source code (e.g. files API catalog). optional at create time; required before build or lock.

anyOf

Name Type Required Restrictions Description
» anonymous CodeRef false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
dockerfile any false How the dockerfile is obtained. defaults to using ./dockerfile from the source code.

oneOf

Name Type Required Restrictions Description
» anonymous ProvidedDockerfile false User supplies a dockerfile in the uploaded source code.

xor

Name Type Required Restrictions Description
» anonymous GeneratedDockerfile false System generates a dockerfile from execution environment metadata.

ImageBuildExternalStatus

{
  "description": "Client-facing artifact image build status.",
  "enum": [
    "PENDING",
    "IN_PROGRESS",
    "BUILT",
    "COMPLETED",
    "CANCELLED",
    "FAILED",
    "UNKNOWN"
  ],
  "title": "ImageBuildExternalStatus",
  "type": "string"
}

ImageBuildExternalStatus

Properties

Name Type Required Restrictions Description
ImageBuildExternalStatus string false Client-facing artifact image build status.

Enumerated Values

Property Value
ImageBuildExternalStatus [PENDING, IN_PROGRESS, BUILT, COMPLETED, CANCELLED, FAILED, UNKNOWN]

ImageBuildFormatted

{
  "additionalProperties": false,
  "description": "Build row formatted for get …/builds (same base fields as other `*formatted` API models).",
  "properties": {
    "artifactId": {
      "description": "Parent artifact id.",
      "title": "Artifact Id",
      "type": "string"
    },
    "createdAt": {
      "description": "Timestamp of when the entity was created.",
      "format": "date-time",
      "title": "Created At",
      "type": "string"
    },
    "creator": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "User information embedded in API responses.",
          "properties": {
            "email": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User email address.",
              "title": "Email"
            },
            "fullName": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's full name.",
              "title": "Full Name"
            },
            "id": {
              "description": "User id associated with this resource.",
              "title": "User ID",
              "type": "string"
            },
            "userhash": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "User's gravatar hash.",
              "title": "Userhash"
            },
            "username": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Username.",
              "title": "Username"
            }
          },
          "required": [
            "id"
          ],
          "title": "UserData",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Owner user details including id, username and email.",
      "title": "Creator"
    },
    "id": {
      "description": "Unique identifier of the entity.",
      "title": "ID",
      "type": "string"
    },
    "name": {
      "description": "Name of the entity.",
      "title": "Name",
      "type": "string"
    },
    "status": {
      "description": "Client-facing artifact image build status.",
      "enum": [
        "PENDING",
        "IN_PROGRESS",
        "BUILT",
        "COMPLETED",
        "CANCELLED",
        "FAILED",
        "UNKNOWN"
      ],
      "title": "ImageBuildExternalStatus",
      "type": "string"
    },
    "updatedAt": {
      "description": "Timestamp of when the entity was last updated.",
      "format": "date-time",
      "title": "Updated At",
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "createdAt",
    "updatedAt",
    "artifactId"
  ],
  "title": "ImageBuildFormatted",
  "type": "object"
}

ImageBuildFormatted

Properties

Name Type Required Restrictions Description
artifactId string true Parent artifact id.
createdAt string(date-time) true Timestamp of when the entity was created.
creator any false Owner user details including id, username and email.

anyOf

Name Type Required Restrictions Description
» anonymous UserData false User information embedded in API responses.

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
id string true Unique identifier of the entity.
name string true Name of the entity.
status ImageBuildExternalStatus false Reported build status.
updatedAt string(date-time) true Timestamp of when the entity was last updated.

ImageBuildFormattedList

{
  "additionalProperties": false,
  "description": "Paginated list of formatted artifact image builds for get …/builds.",
  "properties": {
    "count": {
      "description": "The number of records on this page.",
      "title": "Count",
      "type": "integer"
    },
    "data": {
      "description": "The list of records.",
      "items": {
        "additionalProperties": false,
        "description": "Build row formatted for get …/builds (same base fields as other `*formatted` API models).",
        "properties": {
          "artifactId": {
            "description": "Parent artifact id.",
            "title": "Artifact Id",
            "type": "string"
          },
          "createdAt": {
            "description": "Timestamp of when the entity was created.",
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "creator": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "User information embedded in API responses.",
                "properties": {
                  "email": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User email address.",
                    "title": "Email"
                  },
                  "fullName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's full name.",
                    "title": "Full Name"
                  },
                  "id": {
                    "description": "User id associated with this resource.",
                    "title": "User ID",
                    "type": "string"
                  },
                  "userhash": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "User's gravatar hash.",
                    "title": "Userhash"
                  },
                  "username": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "description": "Username.",
                    "title": "Username"
                  }
                },
                "required": [
                  "id"
                ],
                "title": "UserData",
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "description": "Owner user details including id, username and email.",
            "title": "Creator"
          },
          "id": {
            "description": "Unique identifier of the entity.",
            "title": "ID",
            "type": "string"
          },
          "name": {
            "description": "Name of the entity.",
            "title": "Name",
            "type": "string"
          },
          "status": {
            "description": "Client-facing artifact image build status.",
            "enum": [
              "PENDING",
              "IN_PROGRESS",
              "BUILT",
              "COMPLETED",
              "CANCELLED",
              "FAILED",
              "UNKNOWN"
            ],
            "title": "ImageBuildExternalStatus",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp of when the entity was last updated.",
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "createdAt",
          "updatedAt",
          "artifactId"
        ],
        "title": "ImageBuildFormatted",
        "type": "object"
      },
      "title": "Data",
      "type": "array"
    },
    "next": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the next page, or `null` if there is no such page.",
      "title": "Next"
    },
    "previous": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the previous page, or `null` if there is no such page.",
      "title": "Previous"
    },
    "totalCount": {
      "description": "The total number of records.",
      "title": "Totalcount",
      "type": "integer"
    }
  },
  "required": [
    "totalCount",
    "count",
    "next",
    "previous",
    "data"
  ],
  "title": "ImageBuildFormattedList",
  "type": "object"
}

ImageBuildFormattedList

Properties

Name Type Required Restrictions Description
count integer true The number of records on this page.
data [ImageBuildFormatted] true The list of records.
next any true The url to the next page, or null if there is no such page.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
previous any true The url to the previous page, or null if there is no such page.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
totalCount integer true The total number of records.

ImageBuildTriggerResponse

{
  "additionalProperties": false,
  "description": "Response after requesting image build(s) for a draft artifact.",
  "properties": {
    "buildIds": {
      "description": "Workload API artifact image build document ids (same strings returned as `build_id` on get/delete build routes), one per distinct files API catalog/version pair. internal image build ids are not returned.",
      "items": {
        "type": "string"
      },
      "title": "Buildids",
      "type": "array"
    }
  },
  "required": [
    "buildIds"
  ],
  "title": "ImageBuildTriggerResponse",
  "type": "object"
}

ImageBuildTriggerResponse

Properties

Name Type Required Restrictions Description
buildIds [string] true Workload API artifact image build document ids (same strings returned as build_id on get/delete build routes), one per distinct files API catalog/version pair. internal image build ids are not returned.

InputArtifact

{
  "additionalProperties": false,
  "description": "Request to create an artifact. an artifact is always created as a draft.",
  "properties": {
    "artifactRepositoryId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the artifact repository this artifact belongs to (for versioning support).",
      "title": "Artifactrepositoryid"
    },
    "description": {
      "default": "",
      "description": "Description of the artifact.",
      "title": "Description",
      "type": "string"
    },
    "name": {
      "description": "Name of the artifact.",
      "maxLength": 5000,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    },
    "spec": {
      "description": "Artifact specification.",
      "discriminator": {
        "mapping": {
          "nim": "#/components/schemas/NimArtifactSpec",
          "service": "#/components/schemas/ServiceArtifactSpec"
        },
        "propertyName": "type"
      },
      "oneOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "type": {
              "const": "service",
              "default": "service",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "ServiceArtifactSpec",
          "type": "object"
        },
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            },
            "storage": {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "description": "Model weight storage configuration for nim artifacts.",
                  "properties": {
                    "mode": {
                      "default": "dedicatedPvc",
                      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
                      "enum": [
                        "dedicatedPvc",
                        "nimCache"
                      ],
                      "title": "Mode",
                      "type": "string"
                    },
                    "pvcSize": {
                      "anyOf": [
                        {
                          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
                      "title": "Pvcsize"
                    }
                  },
                  "title": "NimStorageConfig",
                  "type": "object"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
            },
            "templateId": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Id of the template used to create this nim artifact.",
              "title": "Templateid"
            },
            "type": {
              "const": "nim",
              "default": "nim",
              "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
              "title": "Type",
              "type": "string"
            }
          },
          "title": "NimArtifactSpec",
          "type": "object"
        }
      ],
      "title": "Spec"
    },
    "status": {
      "enum": [
        "draft",
        "locked"
      ],
      "title": "ArtifactStatus",
      "type": "string"
    },
    "type": {
      "description": "Discriminator for the artifact spec variant. used to label the workload, which may be used to prioritize the best matching operator available in the cluster for scheduling. defaults to ``service`` when omitted. - ``service``: generic service artifact. - ``nim``: nvidia nim model artifact.",
      "enum": [
        "service",
        "nim"
      ],
      "title": "ArtifactType",
      "type": "string"
    }
  },
  "required": [
    "name",
    "spec"
  ],
  "title": "InputArtifact",
  "type": "object"
}

InputArtifact

Properties

Name Type Required Restrictions Description
artifactRepositoryId any false Id of the artifact repository this artifact belongs to (for versioning support).

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
description string false Description of the artifact.
name string true maxLength: 5000
minLength: 1
minLength: 1
Name of the artifact.
spec any true Artifact specification.

oneOf

Name Type Required Restrictions Description
» anonymous ServiceArtifactSpec false none

xor

Name Type Required Restrictions Description
» anonymous NimArtifactSpec false none

continued

Name Type Required Restrictions Description
status ArtifactStatus false Artifact status.
type ArtifactType false Artifact type.

MultiContainerArtifactSpec

{
  "additionalProperties": false,
  "properties": {
    "containerGroups": {
      "default": [],
      "description": "List of container groups.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "containers": {
            "default": [],
            "description": "List of containers making this container group.",
            "items": {
              "additionalProperties": false,
              "properties": {
                "build": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "Build reference embedded in a container spec when an image build is triggered.",
                      "properties": {
                        "artifactImageBuildId": {
                          "description": "Artifact image build id.",
                          "title": "Artifactimagebuildid",
                          "type": "string"
                        },
                        "createdAt": {
                          "description": "Build creation timestamp (utc).",
                          "format": "date-time",
                          "title": "Createdat",
                          "type": "string"
                        },
                        "status": {
                          "description": "Image build reported status at submit time.",
                          "title": "Status",
                          "type": "string"
                        }
                      },
                      "required": [
                        "artifactImageBuildId",
                        "status",
                        "createdAt"
                      ],
                      "title": "ContainerBuildInfo",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                },
                "description": {
                  "default": "",
                  "description": "Description of the container.",
                  "title": "Description",
                  "type": "string"
                },
                "entrypoint": {
                  "anyOf": [
                    {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                  "title": "Entrypoint"
                },
                "environmentVars": {
                  "default": [],
                  "description": "Environment variables.",
                  "items": {
                    "anyOf": [
                      {
                        "properties": {
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "string",
                            "default": "string",
                            "title": "Source",
                            "type": "string"
                          },
                          "value": {
                            "description": "Value of the environment variable.",
                            "title": "Value",
                            "type": "string"
                          }
                        },
                        "required": [
                          "name",
                          "value"
                        ],
                        "title": "StringEnvironmentVariable",
                        "type": "object"
                      },
                      {
                        "properties": {
                          "drCredentialId": {
                            "description": "Id of the datarobot credential to use.",
                            "title": "DR Credential ID",
                            "type": "string"
                          },
                          "key": {
                            "description": "Key within the credential.",
                            "title": "Key",
                            "type": "string"
                          },
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "dr-credential",
                            "title": "Source",
                            "type": "string"
                          }
                        },
                        "required": [
                          "source",
                          "name",
                          "drCredentialId",
                          "key"
                        ],
                        "title": "CredentialEnvironmentVariable",
                        "type": "object"
                      },
                      {
                        "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                        "properties": {
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "dr-api-token",
                            "title": "Source",
                            "type": "string"
                          }
                        },
                        "required": [
                          "source",
                          "name"
                        ],
                        "title": "DrApiTokenEnvironmentVariable",
                        "type": "object"
                      }
                    ]
                  },
                  "title": "Environmentvars",
                  "type": "array"
                },
                "imageBuildConfig": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "User-provided configuration for server-side image builds from source code.",
                      "properties": {
                        "codeRef": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "datarobot": {
                                  "additionalProperties": false,
                                  "properties": {
                                    "catalogId": {
                                      "title": "Catalogid",
                                      "type": "string"
                                    },
                                    "catalogVersionId": {
                                      "title": "Catalogversionid",
                                      "type": "string"
                                    }
                                  },
                                  "required": [
                                    "catalogId",
                                    "catalogVersionId"
                                  ],
                                  "title": "DataRobotCodeRef",
                                  "type": "object"
                                },
                                "provider": {
                                  "const": "datarobot",
                                  "default": "datarobot",
                                  "title": "Provider",
                                  "type": "string"
                                },
                                "type": {
                                  "const": "datarobot",
                                  "default": "datarobot",
                                  "title": "Type",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "datarobot"
                              ],
                              "title": "CodeRef",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                        },
                        "dockerfile": {
                          "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                          "discriminator": {
                            "mapping": {
                              "generated": "#/components/schemas/GeneratedDockerfile",
                              "provided": "#/components/schemas/ProvidedDockerfile"
                            },
                            "propertyName": "source"
                          },
                          "oneOf": [
                            {
                              "additionalProperties": false,
                              "description": "User supplies a dockerfile in the uploaded source code.",
                              "properties": {
                                "path": {
                                  "default": "./Dockerfile",
                                  "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "source": {
                                  "const": "provided",
                                  "default": "provided",
                                  "title": "Source",
                                  "type": "string"
                                }
                              },
                              "title": "ProvidedDockerfile",
                              "type": "object"
                            },
                            {
                              "additionalProperties": false,
                              "description": "System generates a dockerfile from execution environment metadata.",
                              "properties": {
                                "entrypoint": {
                                  "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                  "items": {
                                    "type": "string"
                                  },
                                  "minItems": 1,
                                  "title": "Entrypoint",
                                  "type": "array"
                                },
                                "executionEnvironmentId": {
                                  "description": "Execution environment id used to resolve the base Docker image.",
                                  "title": "Execution Environment ID",
                                  "type": "string"
                                },
                                "executionEnvironmentVersionId": {
                                  "description": "Execution environment version id that pins the exact base image tag.",
                                  "title": "Execution Environment Version ID",
                                  "type": "string"
                                },
                                "source": {
                                  "const": "generated",
                                  "default": "generated",
                                  "title": "Source",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "executionEnvironmentId",
                                "executionEnvironmentVersionId",
                                "entrypoint"
                              ],
                              "title": "GeneratedDockerfile",
                              "type": "object"
                            }
                          ],
                          "title": "Dockerfile"
                        }
                      },
                      "title": "ImageBuildConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Configuration for server-side image builds from source code."
                },
                "imageUri": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                  "title": "Imageuri"
                },
                "livenessProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container liveness check configuration."
                },
                "name": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                  "title": "Name"
                },
                "port": {
                  "anyOf": [
                    {
                      "maximum": 65535,
                      "minimum": 1024,
                      "type": "integer"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                  "title": "Port"
                },
                "primary": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": false,
                  "description": "Whether this is the primary container.",
                  "title": "Primary"
                },
                "readinessProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container readiness check configuration."
                },
                "securityContext": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                      "properties": {
                        "allowPrivilegeEscalation": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                          "title": "Allowprivilegeescalation"
                        },
                        "capabilities": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Linux capabilities to add or drop from the container.",
                              "properties": {
                                "add": {
                                  "anyOf": [
                                    {
                                      "items": {
                                        "type": "string"
                                      },
                                      "type": "array"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Capabilities to add.",
                                  "title": "Add"
                                },
                                "drop": {
                                  "anyOf": [
                                    {
                                      "items": {
                                        "type": "string"
                                      },
                                      "type": "array"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Capabilities to drop.",
                                  "title": "Drop"
                                }
                              },
                              "title": "Capabilities",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Linux capabilities to add or drop."
                        },
                        "readOnlyRootFilesystem": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Whether the root filesystem is read-only.",
                          "title": "Readonlyrootfilesystem"
                        },
                        "seccompProfile": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Seccomp profile configuration.",
                              "properties": {
                                "localhostProfile": {
                                  "anyOf": [
                                    {
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                  "title": "Localhostprofile"
                                },
                                "type": {
                                  "description": "Allowed seccomp profile types.",
                                  "enum": [
                                    "RuntimeDefault",
                                    "Unconfined",
                                    "Localhost"
                                  ],
                                  "title": "SeccompProfileType",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "title": "SeccompProfile",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Seccomp profile for the container."
                        }
                      },
                      "title": "SecurityContext",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container security context."
                },
                "startupProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container startup check configuration."
                }
              },
              "title": "Container",
              "type": "object"
            },
            "title": "Containers",
            "type": "array"
          },
          "name": {
            "default": "default",
            "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
            "title": "Name",
            "type": "string"
          }
        },
        "title": "ContainerGroup",
        "type": "object"
      },
      "title": "Containergroups",
      "type": "array"
    }
  },
  "title": "MultiContainerArtifactSpec",
  "type": "object"
}

MultiContainerArtifactSpec

Properties

Name Type Required Restrictions Description
containerGroups [ContainerGroup] false List of container groups.

NimArtifactSpec

{
  "additionalProperties": false,
  "properties": {
    "containerGroups": {
      "default": [],
      "description": "List of container groups.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "containers": {
            "default": [],
            "description": "List of containers making this container group.",
            "items": {
              "additionalProperties": false,
              "properties": {
                "build": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "Build reference embedded in a container spec when an image build is triggered.",
                      "properties": {
                        "artifactImageBuildId": {
                          "description": "Artifact image build id.",
                          "title": "Artifactimagebuildid",
                          "type": "string"
                        },
                        "createdAt": {
                          "description": "Build creation timestamp (utc).",
                          "format": "date-time",
                          "title": "Createdat",
                          "type": "string"
                        },
                        "status": {
                          "description": "Image build reported status at submit time.",
                          "title": "Status",
                          "type": "string"
                        }
                      },
                      "required": [
                        "artifactImageBuildId",
                        "status",
                        "createdAt"
                      ],
                      "title": "ContainerBuildInfo",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                },
                "description": {
                  "default": "",
                  "description": "Description of the container.",
                  "title": "Description",
                  "type": "string"
                },
                "entrypoint": {
                  "anyOf": [
                    {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                  "title": "Entrypoint"
                },
                "environmentVars": {
                  "default": [],
                  "description": "Environment variables.",
                  "items": {
                    "anyOf": [
                      {
                        "properties": {
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "string",
                            "default": "string",
                            "title": "Source",
                            "type": "string"
                          },
                          "value": {
                            "description": "Value of the environment variable.",
                            "title": "Value",
                            "type": "string"
                          }
                        },
                        "required": [
                          "name",
                          "value"
                        ],
                        "title": "StringEnvironmentVariable",
                        "type": "object"
                      },
                      {
                        "properties": {
                          "drCredentialId": {
                            "description": "Id of the datarobot credential to use.",
                            "title": "DR Credential ID",
                            "type": "string"
                          },
                          "key": {
                            "description": "Key within the credential.",
                            "title": "Key",
                            "type": "string"
                          },
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "dr-credential",
                            "title": "Source",
                            "type": "string"
                          }
                        },
                        "required": [
                          "source",
                          "name",
                          "drCredentialId",
                          "key"
                        ],
                        "title": "CredentialEnvironmentVariable",
                        "type": "object"
                      },
                      {
                        "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                        "properties": {
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "dr-api-token",
                            "title": "Source",
                            "type": "string"
                          }
                        },
                        "required": [
                          "source",
                          "name"
                        ],
                        "title": "DrApiTokenEnvironmentVariable",
                        "type": "object"
                      }
                    ]
                  },
                  "title": "Environmentvars",
                  "type": "array"
                },
                "imageBuildConfig": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "User-provided configuration for server-side image builds from source code.",
                      "properties": {
                        "codeRef": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "datarobot": {
                                  "additionalProperties": false,
                                  "properties": {
                                    "catalogId": {
                                      "title": "Catalogid",
                                      "type": "string"
                                    },
                                    "catalogVersionId": {
                                      "title": "Catalogversionid",
                                      "type": "string"
                                    }
                                  },
                                  "required": [
                                    "catalogId",
                                    "catalogVersionId"
                                  ],
                                  "title": "DataRobotCodeRef",
                                  "type": "object"
                                },
                                "provider": {
                                  "const": "datarobot",
                                  "default": "datarobot",
                                  "title": "Provider",
                                  "type": "string"
                                },
                                "type": {
                                  "const": "datarobot",
                                  "default": "datarobot",
                                  "title": "Type",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "datarobot"
                              ],
                              "title": "CodeRef",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                        },
                        "dockerfile": {
                          "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                          "discriminator": {
                            "mapping": {
                              "generated": "#/components/schemas/GeneratedDockerfile",
                              "provided": "#/components/schemas/ProvidedDockerfile"
                            },
                            "propertyName": "source"
                          },
                          "oneOf": [
                            {
                              "additionalProperties": false,
                              "description": "User supplies a dockerfile in the uploaded source code.",
                              "properties": {
                                "path": {
                                  "default": "./Dockerfile",
                                  "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "source": {
                                  "const": "provided",
                                  "default": "provided",
                                  "title": "Source",
                                  "type": "string"
                                }
                              },
                              "title": "ProvidedDockerfile",
                              "type": "object"
                            },
                            {
                              "additionalProperties": false,
                              "description": "System generates a dockerfile from execution environment metadata.",
                              "properties": {
                                "entrypoint": {
                                  "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                  "items": {
                                    "type": "string"
                                  },
                                  "minItems": 1,
                                  "title": "Entrypoint",
                                  "type": "array"
                                },
                                "executionEnvironmentId": {
                                  "description": "Execution environment id used to resolve the base Docker image.",
                                  "title": "Execution Environment ID",
                                  "type": "string"
                                },
                                "executionEnvironmentVersionId": {
                                  "description": "Execution environment version id that pins the exact base image tag.",
                                  "title": "Execution Environment Version ID",
                                  "type": "string"
                                },
                                "source": {
                                  "const": "generated",
                                  "default": "generated",
                                  "title": "Source",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "executionEnvironmentId",
                                "executionEnvironmentVersionId",
                                "entrypoint"
                              ],
                              "title": "GeneratedDockerfile",
                              "type": "object"
                            }
                          ],
                          "title": "Dockerfile"
                        }
                      },
                      "title": "ImageBuildConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Configuration for server-side image builds from source code."
                },
                "imageUri": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                  "title": "Imageuri"
                },
                "livenessProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container liveness check configuration."
                },
                "name": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                  "title": "Name"
                },
                "port": {
                  "anyOf": [
                    {
                      "maximum": 65535,
                      "minimum": 1024,
                      "type": "integer"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                  "title": "Port"
                },
                "primary": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": false,
                  "description": "Whether this is the primary container.",
                  "title": "Primary"
                },
                "readinessProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container readiness check configuration."
                },
                "securityContext": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                      "properties": {
                        "allowPrivilegeEscalation": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                          "title": "Allowprivilegeescalation"
                        },
                        "capabilities": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Linux capabilities to add or drop from the container.",
                              "properties": {
                                "add": {
                                  "anyOf": [
                                    {
                                      "items": {
                                        "type": "string"
                                      },
                                      "type": "array"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Capabilities to add.",
                                  "title": "Add"
                                },
                                "drop": {
                                  "anyOf": [
                                    {
                                      "items": {
                                        "type": "string"
                                      },
                                      "type": "array"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Capabilities to drop.",
                                  "title": "Drop"
                                }
                              },
                              "title": "Capabilities",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Linux capabilities to add or drop."
                        },
                        "readOnlyRootFilesystem": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Whether the root filesystem is read-only.",
                          "title": "Readonlyrootfilesystem"
                        },
                        "seccompProfile": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Seccomp profile configuration.",
                              "properties": {
                                "localhostProfile": {
                                  "anyOf": [
                                    {
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                  "title": "Localhostprofile"
                                },
                                "type": {
                                  "description": "Allowed seccomp profile types.",
                                  "enum": [
                                    "RuntimeDefault",
                                    "Unconfined",
                                    "Localhost"
                                  ],
                                  "title": "SeccompProfileType",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "title": "SeccompProfile",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Seccomp profile for the container."
                        }
                      },
                      "title": "SecurityContext",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container security context."
                },
                "startupProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container startup check configuration."
                }
              },
              "title": "Container",
              "type": "object"
            },
            "title": "Containers",
            "type": "array"
          },
          "name": {
            "default": "default",
            "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
            "title": "Name",
            "type": "string"
          }
        },
        "title": "ContainerGroup",
        "type": "object"
      },
      "title": "Containergroups",
      "type": "array"
    },
    "storage": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "Model weight storage configuration for nim artifacts.",
          "properties": {
            "mode": {
              "default": "dedicatedPvc",
              "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
              "enum": [
                "dedicatedPvc",
                "nimCache"
              ],
              "title": "Mode",
              "type": "string"
            },
            "pvcSize": {
              "anyOf": [
                {
                  "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
              "title": "Pvcsize"
            }
          },
          "title": "NimStorageConfig",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload."
    },
    "templateId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Id of the template used to create this nim artifact.",
      "title": "Templateid"
    },
    "type": {
      "const": "nim",
      "default": "nim",
      "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
      "title": "Type",
      "type": "string"
    }
  },
  "title": "NimArtifactSpec",
  "type": "object"
}

NimArtifactSpec

Properties

Name Type Required Restrictions Description
containerGroups [ContainerGroup] false List of container groups.
storage any false Model weight storage configuration. when omitted, defaults to a dedicated per-workload pvc provisioned exclusively for this workload.

anyOf

Name Type Required Restrictions Description
» anonymous NimStorageConfig false Model weight storage configuration for nim artifacts.

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
templateId any false Id of the template used to create this nim artifact.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
type string false Artifact type discriminator. injected automatically from the top-level type field — do not set this directly.

NimStorageConfig

{
  "additionalProperties": false,
  "description": "Model weight storage configuration for nim artifacts.",
  "properties": {
    "mode": {
      "default": "dedicatedPvc",
      "description": "Storage mode for model weights. `dedicatedpvc` (default) provisions a separate pvc owned exclusively by this workload. `nimcache` reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.",
      "enum": [
        "dedicatedPvc",
        "nimCache"
      ],
      "title": "Mode",
      "type": "string"
    },
    "pvcSize": {
      "anyOf": [
        {
          "pattern": "^\\d+(\\.\\d+)?(Gi|Mi|Ti)$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is `dedicatedpvc`. when omitted, the platform-configured default is used.",
      "title": "Pvcsize"
    }
  },
  "title": "NimStorageConfig",
  "type": "object"
}

NimStorageConfig

Properties

Name Type Required Restrictions Description
mode string false Storage mode for model weights. dedicatedpvc (default) provisions a separate pvc owned exclusively by this workload. nimcache reuses a single cluster-wide pvc per model image, shared across all workloads using the same model.
pvcSize any false Pvc size for dedicated storage (e.g. '150gi'). only applies when mode is dedicatedpvc. when omitted, the platform-configured default is used.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

Enumerated Values

Property Value
mode [dedicatedPvc, nimCache]

ProbeConfig

{
  "additionalProperties": false,
  "properties": {
    "failureThreshold": {
      "default": 3,
      "description": "Minimum consecutive failures for the probe to be considered failed.",
      "title": "Failurethreshold",
      "type": "integer"
    },
    "host": {
      "anyOf": [
        {
          "minLength": 0,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Host name to connect to, defaults to the pod ip.",
      "title": "Host"
    },
    "httpHeaders": {
      "additionalProperties": {
        "type": "string"
      },
      "description": "HTTP headers for probe.",
      "title": "Httpheaders",
      "type": "object"
    },
    "initialDelaySeconds": {
      "default": 30,
      "description": "Number of seconds to wait before the first probe is executed.",
      "title": "Initialdelayseconds",
      "type": "integer"
    },
    "path": {
      "description": "Url path to query for health check.",
      "title": "Path",
      "type": "string"
    },
    "periodSeconds": {
      "default": 30,
      "description": "How often (in seconds) to perform the probe.",
      "title": "Periodseconds",
      "type": "integer"
    },
    "port": {
      "default": 8080,
      "description": "Port number to access on the container.",
      "maximum": 65535,
      "minimum": 1,
      "title": "Port",
      "type": "integer"
    },
    "scheme": {
      "default": "HTTP",
      "description": "Scheme to use for connecting to the host.",
      "enum": [
        "HTTP",
        "HTTPS"
      ],
      "title": "Scheme",
      "type": "string"
    },
    "timeoutSeconds": {
      "default": 30,
      "description": "Number of seconds after which the probe times out.",
      "title": "Timeoutseconds",
      "type": "integer"
    }
  },
  "required": [
    "path"
  ],
  "title": "ProbeConfig",
  "type": "object"
}

ProbeConfig

Properties

Name Type Required Restrictions Description
failureThreshold integer false Minimum consecutive failures for the probe to be considered failed.
host any false Host name to connect to, defaults to the pod ip.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
httpHeaders object false HTTP headers for probe.
» additionalProperties string false none
initialDelaySeconds integer false Number of seconds to wait before the first probe is executed.
path string true Url path to query for health check.
periodSeconds integer false How often (in seconds) to perform the probe.
port integer false maximum: 65535
minimum: 1
Port number to access on the container.
scheme string false Scheme to use for connecting to the host.
timeoutSeconds integer false Number of seconds after which the probe times out.

Enumerated Values

Property Value
scheme [HTTP, HTTPS]

ProvidedDockerfile

{
  "additionalProperties": false,
  "description": "User supplies a dockerfile in the uploaded source code.",
  "properties": {
    "path": {
      "default": "./Dockerfile",
      "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
      "title": "Path",
      "type": "string"
    },
    "source": {
      "const": "provided",
      "default": "provided",
      "title": "Source",
      "type": "string"
    }
  },
  "title": "ProvidedDockerfile",
  "type": "object"
}

ProvidedDockerfile

Properties

Name Type Required Restrictions Description
path string false Relative path to the dockerfile in the source code. defaults to ./dockerfile.
source string false none

ResourcePermission

{
  "description": "Represents the particular role a user, group or organization holds on an entity.",
  "enum": [
    "CAN_VIEW",
    "CAN_UPDATE",
    "CAN_DELETE",
    "CAN_SHARE",
    "CAN_MAKE_PREDICTIONS",
    "CAN_SHARE_ROLE_OWNER",
    "CAN_SHARE_ROLE_READ_WRITE",
    "CAN_SHARE_ROLE_READ_ONLY"
  ],
  "title": "ResourcePermission",
  "type": "string"
}

ResourcePermission

Properties

Name Type Required Restrictions Description
ResourcePermission string false Represents the particular role a user, group or organization holds on an entity.

Enumerated Values

Property Value
ResourcePermission [CAN_VIEW, CAN_UPDATE, CAN_DELETE, CAN_SHARE, CAN_MAKE_PREDICTIONS, CAN_SHARE_ROLE_OWNER, CAN_SHARE_ROLE_READ_WRITE, CAN_SHARE_ROLE_READ_ONLY]

ResourcePermissions

{
  "anyOf": [
    {
      "items": {
        "description": "Represents the particular role a user, group or organization holds on an entity.",
        "enum": [
          "CAN_VIEW",
          "CAN_UPDATE",
          "CAN_DELETE",
          "CAN_SHARE",
          "CAN_MAKE_PREDICTIONS",
          "CAN_SHARE_ROLE_OWNER",
          "CAN_SHARE_ROLE_READ_WRITE",
          "CAN_SHARE_ROLE_READ_ONLY"
        ],
        "title": "ResourcePermission",
        "type": "string"
      },
      "type": "array"
    },
    {
      "items": {
        "const": "*",
        "type": "string"
      },
      "type": "array"
    }
  ]
}

Properties

anyOf

Name Type Required Restrictions Description
anonymous [ResourcePermission] false [Represents the particular role a user, group or organization holds on an entity.]

or

Name Type Required Restrictions Description
anonymous [ANY_PERMISSION] false none

SeccompProfile

{
  "additionalProperties": false,
  "description": "Seccomp profile configuration.",
  "properties": {
    "localhostProfile": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
      "title": "Localhostprofile"
    },
    "type": {
      "description": "Allowed seccomp profile types.",
      "enum": [
        "RuntimeDefault",
        "Unconfined",
        "Localhost"
      ],
      "title": "SeccompProfileType",
      "type": "string"
    }
  },
  "required": [
    "type"
  ],
  "title": "SeccompProfile",
  "type": "object"
}

SeccompProfile

Properties

Name Type Required Restrictions Description
localhostProfile any false Path to a seccomp profile on the node. only valid when type is localhost.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
type SeccompProfileType true Seccomp profile type.

SeccompProfileType

{
  "description": "Allowed seccomp profile types.",
  "enum": [
    "RuntimeDefault",
    "Unconfined",
    "Localhost"
  ],
  "title": "SeccompProfileType",
  "type": "string"
}

SeccompProfileType

Properties

Name Type Required Restrictions Description
SeccompProfileType string false Allowed seccomp profile types.

Enumerated Values

Property Value
SeccompProfileType [RuntimeDefault, Unconfined, Localhost]

SecurityContext

{
  "additionalProperties": false,
  "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
  "properties": {
    "allowPrivilegeEscalation": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
      "title": "Allowprivilegeescalation"
    },
    "capabilities": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "Linux capabilities to add or drop from the container.",
          "properties": {
            "add": {
              "anyOf": [
                {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Capabilities to add.",
              "title": "Add"
            },
            "drop": {
              "anyOf": [
                {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Capabilities to drop.",
              "title": "Drop"
            }
          },
          "title": "Capabilities",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Linux capabilities to add or drop."
    },
    "readOnlyRootFilesystem": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "description": "Whether the root filesystem is read-only.",
      "title": "Readonlyrootfilesystem"
    },
    "seccompProfile": {
      "anyOf": [
        {
          "additionalProperties": false,
          "description": "Seccomp profile configuration.",
          "properties": {
            "localhostProfile": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
              "title": "Localhostprofile"
            },
            "type": {
              "description": "Allowed seccomp profile types.",
              "enum": [
                "RuntimeDefault",
                "Unconfined",
                "Localhost"
              ],
              "title": "SeccompProfileType",
              "type": "string"
            }
          },
          "required": [
            "type"
          ],
          "title": "SeccompProfile",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Seccomp profile for the container."
    }
  },
  "title": "SecurityContext",
  "type": "object"
}

SecurityContext

Properties

Name Type Required Restrictions Description
allowPrivilegeEscalation any false Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
capabilities any false Linux capabilities to add or drop.

anyOf

Name Type Required Restrictions Description
» anonymous Capabilities false Linux capabilities to add or drop from the container.

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
readOnlyRootFilesystem any false Whether the root filesystem is read-only.

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
seccompProfile any false Seccomp profile for the container.

anyOf

Name Type Required Restrictions Description
» anonymous SeccompProfile false Seccomp profile configuration.

or

Name Type Required Restrictions Description
» anonymous null false none

ServiceArtifactSpec

{
  "additionalProperties": false,
  "properties": {
    "containerGroups": {
      "default": [],
      "description": "List of container groups.",
      "items": {
        "additionalProperties": false,
        "properties": {
          "containers": {
            "default": [],
            "description": "List of containers making this container group.",
            "items": {
              "additionalProperties": false,
              "properties": {
                "build": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "Build reference embedded in a container spec when an image build is triggered.",
                      "properties": {
                        "artifactImageBuildId": {
                          "description": "Artifact image build id.",
                          "title": "Artifactimagebuildid",
                          "type": "string"
                        },
                        "createdAt": {
                          "description": "Build creation timestamp (utc).",
                          "format": "date-time",
                          "title": "Createdat",
                          "type": "string"
                        },
                        "status": {
                          "description": "Image build reported status at submit time.",
                          "title": "Status",
                          "type": "string"
                        }
                      },
                      "required": [
                        "artifactImageBuildId",
                        "status",
                        "createdAt"
                      ],
                      "title": "ContainerBuildInfo",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                },
                "description": {
                  "default": "",
                  "description": "Description of the container.",
                  "title": "Description",
                  "type": "string"
                },
                "entrypoint": {
                  "anyOf": [
                    {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                  "title": "Entrypoint"
                },
                "environmentVars": {
                  "default": [],
                  "description": "Environment variables.",
                  "items": {
                    "anyOf": [
                      {
                        "properties": {
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "string",
                            "default": "string",
                            "title": "Source",
                            "type": "string"
                          },
                          "value": {
                            "description": "Value of the environment variable.",
                            "title": "Value",
                            "type": "string"
                          }
                        },
                        "required": [
                          "name",
                          "value"
                        ],
                        "title": "StringEnvironmentVariable",
                        "type": "object"
                      },
                      {
                        "properties": {
                          "drCredentialId": {
                            "description": "Id of the datarobot credential to use.",
                            "title": "DR Credential ID",
                            "type": "string"
                          },
                          "key": {
                            "description": "Key within the credential.",
                            "title": "Key",
                            "type": "string"
                          },
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "dr-credential",
                            "title": "Source",
                            "type": "string"
                          }
                        },
                        "required": [
                          "source",
                          "name",
                          "drCredentialId",
                          "key"
                        ],
                        "title": "CredentialEnvironmentVariable",
                        "type": "object"
                      },
                      {
                        "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                        "properties": {
                          "name": {
                            "description": "Name of the environment variable.",
                            "title": "Name",
                            "type": "string"
                          },
                          "source": {
                            "const": "dr-api-token",
                            "title": "Source",
                            "type": "string"
                          }
                        },
                        "required": [
                          "source",
                          "name"
                        ],
                        "title": "DrApiTokenEnvironmentVariable",
                        "type": "object"
                      }
                    ]
                  },
                  "title": "Environmentvars",
                  "type": "array"
                },
                "imageBuildConfig": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "User-provided configuration for server-side image builds from source code.",
                      "properties": {
                        "codeRef": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "datarobot": {
                                  "additionalProperties": false,
                                  "properties": {
                                    "catalogId": {
                                      "title": "Catalogid",
                                      "type": "string"
                                    },
                                    "catalogVersionId": {
                                      "title": "Catalogversionid",
                                      "type": "string"
                                    }
                                  },
                                  "required": [
                                    "catalogId",
                                    "catalogVersionId"
                                  ],
                                  "title": "DataRobotCodeRef",
                                  "type": "object"
                                },
                                "provider": {
                                  "const": "datarobot",
                                  "default": "datarobot",
                                  "title": "Provider",
                                  "type": "string"
                                },
                                "type": {
                                  "const": "datarobot",
                                  "default": "datarobot",
                                  "title": "Type",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "datarobot"
                              ],
                              "title": "CodeRef",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                        },
                        "dockerfile": {
                          "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                          "discriminator": {
                            "mapping": {
                              "generated": "#/components/schemas/GeneratedDockerfile",
                              "provided": "#/components/schemas/ProvidedDockerfile"
                            },
                            "propertyName": "source"
                          },
                          "oneOf": [
                            {
                              "additionalProperties": false,
                              "description": "User supplies a dockerfile in the uploaded source code.",
                              "properties": {
                                "path": {
                                  "default": "./Dockerfile",
                                  "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "source": {
                                  "const": "provided",
                                  "default": "provided",
                                  "title": "Source",
                                  "type": "string"
                                }
                              },
                              "title": "ProvidedDockerfile",
                              "type": "object"
                            },
                            {
                              "additionalProperties": false,
                              "description": "System generates a dockerfile from execution environment metadata.",
                              "properties": {
                                "entrypoint": {
                                  "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                  "items": {
                                    "type": "string"
                                  },
                                  "minItems": 1,
                                  "title": "Entrypoint",
                                  "type": "array"
                                },
                                "executionEnvironmentId": {
                                  "description": "Execution environment id used to resolve the base Docker image.",
                                  "title": "Execution Environment ID",
                                  "type": "string"
                                },
                                "executionEnvironmentVersionId": {
                                  "description": "Execution environment version id that pins the exact base image tag.",
                                  "title": "Execution Environment Version ID",
                                  "type": "string"
                                },
                                "source": {
                                  "const": "generated",
                                  "default": "generated",
                                  "title": "Source",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "executionEnvironmentId",
                                "executionEnvironmentVersionId",
                                "entrypoint"
                              ],
                              "title": "GeneratedDockerfile",
                              "type": "object"
                            }
                          ],
                          "title": "Dockerfile"
                        }
                      },
                      "title": "ImageBuildConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Configuration for server-side image builds from source code."
                },
                "imageUri": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                  "title": "Imageuri"
                },
                "livenessProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container liveness check configuration."
                },
                "name": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                  "title": "Name"
                },
                "port": {
                  "anyOf": [
                    {
                      "maximum": 65535,
                      "minimum": 1024,
                      "type": "integer"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                  "title": "Port"
                },
                "primary": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": false,
                  "description": "Whether this is the primary container.",
                  "title": "Primary"
                },
                "readinessProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container readiness check configuration."
                },
                "securityContext": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                      "properties": {
                        "allowPrivilegeEscalation": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                          "title": "Allowprivilegeescalation"
                        },
                        "capabilities": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Linux capabilities to add or drop from the container.",
                              "properties": {
                                "add": {
                                  "anyOf": [
                                    {
                                      "items": {
                                        "type": "string"
                                      },
                                      "type": "array"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Capabilities to add.",
                                  "title": "Add"
                                },
                                "drop": {
                                  "anyOf": [
                                    {
                                      "items": {
                                        "type": "string"
                                      },
                                      "type": "array"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Capabilities to drop.",
                                  "title": "Drop"
                                }
                              },
                              "title": "Capabilities",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Linux capabilities to add or drop."
                        },
                        "readOnlyRootFilesystem": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Whether the root filesystem is read-only.",
                          "title": "Readonlyrootfilesystem"
                        },
                        "seccompProfile": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Seccomp profile configuration.",
                              "properties": {
                                "localhostProfile": {
                                  "anyOf": [
                                    {
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                  "title": "Localhostprofile"
                                },
                                "type": {
                                  "description": "Allowed seccomp profile types.",
                                  "enum": [
                                    "RuntimeDefault",
                                    "Unconfined",
                                    "Localhost"
                                  ],
                                  "title": "SeccompProfileType",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "title": "SeccompProfile",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Seccomp profile for the container."
                        }
                      },
                      "title": "SecurityContext",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container security context."
                },
                "startupProbe": {
                  "anyOf": [
                    {
                      "additionalProperties": false,
                      "properties": {
                        "failureThreshold": {
                          "default": 3,
                          "description": "Minimum consecutive failures for the probe to be considered failed.",
                          "title": "Failurethreshold",
                          "type": "integer"
                        },
                        "host": {
                          "anyOf": [
                            {
                              "minLength": 0,
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Host name to connect to, defaults to the pod ip.",
                          "title": "Host"
                        },
                        "httpHeaders": {
                          "additionalProperties": {
                            "type": "string"
                          },
                          "description": "HTTP headers for probe.",
                          "title": "Httpheaders",
                          "type": "object"
                        },
                        "initialDelaySeconds": {
                          "default": 30,
                          "description": "Number of seconds to wait before the first probe is executed.",
                          "title": "Initialdelayseconds",
                          "type": "integer"
                        },
                        "path": {
                          "description": "Url path to query for health check.",
                          "title": "Path",
                          "type": "string"
                        },
                        "periodSeconds": {
                          "default": 30,
                          "description": "How often (in seconds) to perform the probe.",
                          "title": "Periodseconds",
                          "type": "integer"
                        },
                        "port": {
                          "default": 8080,
                          "description": "Port number to access on the container.",
                          "maximum": 65535,
                          "minimum": 1,
                          "title": "Port",
                          "type": "integer"
                        },
                        "scheme": {
                          "default": "HTTP",
                          "description": "Scheme to use for connecting to the host.",
                          "enum": [
                            "HTTP",
                            "HTTPS"
                          ],
                          "title": "Scheme",
                          "type": "string"
                        },
                        "timeoutSeconds": {
                          "default": 30,
                          "description": "Number of seconds after which the probe times out.",
                          "title": "Timeoutseconds",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "path"
                      ],
                      "title": "ProbeConfig",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "Container startup check configuration."
                }
              },
              "title": "Container",
              "type": "object"
            },
            "title": "Containers",
            "type": "array"
          },
          "name": {
            "default": "default",
            "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
            "title": "Name",
            "type": "string"
          }
        },
        "title": "ContainerGroup",
        "type": "object"
      },
      "title": "Containergroups",
      "type": "array"
    },
    "type": {
      "const": "service",
      "default": "service",
      "description": "Artifact type discriminator. injected automatically from the top-level `type` field — do not set this directly.",
      "title": "Type",
      "type": "string"
    }
  },
  "title": "ServiceArtifactSpec",
  "type": "object"
}

ServiceArtifactSpec

Properties

Name Type Required Restrictions Description
containerGroups [ContainerGroup] false List of container groups.
type string false Artifact type discriminator. injected automatically from the top-level type field — do not set this directly.

SharedRole

{
  "additionalProperties": false,
  "description": "Represents a recipient (user, group, or organization) with access to an entity. this model is used for listing and managing access control on shared resources, providing information about who has access and what role they have.",
  "properties": {
    "id": {
      "description": "The identifier of the recipient.",
      "title": "Id",
      "type": "string"
    },
    "name": {
      "description": "The name of the recipient.",
      "title": "Name",
      "type": "string"
    },
    "role": {
      "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
      "enum": [
        "NO_ROLE",
        "OWNER",
        "READ_WRITE",
        "EDITOR",
        "USER",
        "DATA_SCIENTIST",
        "ADMIN",
        "READ_ONLY",
        "CONSUMER",
        "OBSERVER"
      ],
      "title": "SharingRole",
      "type": "string"
    },
    "shareRecipientType": {
      "description": "Enum of possible subject types.",
      "enum": [
        "user",
        "group",
        "organization",
        "role"
      ],
      "title": "SubjectType",
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "shareRecipientType",
    "role"
  ],
  "title": "SharedRole",
  "type": "object"
}

SharedRole

Properties

Name Type Required Restrictions Description
id string true The identifier of the recipient.
name string true The name of the recipient.
role SharingRole true The role of the recipient on this entity.
shareRecipientType SubjectType true The type of the recipient.

SharedRoleListResponse

{
  "additionalProperties": false,
  "properties": {
    "count": {
      "description": "The number of records on this page.",
      "title": "Count",
      "type": "integer"
    },
    "data": {
      "description": "The list of records.",
      "items": {
        "additionalProperties": false,
        "description": "Represents a recipient (user, group, or organization) with access to an entity. this model is used for listing and managing access control on shared resources, providing information about who has access and what role they have.",
        "properties": {
          "id": {
            "description": "The identifier of the recipient.",
            "title": "Id",
            "type": "string"
          },
          "name": {
            "description": "The name of the recipient.",
            "title": "Name",
            "type": "string"
          },
          "role": {
            "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
            "enum": [
              "NO_ROLE",
              "OWNER",
              "READ_WRITE",
              "EDITOR",
              "USER",
              "DATA_SCIENTIST",
              "ADMIN",
              "READ_ONLY",
              "CONSUMER",
              "OBSERVER"
            ],
            "title": "SharingRole",
            "type": "string"
          },
          "shareRecipientType": {
            "description": "Enum of possible subject types.",
            "enum": [
              "user",
              "group",
              "organization",
              "role"
            ],
            "title": "SubjectType",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "shareRecipientType",
          "role"
        ],
        "title": "SharedRole",
        "type": "object"
      },
      "title": "Data",
      "type": "array"
    },
    "next": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the next page, or `null` if there is no such page.",
      "title": "Next"
    },
    "previous": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "The url to the previous page, or `null` if there is no such page.",
      "title": "Previous"
    },
    "totalCount": {
      "description": "The total number of records.",
      "title": "Totalcount",
      "type": "integer"
    }
  },
  "required": [
    "totalCount",
    "count",
    "next",
    "previous",
    "data"
  ],
  "title": "SharedRoleListResponse",
  "type": "object"
}

SharedRoleListResponse

Properties

Name Type Required Restrictions Description
count integer true The number of records on this page.
data [SharedRole] true The list of records.
next any true The url to the next page, or null if there is no such page.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
previous any true The url to the previous page, or null if there is no such page.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
totalCount integer true The total number of records.

SharedRolesUpdateRequest

{
  "additionalProperties": false,
  "description": "Request model for updating shared roles on an entity. used to grant access, remove access, or update roles for organizations, groups, or users. up to 100 roles may be set in a single request.",
  "properties": {
    "operation": {
      "const": "updateRoles",
      "description": "Name of the action being taken. the only operation is 'updateroles'.",
      "title": "Operation",
      "type": "string"
    },
    "roles": {
      "description": "Array of grantaccesscontrol objects, up to maximum 100 objects.",
      "items": {
        "anyOf": [
          {
            "additionalProperties": false,
            "description": "Grant access control request using username for user identification.",
            "properties": {
              "role": {
                "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
                "enum": [
                  "NO_ROLE",
                  "OWNER",
                  "READ_WRITE",
                  "EDITOR",
                  "USER",
                  "DATA_SCIENTIST",
                  "ADMIN",
                  "READ_ONLY",
                  "CONSUMER",
                  "OBSERVER"
                ],
                "title": "SharingRole",
                "type": "string"
              },
              "shareRecipientType": {
                "description": "Enum of possible subject types.",
                "enum": [
                  "user",
                  "group",
                  "organization",
                  "role"
                ],
                "title": "SubjectType",
                "type": "string"
              },
              "username": {
                "description": "Username of the user to update the access role for.",
                "title": "Username",
                "type": "string"
              }
            },
            "required": [
              "shareRecipientType",
              "role",
              "username"
            ],
            "title": "GrantAccessControlWithUsername",
            "type": "object"
          },
          {
            "additionalProperties": false,
            "description": "Grant access control request using id for recipient identification. can be used for users, groups, or organizations.",
            "properties": {
              "id": {
                "description": "The id of the recipient.",
                "title": "Id",
                "type": "string"
              },
              "role": {
                "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
                "enum": [
                  "NO_ROLE",
                  "OWNER",
                  "READ_WRITE",
                  "EDITOR",
                  "USER",
                  "DATA_SCIENTIST",
                  "ADMIN",
                  "READ_ONLY",
                  "CONSUMER",
                  "OBSERVER"
                ],
                "title": "SharingRole",
                "type": "string"
              },
              "shareRecipientType": {
                "description": "Enum of possible subject types.",
                "enum": [
                  "user",
                  "group",
                  "organization",
                  "role"
                ],
                "title": "SubjectType",
                "type": "string"
              }
            },
            "required": [
              "shareRecipientType",
              "role",
              "id"
            ],
            "title": "GrantAccessControlWithId",
            "type": "object"
          }
        ]
      },
      "maxItems": 100,
      "minItems": 1,
      "title": "Roles",
      "type": "array"
    }
  },
  "required": [
    "operation",
    "roles"
  ],
  "title": "SharedRolesUpdateRequest",
  "type": "object"
}

SharedRolesUpdateRequest

Properties

Name Type Required Restrictions Description
operation string true Name of the action being taken. the only operation is 'updateroles'.
roles [anyOf] true maxItems: 100
minItems: 1
Array of grantaccesscontrol objects, up to maximum 100 objects.

anyOf

Name Type Required Restrictions Description
» anonymous GrantAccessControlWithUsername false Grant access control request using username for user identification.

or

Name Type Required Restrictions Description
» anonymous GrantAccessControlWithId false Grant access control request using id for recipient identification. can be used for users, groups, or organizations.

SharingRole

{
  "description": "External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.",
  "enum": [
    "NO_ROLE",
    "OWNER",
    "READ_WRITE",
    "EDITOR",
    "USER",
    "DATA_SCIENTIST",
    "ADMIN",
    "READ_ONLY",
    "CONSUMER",
    "OBSERVER"
  ],
  "title": "SharingRole",
  "type": "string"
}

SharingRole

Properties

Name Type Required Restrictions Description
SharingRole string false External sharing roles representing the permission level a user, group or organization holds on an entity. these roles map to internal permissions and are used in sharing apis.

Enumerated Values

Property Value
SharingRole [NO_ROLE, OWNER, READ_WRITE, EDITOR, USER, DATA_SCIENTIST, ADMIN, READ_ONLY, CONSUMER, OBSERVER]

StringEnvironmentVariable

{
  "properties": {
    "name": {
      "description": "Name of the environment variable.",
      "title": "Name",
      "type": "string"
    },
    "source": {
      "const": "string",
      "default": "string",
      "title": "Source",
      "type": "string"
    },
    "value": {
      "description": "Value of the environment variable.",
      "title": "Value",
      "type": "string"
    }
  },
  "required": [
    "name",
    "value"
  ],
  "title": "StringEnvironmentVariable",
  "type": "object"
}

StringEnvironmentVariable

Properties

Name Type Required Restrictions Description
name string true Name of the environment variable.
source string false none
value string true Value of the environment variable.

SubjectType

{
  "description": "Enum of possible subject types.",
  "enum": [
    "user",
    "group",
    "organization",
    "role"
  ],
  "title": "SubjectType",
  "type": "string"
}

SubjectType

Properties

Name Type Required Restrictions Description
SubjectType string false Enum of possible subject types.

Enumerated Values

Property Value
SubjectType [user, group, organization, role]

TagInfo

{
  "additionalProperties": false,
  "properties": {
    "id": {
      "description": "Unique identifier of the tag.",
      "title": "Id",
      "type": "string"
    },
    "name": {
      "description": "Name of the tag.",
      "title": "Name",
      "type": "string"
    },
    "value": {
      "description": "Value of the tag.",
      "title": "Value",
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "value"
  ],
  "title": "TagInfo",
  "type": "object"
}

TagInfo

Properties

Name Type Required Restrictions Description
id string true Unique identifier of the tag.
name string true Name of the tag.
value string true Value of the tag.

Tags

{
  "items": {
    "additionalProperties": false,
    "properties": {
      "id": {
        "description": "Unique identifier of the tag.",
        "title": "Id",
        "type": "string"
      },
      "name": {
        "description": "Name of the tag.",
        "title": "Name",
        "type": "string"
      },
      "value": {
        "description": "Value of the tag.",
        "title": "Value",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "value"
    ],
    "title": "TagInfo",
    "type": "object"
  },
  "type": "array"
}

Properties

Name Type Required Restrictions Description
anonymous [TagInfo] false none

UpdateArtifactRequest

{
  "additionalProperties": false,
  "description": "Request to update an artifact. when updating an artifact, the user_id and tenant_id cannot be changed. currently transferring of ownership of an artifact is not supported.",
  "properties": {
    "description": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Description of the artifact.",
      "title": "Description"
    },
    "name": {
      "anyOf": [
        {
          "maxLength": 5000,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Name of the artifact.",
      "title": "Name"
    },
    "spec": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "containerGroups": {
              "default": [],
              "description": "List of container groups.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "containers": {
                    "default": [],
                    "description": "List of containers making this container group.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "build": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Build reference embedded in a container spec when an image build is triggered.",
                              "properties": {
                                "artifactImageBuildId": {
                                  "description": "Artifact image build id.",
                                  "title": "Artifactimagebuildid",
                                  "type": "string"
                                },
                                "createdAt": {
                                  "description": "Build creation timestamp (utc).",
                                  "format": "date-time",
                                  "title": "Createdat",
                                  "type": "string"
                                },
                                "status": {
                                  "description": "Image build reported status at submit time.",
                                  "title": "Status",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "artifactImageBuildId",
                                "status",
                                "createdAt"
                              ],
                              "title": "ContainerBuildInfo",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Server-set image build metadata (e.g. after lock or draft build trigger). workload API clears this on artifact create/update before persistence; clients must not rely on sending it."
                        },
                        "description": {
                          "default": "",
                          "description": "Description of the container.",
                          "title": "Description",
                          "type": "string"
                        },
                        "entrypoint": {
                          "anyOf": [
                            {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Runtime entrypoint override for the container command. independent of build entrypoint.",
                          "title": "Entrypoint"
                        },
                        "environmentVars": {
                          "default": [],
                          "description": "Environment variables.",
                          "items": {
                            "anyOf": [
                              {
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "string",
                                    "default": "string",
                                    "title": "Source",
                                    "type": "string"
                                  },
                                  "value": {
                                    "description": "Value of the environment variable.",
                                    "title": "Value",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "name",
                                  "value"
                                ],
                                "title": "StringEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "properties": {
                                  "drCredentialId": {
                                    "description": "Id of the datarobot credential to use.",
                                    "title": "DR Credential ID",
                                    "type": "string"
                                  },
                                  "key": {
                                    "description": "Key within the credential.",
                                    "title": "Key",
                                    "type": "string"
                                  },
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-credential",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name",
                                  "drCredentialId",
                                  "key"
                                ],
                                "title": "CredentialEnvironmentVariable",
                                "type": "object"
                              },
                              {
                                "description": "A platform-managed datarobot API token injected as an environment variable. the token value is resolved at proton creation (find-or-create a per-workload ``workload <workloadid>`` API key scoped to the invoking user); no value or id is supplied by the user.",
                                "properties": {
                                  "name": {
                                    "description": "Name of the environment variable.",
                                    "title": "Name",
                                    "type": "string"
                                  },
                                  "source": {
                                    "const": "dr-api-token",
                                    "title": "Source",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "source",
                                  "name"
                                ],
                                "title": "DrApiTokenEnvironmentVariable",
                                "type": "object"
                              }
                            ]
                          },
                          "title": "Environmentvars",
                          "type": "array"
                        },
                        "imageBuildConfig": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "User-provided configuration for server-side image builds from source code.",
                              "properties": {
                                "codeRef": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "properties": {
                                        "datarobot": {
                                          "additionalProperties": false,
                                          "properties": {
                                            "catalogId": {
                                              "title": "Catalogid",
                                              "type": "string"
                                            },
                                            "catalogVersionId": {
                                              "title": "Catalogversionid",
                                              "type": "string"
                                            }
                                          },
                                          "required": [
                                            "catalogId",
                                            "catalogVersionId"
                                          ],
                                          "title": "DataRobotCodeRef",
                                          "type": "object"
                                        },
                                        "provider": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Provider",
                                          "type": "string"
                                        },
                                        "type": {
                                          "const": "datarobot",
                                          "default": "datarobot",
                                          "title": "Type",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "datarobot"
                                      ],
                                      "title": "CodeRef",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Reference to source code (e.g. files API catalog). optional at create time; required before build or lock."
                                },
                                "dockerfile": {
                                  "description": "How the dockerfile is obtained. defaults to using ./dockerfile from the source code.",
                                  "discriminator": {
                                    "mapping": {
                                      "generated": "#/components/schemas/GeneratedDockerfile",
                                      "provided": "#/components/schemas/ProvidedDockerfile"
                                    },
                                    "propertyName": "source"
                                  },
                                  "oneOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "User supplies a dockerfile in the uploaded source code.",
                                      "properties": {
                                        "path": {
                                          "default": "./Dockerfile",
                                          "description": "Relative path to the dockerfile in the source code. defaults to ./dockerfile.",
                                          "title": "Path",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "provided",
                                          "default": "provided",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "title": "ProvidedDockerfile",
                                      "type": "object"
                                    },
                                    {
                                      "additionalProperties": false,
                                      "description": "System generates a dockerfile from execution environment metadata.",
                                      "properties": {
                                        "entrypoint": {
                                          "description": "Entrypoint baked into the generated dockerfile cmd (e.g. [\"python\", \"app.py\"]).",
                                          "items": {
                                            "type": "string"
                                          },
                                          "minItems": 1,
                                          "title": "Entrypoint",
                                          "type": "array"
                                        },
                                        "executionEnvironmentId": {
                                          "description": "Execution environment id used to resolve the base Docker image.",
                                          "title": "Execution Environment ID",
                                          "type": "string"
                                        },
                                        "executionEnvironmentVersionId": {
                                          "description": "Execution environment version id that pins the exact base image tag.",
                                          "title": "Execution Environment Version ID",
                                          "type": "string"
                                        },
                                        "source": {
                                          "const": "generated",
                                          "default": "generated",
                                          "title": "Source",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "executionEnvironmentId",
                                        "executionEnvironmentVersionId",
                                        "entrypoint"
                                      ],
                                      "title": "GeneratedDockerfile",
                                      "type": "object"
                                    }
                                  ],
                                  "title": "Dockerfile"
                                }
                              },
                              "title": "ImageBuildConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Configuration for server-side image builds from source code."
                        },
                        "imageUri": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Docker image uri. required when imagebuildconfig is not set; server-populated after a successful image build.",
                          "title": "Imageuri"
                        },
                        "livenessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container liveness check configuration."
                        },
                        "name": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Name of the container. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                          "title": "Name"
                        },
                        "port": {
                          "anyOf": [
                            {
                              "maximum": 65535,
                              "minimum": 1024,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container access port. when set, must be >= 1024 for security and platform compatibility reasons. primary containers must define a port; non-primary containers must omit it.",
                          "title": "Port"
                        },
                        "primary": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": false,
                          "description": "Whether this is the primary container.",
                          "title": "Primary"
                        },
                        "readinessProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container readiness check configuration."
                        },
                        "securityContext": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "description": "Container-level security context. lets workload creators tighten security constraints beyond the platform defaults. runasnonroot and runasuser are enforced by the platform and are not user-settable. elevated fields (capabilities.add, allowprivilegeescalation=true, seccompprofile.type=unconfined) require the mlops admin role; regular users may only tighten defaults — drop capabilities, enable read-only rootfs, or set a runtimedefault/localhost seccomp profile.",
                              "properties": {
                                "allowPrivilegeEscalation": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether a process can gain more privileges than its parent. requires the mlops admin role to set to true.",
                                  "title": "Allowprivilegeescalation"
                                },
                                "capabilities": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Linux capabilities to add or drop from the container.",
                                      "properties": {
                                        "add": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to add.",
                                          "title": "Add"
                                        },
                                        "drop": {
                                          "anyOf": [
                                            {
                                              "items": {
                                                "type": "string"
                                              },
                                              "type": "array"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Capabilities to drop.",
                                          "title": "Drop"
                                        }
                                      },
                                      "title": "Capabilities",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Linux capabilities to add or drop."
                                },
                                "readOnlyRootFilesystem": {
                                  "anyOf": [
                                    {
                                      "type": "boolean"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Whether the root filesystem is read-only.",
                                  "title": "Readonlyrootfilesystem"
                                },
                                "seccompProfile": {
                                  "anyOf": [
                                    {
                                      "additionalProperties": false,
                                      "description": "Seccomp profile configuration.",
                                      "properties": {
                                        "localhostProfile": {
                                          "anyOf": [
                                            {
                                              "type": "string"
                                            },
                                            {
                                              "type": "null"
                                            }
                                          ],
                                          "description": "Path to a seccomp profile on the node. only valid when type is localhost.",
                                          "title": "Localhostprofile"
                                        },
                                        "type": {
                                          "description": "Allowed seccomp profile types.",
                                          "enum": [
                                            "RuntimeDefault",
                                            "Unconfined",
                                            "Localhost"
                                          ],
                                          "title": "SeccompProfileType",
                                          "type": "string"
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "title": "SeccompProfile",
                                      "type": "object"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Seccomp profile for the container."
                                }
                              },
                              "title": "SecurityContext",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container security context."
                        },
                        "startupProbe": {
                          "anyOf": [
                            {
                              "additionalProperties": false,
                              "properties": {
                                "failureThreshold": {
                                  "default": 3,
                                  "description": "Minimum consecutive failures for the probe to be considered failed.",
                                  "title": "Failurethreshold",
                                  "type": "integer"
                                },
                                "host": {
                                  "anyOf": [
                                    {
                                      "minLength": 0,
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ],
                                  "description": "Host name to connect to, defaults to the pod ip.",
                                  "title": "Host"
                                },
                                "httpHeaders": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "HTTP headers for probe.",
                                  "title": "Httpheaders",
                                  "type": "object"
                                },
                                "initialDelaySeconds": {
                                  "default": 30,
                                  "description": "Number of seconds to wait before the first probe is executed.",
                                  "title": "Initialdelayseconds",
                                  "type": "integer"
                                },
                                "path": {
                                  "description": "Url path to query for health check.",
                                  "title": "Path",
                                  "type": "string"
                                },
                                "periodSeconds": {
                                  "default": 30,
                                  "description": "How often (in seconds) to perform the probe.",
                                  "title": "Periodseconds",
                                  "type": "integer"
                                },
                                "port": {
                                  "default": 8080,
                                  "description": "Port number to access on the container.",
                                  "maximum": 65535,
                                  "minimum": 1,
                                  "title": "Port",
                                  "type": "integer"
                                },
                                "scheme": {
                                  "default": "HTTP",
                                  "description": "Scheme to use for connecting to the host.",
                                  "enum": [
                                    "HTTP",
                                    "HTTPS"
                                  ],
                                  "title": "Scheme",
                                  "type": "string"
                                },
                                "timeoutSeconds": {
                                  "default": 30,
                                  "description": "Number of seconds after which the probe times out.",
                                  "title": "Timeoutseconds",
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "path"
                              ],
                              "title": "ProbeConfig",
                              "type": "object"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "description": "Container startup check configuration."
                        }
                      },
                      "title": "Container",
                      "type": "object"
                    },
                    "title": "Containers",
                    "type": "array"
                  },
                  "name": {
                    "default": "default",
                    "description": "Name of the container group. used as the lookup key for runtime overrides. lowercase letters, digits, and hyphens only; must start with a lowercase letter and end with a letter or digit; max 63 characters.",
                    "title": "Name",
                    "type": "string"
                  }
                },
                "title": "ContainerGroup",
                "type": "object"
              },
              "title": "Containergroups",
              "type": "array"
            }
          },
          "title": "MultiContainerArtifactSpec",
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "description": "Artifact specification."
    },
    "status": {
      "anyOf": [
        {
          "enum": [
            "draft",
            "locked"
          ],
          "title": "ArtifactStatus",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Artifact status."
    }
  },
  "title": "UpdateArtifactRequest",
  "type": "object"
}

UpdateArtifactRequest

Properties

Name Type Required Restrictions Description
description any false Description of the artifact.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
name any false Name of the artifact.

anyOf

Name Type Required Restrictions Description
» anonymous string false maxLength: 5000
minLength: 1
minLength: 1
none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
spec any false Artifact specification.

anyOf

Name Type Required Restrictions Description
» anonymous MultiContainerArtifactSpec false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
status any false Artifact status.

anyOf

Name Type Required Restrictions Description
» anonymous ArtifactStatus false none

or

Name Type Required Restrictions Description
» anonymous null false none

UserData

{
  "additionalProperties": false,
  "description": "User information embedded in API responses.",
  "properties": {
    "email": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "User email address.",
      "title": "Email"
    },
    "fullName": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "User's full name.",
      "title": "Full Name"
    },
    "id": {
      "description": "User id associated with this resource.",
      "title": "User ID",
      "type": "string"
    },
    "userhash": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "User's gravatar hash.",
      "title": "Userhash"
    },
    "username": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Username.",
      "title": "Username"
    }
  },
  "required": [
    "id"
  ],
  "title": "UserData",
  "type": "object"
}

UserData

Properties

Name Type Required Restrictions Description
email any false User email address.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
fullName any false User's full name.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
id string true User id associated with this resource.
userhash any false User's gravatar hash.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

continued

Name Type Required Restrictions Description
username any false Username.

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous null false none

ValidationError

{
  "properties": {
    "ctx": {
      "title": "Context",
      "type": "object"
    },
    "input": {
      "title": "Input"
    },
    "loc": {
      "items": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "integer"
          }
        ]
      },
      "title": "Location",
      "type": "array"
    },
    "msg": {
      "title": "Message",
      "type": "string"
    },
    "type": {
      "title": "Error Type",
      "type": "string"
    }
  },
  "required": [
    "loc",
    "msg",
    "type"
  ],
  "title": "ValidationError",
  "type": "object"
}

ValidationError

Properties

Name Type Required Restrictions Description
ctx object false none
input any false none
loc [anyOf] true none

anyOf

Name Type Required Restrictions Description
» anonymous string false none

or

Name Type Required Restrictions Description
» anonymous integer false none

continued

Name Type Required Restrictions Description
msg string true none
type string true none