For the complete documentation index, see llms.txt. This page is also available as Markdown.

Datavolumes

List datavolumes in permitted scopes

get

Get requested datavolumes.

Authorizations
AuthorizationstringRequired

Bearer authentication

Query parameters
requestTypestring · enumRequired

Which datavolumes to return in the GET datavolumes response. Originated - datavolumes that are originated in the permitted scopes of the caller. UsableInProject - datavolumes that can be used in a specific project; if you use this value, you must also provide the project ID in the "usableInProjectId" query param.

Example: OriginatedPossible values:
usableInProjectIdstringOptional

Only when using "UsableInProject" requestType; Filter results for only datavolumes that are shared with - or originated in - the project.

Example: 5
offsetinteger · int32Optional

The offset of the first item returned in the collection.

Example: 100
limitinteger · int32 · min: 1 · max: 500Optional

The maximum number of entries to return.

Default: 50
sortBystring · enumOptional

Sort results by a parameters.

Possible values:
sortOrderstring · enumOptional

Sort results in descending or ascending order.

Default: ascPossible values:
filterBystring[]Optional

Filter results by a parameter. Use the format field-name operator value. Operators are == Equals, != Not equals, <= Less than or equal, >= Greater than or equal, =@ contains, !@ Does not contains, =^ Starts with and =$ Ends with. Dates are in ISO 8601 timestamp format and available for operators ==, !=, <= and >=.

Example: ["name!=some-datavolume-name"]
Responses
200

Executed successfully.

application/json
nextintegerOptionalExample: 1
get/api/v1/datavolumes
GET /api/v1/datavolumes?requestType=Originated HTTP/1.1
Host: app.run.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "next": 1,
  "datavolumes": [
    {
      "id": "71f69d83-ba66-4822-adf5-55ce55efd210",
      "createdAt": "2026-01-01T00:00:00.000Z",
      "updatedAt": "2026-01-01T00:00:00.000Z",
      "createdBy": "user@run.ai",
      "updatedBy": "user@run.ai",
      "name": "datavolume-a",
      "description": "Results of experiment X",
      "originPvcName": "pvc-a",
      "projectId": "5",
      "shouldDeleteOriginalVolume": false,
      "projectName": "project-a",
      "departmentId": "department-a",
      "clusterId": "71f69d83-ba66-4822-adf5-55ce55efd210"
    },
    {
      "status": {
        "phase": "Ready",
        "phaseMessage": "Failed to copy pvc to project 'project-a'",
        "conditions": [
          {
            "type": "PvcsCreated",
            "status": "False",
            "message": "Failed to create pvc in namespace 'runai-proj1'",
            "reason": "ErrorCreatingPvc",
            "lastTransitionTime": "2022-01-01T03:49:52.531Z"
          }
        ],
        "datavolumePvcName": "datavolume-pvc-1",
        "datavolumePvName": "datavolume-pv-1"
      }
    }
  ]
}

Create a datavolume

post
Authorizations
AuthorizationstringRequired

Bearer authentication

Body
namestring · max: 63RequiredExample: datavolume-aPattern: ^[a-z][-a-z0-9]{0,62}$
descriptionstring · max: 127OptionalExample: Results of experiment X
originPvcNamestringRequired

The name of the PVC that the datavolume is based on

Example: pvc-a
projectIdstringRequired

The ID of the project that in its namespace the origin pvc is located

Example: 5
shouldDeleteOriginalVolumebooleanOptional

If true, the original storage volume will be deleted together with the datavolume

Default: falseExample: false
Responses
201

Created

application/json
idstring · uuidRequiredExample: 71f69d83-ba66-4822-adf5-55ce55efd210
createdAtstring · date-timeOptional
updatedAtstring · date-timeOptional
createdBystringOptionalExample: user@run.ai
updatedBystringOptionalExample: user@run.ai
namestring · max: 63RequiredExample: datavolume-aPattern: ^[a-z][-a-z0-9]{0,62}$
descriptionstring · max: 127OptionalExample: Results of experiment X
originPvcNamestringRequired

The name of the PVC that the datavolume is based on

Example: pvc-a
projectIdstringRequired

The ID of the project that in its namespace the origin pvc is located

Example: 5
shouldDeleteOriginalVolumebooleanOptional

If true, the original storage volume will be deleted together with the datavolume

Default: falseExample: false
projectNamestringRequiredExample: project-a
departmentIdstringOptionalExample: department-a
clusterIdstring · uuidOptional

The id of the cluster.

Example: 71f69d83-ba66-4822-adf5-55ce55efd210
post/api/v1/datavolumes
POST /api/v1/datavolumes HTTP/1.1
Host: app.run.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 138

{
  "name": "datavolume-a",
  "description": "Results of experiment X",
  "originPvcName": "pvc-a",
  "projectId": "5",
  "shouldDeleteOriginalVolume": false
}
{
  "id": "71f69d83-ba66-4822-adf5-55ce55efd210",
  "createdAt": "2026-01-01T00:00:00.000Z",
  "updatedAt": "2026-01-01T00:00:00.000Z",
  "createdBy": "user@run.ai",
  "updatedBy": "user@run.ai",
  "name": "datavolume-a",
  "description": "Results of experiment X",
  "originPvcName": "pvc-a",
  "projectId": "5",
  "shouldDeleteOriginalVolume": false,
  "projectName": "project-a",
  "departmentId": "department-a",
  "clusterId": "71f69d83-ba66-4822-adf5-55ce55efd210",
  "sharedScopes": [
    {
      "scopeType": "cluster",
      "scopeId": "a418ed33-9399-48c0-a890-122cadd13bfd",
      "scopeName": "project-a",
      "createdAt": "2026-01-01T00:00:00.000Z",
      "createdBy": "user@run.ai"
    }
  ],
  "status": {
    "phase": "Ready",
    "phaseMessage": "Failed to copy pvc to project 'project-a'",
    "conditions": [
      {
        "type": "PvcsCreated",
        "status": "False",
        "message": "Failed to create pvc in namespace 'runai-proj1'",
        "reason": "ErrorCreatingPvc",
        "lastTransitionTime": "2022-01-01T03:49:52.531Z"
      }
    ],
    "datavolumePvcName": "datavolume-pvc-1",
    "datavolumePvName": "datavolume-pv-1"
  }
}

Get datavolume

get
Authorizations
AuthorizationstringRequired

Bearer authentication

Path parameters
datavolumeIdstring · uuidRequired

The id of the datavolume to retrieve

Example: 71f69d83-ba66-4822-adf5-55ce55efd210
Responses
200

Executed successfully.

application/json
idstring · uuidRequiredExample: 71f69d83-ba66-4822-adf5-55ce55efd210
createdAtstring · date-timeOptional
updatedAtstring · date-timeOptional
createdBystringOptionalExample: user@run.ai
updatedBystringOptionalExample: user@run.ai
namestring · max: 63RequiredExample: datavolume-aPattern: ^[a-z][-a-z0-9]{0,62}$
descriptionstring · max: 127OptionalExample: Results of experiment X
originPvcNamestringRequired

The name of the PVC that the datavolume is based on

Example: pvc-a
projectIdstringRequired

The ID of the project that in its namespace the origin pvc is located

Example: 5
shouldDeleteOriginalVolumebooleanOptional

If true, the original storage volume will be deleted together with the datavolume

Default: falseExample: false
projectNamestringRequiredExample: project-a
departmentIdstringOptionalExample: department-a
clusterIdstring · uuidOptional

The id of the cluster.

Example: 71f69d83-ba66-4822-adf5-55ce55efd210
get/api/v1/datavolumes/{datavolumeId}
GET /api/v1/datavolumes/{datavolumeId} HTTP/1.1
Host: app.run.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "id": "71f69d83-ba66-4822-adf5-55ce55efd210",
  "createdAt": "2026-01-01T00:00:00.000Z",
  "updatedAt": "2026-01-01T00:00:00.000Z",
  "createdBy": "user@run.ai",
  "updatedBy": "user@run.ai",
  "name": "datavolume-a",
  "description": "Results of experiment X",
  "originPvcName": "pvc-a",
  "projectId": "5",
  "shouldDeleteOriginalVolume": false,
  "projectName": "project-a",
  "departmentId": "department-a",
  "clusterId": "71f69d83-ba66-4822-adf5-55ce55efd210",
  "sharedScopes": [
    {
      "scopeType": "cluster",
      "scopeId": "a418ed33-9399-48c0-a890-122cadd13bfd",
      "scopeName": "project-a",
      "createdAt": "2026-01-01T00:00:00.000Z",
      "createdBy": "user@run.ai"
    }
  ],
  "status": {
    "phase": "Ready",
    "phaseMessage": "Failed to copy pvc to project 'project-a'",
    "conditions": [
      {
        "type": "PvcsCreated",
        "status": "False",
        "message": "Failed to create pvc in namespace 'runai-proj1'",
        "reason": "ErrorCreatingPvc",
        "lastTransitionTime": "2022-01-01T03:49:52.531Z"
      }
    ],
    "datavolumePvcName": "datavolume-pvc-1",
    "datavolumePvName": "datavolume-pv-1"
  }
}

Delete datavolume

delete
Authorizations
AuthorizationstringRequired

Bearer authentication

Path parameters
datavolumeIdstring · uuidRequired

The id of the datavolume to retrieve

Example: 71f69d83-ba66-4822-adf5-55ce55efd210
Responses
202

Accepted.

application/json
codeinteger · min: 100 · max: 599Required
messagestringRequired
delete/api/v1/datavolumes/{datavolumeId}
DELETE /api/v1/datavolumes/{datavolumeId} HTTP/1.1
Host: app.run.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "code": 202,
  "message": "Request has been accepted."
}

Patch datavolume

patch
Authorizations
AuthorizationstringRequired

Bearer authentication

Path parameters
datavolumeIdstring · uuidRequired

The id of the datavolume to retrieve

Example: 71f69d83-ba66-4822-adf5-55ce55efd210
Body
descriptionstring · max: 127OptionalExample: Results of experiment X
Responses
200

Executed successfully.

application/json
idstring · uuidRequiredExample: 71f69d83-ba66-4822-adf5-55ce55efd210
createdAtstring · date-timeOptional
updatedAtstring · date-timeOptional
createdBystringOptionalExample: user@run.ai
updatedBystringOptionalExample: user@run.ai
namestring · max: 63RequiredExample: datavolume-aPattern: ^[a-z][-a-z0-9]{0,62}$
descriptionstring · max: 127OptionalExample: Results of experiment X
originPvcNamestringRequired

The name of the PVC that the datavolume is based on

Example: pvc-a
projectIdstringRequired

The ID of the project that in its namespace the origin pvc is located

Example: 5
shouldDeleteOriginalVolumebooleanOptional

If true, the original storage volume will be deleted together with the datavolume

Default: falseExample: false
projectNamestringRequiredExample: project-a
departmentIdstringOptionalExample: department-a
clusterIdstring · uuidOptional

The id of the cluster.

Example: 71f69d83-ba66-4822-adf5-55ce55efd210
patch/api/v1/datavolumes/{datavolumeId}
PATCH /api/v1/datavolumes/{datavolumeId} HTTP/1.1
Host: app.run.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 41

{
  "description": "Results of experiment X"
}
{
  "id": "71f69d83-ba66-4822-adf5-55ce55efd210",
  "createdAt": "2026-01-01T00:00:00.000Z",
  "updatedAt": "2026-01-01T00:00:00.000Z",
  "createdBy": "user@run.ai",
  "updatedBy": "user@run.ai",
  "name": "datavolume-a",
  "description": "Results of experiment X",
  "originPvcName": "pvc-a",
  "projectId": "5",
  "shouldDeleteOriginalVolume": false,
  "projectName": "project-a",
  "departmentId": "department-a",
  "clusterId": "71f69d83-ba66-4822-adf5-55ce55efd210",
  "status": {
    "phase": "Ready",
    "phaseMessage": "Failed to copy pvc to project 'project-a'",
    "conditions": [
      {
        "type": "PvcsCreated",
        "status": "False",
        "message": "Failed to create pvc in namespace 'runai-proj1'",
        "reason": "ErrorCreatingPvc",
        "lastTransitionTime": "2022-01-01T03:49:52.531Z"
      }
    ],
    "datavolumePvcName": "datavolume-pvc-1",
    "datavolumePvName": "datavolume-pv-1"
  }
}

Get the datavolume's shared scopes

get
Authorizations
AuthorizationstringRequired

Bearer authentication

Path parameters
datavolumeIdstring · uuidRequired

The id of the datavolume to retrieve

Example: 71f69d83-ba66-4822-adf5-55ce55efd210
Responses
200

Executed successfully.

application/json
scopeTypestring · enumRequiredPossible values:
scopeIdstringRequiredExample: a418ed33-9399-48c0-a890-122cadd13bfd
scopeNamestringRequired

The name of the scope

Example: project-a
createdAtstring · date-timeOptional
createdBystringOptionalExample: user@run.ai
get/api/v1/datavolumes/{datavolumeId}/sharedScopes
GET /api/v1/datavolumes/{datavolumeId}/sharedScopes HTTP/1.1
Host: app.run.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
  {
    "scopeType": "cluster",
    "scopeId": "a418ed33-9399-48c0-a890-122cadd13bfd",
    "scopeName": "project-a",
    "createdAt": "2026-01-01T00:00:00.000Z",
    "createdBy": "user@run.ai"
  }
]

Patch the datavolume's shared scopes

patch
Authorizations
AuthorizationstringRequired

Bearer authentication

Path parameters
datavolumeIdstring · uuidRequired

The id of the datavolume to retrieve

Example: 71f69d83-ba66-4822-adf5-55ce55efd210
Body
Responses
200

Executed successfully.

application/json
scopeTypestring · enumRequiredPossible values:
scopeIdstringRequiredExample: a418ed33-9399-48c0-a890-122cadd13bfd
scopeNamestringRequired

The name of the scope

Example: project-a
createdAtstring · date-timeOptional
createdBystringOptionalExample: user@run.ai
patch/api/v1/datavolumes/{datavolumeId}/sharedScopes
PATCH /api/v1/datavolumes/{datavolumeId}/sharedScopes HTTP/1.1
Host: app.run.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 166

{
  "add": [
    {
      "scopeType": "cluster",
      "scopeId": "a418ed33-9399-48c0-a890-122cadd13bfd"
    }
  ],
  "remove": [
    {
      "scopeType": "cluster",
      "scopeId": "a418ed33-9399-48c0-a890-122cadd13bfd"
    }
  ]
}
[
  {
    "scopeType": "cluster",
    "scopeId": "a418ed33-9399-48c0-a890-122cadd13bfd",
    "scopeName": "project-a",
    "createdAt": "2026-01-01T00:00:00.000Z",
    "createdBy": "user@run.ai"
  }
]

Last updated