openapi: 3.0.0 info: title: AI Service Actions Storage API version: 1.0.0 contact: email: devel@keboola.com license: name: MIT url: https://opensource.org/licenses/MIT tags: - name: Storage paths: /v2/storage/branch/{branchId}/buckets/{bucketId}/metadata: get: operationId: get_/v2/storage/branch/{branchId}/buckets/{bucketId}/metadata::BucketMetadataAction parameters: - name: branchId in: path required: true schema: type: string - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/buckets/{bucketId}/metadata: get: operationId: get_/v2/storage/buckets/{bucketId}/metadata::BucketMetadataAction parameters: - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/buckets/{bucketId}/refresh-tables-info: post: operationId: post_/v2/storage/branch/{branchId}/buckets/{bucketId}/refresh-tables-info::RefreshTablesInformationAction parameters: - name: branchId in: path required: true schema: type: string - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/buckets/register: post: operationId: post_/v2/storage/branch/{branchId}/buckets/register::RegisterExistingBucketAction parameters: - name: branchId in: path required: true schema: type: string responses: default: description: '' tags: - Storage /v2/storage/buckets/register: post: operationId: post_/v2/storage/buckets/register::RegisterExistingBucketAction responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/buckets/{bucketId}/scheduled-tasks/refresh: post: operationId: post_/v2/storage/branch/{branchId}/buckets/{bucketId}/scheduled-tasks/refresh::ScheduleRefreshAction parameters: - name: branchId in: path required: true schema: type: string - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/ScheduleRefreshRequest' responses: default: description: '' tags: - Storage /v2/storage/buckets/{bucketId}/scheduled-tasks/refresh: post: operationId: post_/v2/storage/buckets/{bucketId}/scheduled-tasks/refresh::ScheduleRefreshAction parameters: - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/ScheduleRefreshRequest' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/buckets/{bucketId}/share: put: operationId: put_/v2/storage/branch/{branchId}/buckets/{bucketId}/share::BucketShareUpdateAction parameters: - name: branchId in: path required: true schema: type: string - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/buckets/{bucketId}/share: put: operationId: put_/v2/storage/buckets/{bucketId}/share::BucketShareUpdateAction parameters: - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/buckets/{bucketId}/share-to-projects: post: operationId: post_/v2/storage/branch/{branchId}/buckets/{bucketId}/share-to-projects::BucketShareToProjectsAction parameters: - name: branchId in: path required: true schema: type: string - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/buckets/{bucketId}/share-to-projects: post: operationId: post_/v2/storage/buckets/{bucketId}/share-to-projects::BucketShareToProjectsAction parameters: - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/buckets/{bucketId}/share-to-users: post: operationId: post_/v2/storage/branch/{branchId}/buckets/{bucketId}/share-to-users::BucketShareToUsersAction parameters: - name: branchId in: path required: true schema: type: string - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/buckets/{bucketId}/share-to-users: post: operationId: post_/v2/storage/buckets/{bucketId}/share-to-users::BucketShareToUsersAction parameters: - name: bucketId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/components: get: operationId: get_/v2/storage/branch/{branchId}/components::ComponentsListAction parameters: - name: branchId in: path required: true schema: type: string responses: default: description: '' tags: - Storage /v2/storage/components: get: operationId: get_/v2/storage/components::ComponentsListAction responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/components/{componentId}/configs/{configurationId}: delete: operationId: delete_/v2/storage/branch/{branchId}/components/{componentId}/configs/{configurationId}::ConfigurationDeleteAction parameters: - name: branchId in: path required: true schema: type: string - name: componentId in: path required: true schema: type: string pattern: '[^/]+' - name: configurationId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/components/{componentId}/configs/{configurationId}: delete: operationId: delete_/v2/storage/components/{componentId}/configs/{configurationId}::ConfigurationDeleteAction parameters: - name: componentId in: path required: true schema: type: string pattern: '[^/]+' - name: configurationId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/components/{componentId}/configs/{configurationId}/restore: post: operationId: post_/v2/storage/branch/{branchId}/components/{componentId}/configs/{configurationId}/restore::ConfigurationRestoreAction parameters: - name: branchId in: path required: true schema: type: string - name: componentId in: path required: true schema: type: string pattern: '[^/]+' - name: configurationId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/components/{componentId}/configs/{configurationId}/restore: post: operationId: post_/v2/storage/components/{componentId}/configs/{configurationId}/restore::ConfigurationRestoreAction parameters: - name: componentId in: path required: true schema: type: string pattern: '[^/]+' - name: configurationId in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/dev-branches/{id}: get: operationId: get_/v2/storage/dev-branches/{id}::DevBranchDetailAction parameters: - name: id in: path required: true schema: type: string pattern: '[0-9]+' responses: default: description: '' tags: - Storage put: operationId: put_/v2/storage/dev-branches/{id}::DevBranchUpdateAction parameters: - name: id in: path required: true schema: type: string pattern: \d+ requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/UpdateDevBranchRequest' responses: default: description: '' tags: - Storage delete: operationId: delete_/v2/storage/dev-branches/{id}::DevBranchDeleteAction parameters: - name: id in: path required: true schema: type: string pattern: \d+ responses: default: description: '' tags: - Storage /v2/storage/dev-branches/: post: operationId: post_/v2/storage/dev-branches/::DevBranchCreateAction responses: default: description: '' tags: - Storage /v2/storage/dev-branches: get: operationId: get_/v2/storage/dev-branches::DevBranchesListAction responses: default: description: '' tags: - Storage post: operationId: post_/v2/storage/dev-branches::DevBranchCreateAction responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/files/{fileId}/tags: post: operationId: post_/v2/storage/branch/{branchId}/files/{fileId}/tags::FileCreateTagAction parameters: - name: branchId in: path required: true schema: type: string - name: fileId in: path required: true schema: type: string pattern: \d+ requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/CreateTagRequest' responses: default: description: '' tags: - Storage /v2/storage/files/{fileId}/tags: post: operationId: post_/v2/storage/files/{fileId}/tags::FileCreateTagAction parameters: - name: fileId in: path required: true schema: type: string pattern: \d+ requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/CreateTagRequest' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/files/{fileId}: get: operationId: get_/v2/storage/branch/{branchId}/files/{fileId}::FileDetailAction parameters: - name: federationToken in: query required: false schema: type: boolean default: false - name: branchId in: path required: true schema: type: string - name: fileId in: path required: true schema: type: string pattern: \d+ responses: default: description: '' tags: - Storage /v2/storage/files/{fileId}: get: operationId: get_/v2/storage/files/{fileId}::FileDetailAction parameters: - name: federationToken in: query required: false schema: type: boolean default: false - name: fileId in: path required: true schema: type: string pattern: \d+ responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/files/{fileId}/tags/{tagName}: delete: operationId: delete_/v2/storage/branch/{branchId}/files/{fileId}/tags/{tagName}::FileDeleteTagAction parameters: - name: branchId in: path required: true schema: type: string - name: fileId in: path required: true schema: type: string pattern: \d+ - name: tagName in: path required: true schema: type: string pattern: .+ responses: default: description: '' tags: - Storage /v2/storage/files/{fileId}/tags/{tagName}: delete: operationId: delete_/v2/storage/files/{fileId}/tags/{tagName}::FileDeleteTagAction parameters: - name: fileId in: path required: true schema: type: string pattern: \d+ - name: tagName in: path required: true schema: type: string pattern: .+ responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/files: get: operationId: get_/v2/storage/branch/{branchId}/files::FileListAction parameters: - name: branchId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/ListFilesRequest' responses: default: description: '' tags: - Storage /v2/storage/files: get: operationId: get_/v2/storage/files::FileListAction requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/ListFilesRequest' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/files/prepare: post: operationId: post_/v2/storage/branch/{branchId}/files/prepare::FilePrepareAction parameters: - name: branchId in: path required: true schema: type: string responses: default: description: '' tags: - Storage /v2/storage/files/prepare: post: operationId: post_/v2/storage/files/prepare::FilePrepareAction responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/files/{fileId}/refresh: put: operationId: put_/v2/storage/branch/{branchId}/files/{fileId}/refresh::RefreshAction parameters: - name: branchId in: path required: true schema: type: string - name: fileId in: path required: true schema: type: string pattern: '[1-9][0-9]*' responses: default: description: '' tags: - Storage /v2/storage/files/{fileId}/refresh: put: operationId: put_/v2/storage/files/{fileId}/refresh::RefreshAction parameters: - name: fileId in: path required: true schema: type: string pattern: '[1-9][0-9]*' responses: default: description: '' tags: - Storage /v2/storage/global-search: get: operationId: get_/v2/storage/global-search::SearchAction responses: default: description: '' tags: - Storage /v2/storage/jobs/{jobId}: get: operationId: get_/v2/storage/jobs/{jobId}::JobDetailAction parameters: - name: jobId in: path required: true schema: type: string pattern: '[0-9]+' responses: default: description: '' tags: - Storage /v2/storage/scheduled-tasks/{taskId}: delete: operationId: delete_/v2/storage/scheduled-tasks/{taskId}::ScheduledTaskDeleteAction parameters: - name: taskId in: path required: true schema: type: string pattern: '[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}' responses: default: description: '' tags: - Storage /v2/storage/snapshots/{snapshotId}: get: operationId: get_/v2/storage/snapshots/{snapshotId}::SnapshotDetailAction parameters: - name: snapshotId in: path required: true schema: type: string pattern: '[0-9]+' responses: default: description: '' tags: - Storage delete: operationId: delete_/v2/storage/snapshots/{snapshotId}::SnapshotDeleteAction parameters: - name: snapshotId in: path required: true schema: type: string pattern: '[0-9]+' responses: default: description: '' tags: - Storage /v2/storage/stats: get: operationId: get_/v2/storage/stats::StatsListAction responses: default: description: '' tags: - Storage /v2/storage: get: tags: - Storage summary: Storage API index operationId: get_/v2/storage::StorageIndexAction responses: '200': description: Stack info including services, features, and components. /v2/storage/branch/{branchId}/tables/{id}/columns/{column}/definition: put: operationId: put_/v2/storage/branch/{branchId}/tables/{id}/columns/{column}/definition::DefinitionUpdateAction parameters: - name: branchId in: path required: true schema: type: string - name: id in: path required: true schema: type: string pattern: .+ - name: column in: path required: true schema: type: string pattern: .+ responses: default: description: '' tags: - Storage /v2/storage/tables/{id}/columns/{column}/definition: put: operationId: put_/v2/storage/tables/{id}/columns/{column}/definition::DefinitionUpdateAction parameters: - name: id in: path required: true schema: type: string pattern: .+ - name: column in: path required: true schema: type: string pattern: .+ responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/tables/{id}/rows: delete: operationId: delete_/v2/storage/branch/{branchId}/tables/{id}/rows::DeleteRowsAction parameters: - name: branchId in: path required: true schema: type: string - name: id in: path required: true schema: type: string pattern: .+ - name: X-KBC-Backend in: header schema: schema: BackendConfigurationRequest properties: context: type: string nullable: true minLength: 1 type: object responses: default: description: '' tags: - Storage /v2/storage/tables/{id}/rows: delete: operationId: delete_/v2/storage/tables/{id}/rows::DeleteRowsAction parameters: - name: id in: path required: true schema: type: string pattern: .+ - name: X-KBC-Backend in: header schema: schema: BackendConfigurationRequest properties: context: type: string nullable: true minLength: 1 type: object responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/tables/{id}/import-async: post: operationId: post_/v2/storage/branch/{branchId}/tables/{id}/import-async::ImportAsyncAction parameters: - name: branchId in: path required: true schema: type: string - name: id in: path required: true schema: type: string pattern: .+ - name: X-KBC-Backend in: header schema: schema: BackendConfigurationRequest properties: context: type: string nullable: true minLength: 1 type: object requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/ImportDataAsyncFromFileRequest' - $ref: '#/components/schemas/ImportDataAsyncFromWorkspaceRequest' responses: default: description: '' tags: - Storage /v2/storage/tables/{id}/import-async: post: operationId: post_/v2/storage/tables/{id}/import-async::ImportAsyncAction parameters: - name: id in: path required: true schema: type: string pattern: .+ - name: X-KBC-Backend in: header schema: schema: BackendConfigurationRequest properties: context: type: string nullable: true minLength: 1 type: object requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/ImportDataAsyncFromFileRequest' - $ref: '#/components/schemas/ImportDataAsyncFromWorkspaceRequest' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/tables/{tableId}/profile: post: operationId: post_/v2/storage/branch/{branchId}/tables/{tableId}/profile::ProfileCreateAction parameters: - name: branchId in: path required: true schema: type: string - name: tableId in: path required: true schema: type: string pattern: .+ responses: default: description: '' tags: - Storage /v2/storage/tables/{tableId}/profile: post: operationId: post_/v2/storage/tables/{tableId}/profile::ProfileCreateAction parameters: - name: tableId in: path required: true schema: type: string pattern: .+ responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/tables/{tableId}/profile/{uuid}: get: operationId: get_/v2/storage/branch/{branchId}/tables/{tableId}/profile/{uuid}::ProfileDetailAction parameters: - name: branchId in: path required: true schema: type: string - name: tableId in: path required: true schema: type: string pattern: .+ - name: uuid in: path required: true schema: type: string pattern: '[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|latest' responses: default: description: '' tags: - Storage /v2/storage/tables/{tableId}/profile/{uuid}: get: operationId: get_/v2/storage/tables/{tableId}/profile/{uuid}::ProfileDetailAction parameters: - name: tableId in: path required: true schema: type: string pattern: .+ - name: uuid in: path required: true schema: type: string pattern: '[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|latest' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/tables/{id}/pull: post: operationId: post_/v2/storage/branch/{branchId}/tables/{id}/pull::PullAction parameters: - name: branchId in: path required: true schema: type: string - name: id in: path required: true schema: type: string pattern: .+ responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/tables/{id}: delete: operationId: delete_/v2/storage/branch/{branchId}/tables/{id}::TableDeleteAction parameters: - name: force in: query required: false schema: type: boolean default: false - name: async in: query required: false schema: type: boolean default: false - name: branchId in: path required: true schema: type: string - name: id in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/tables/{id}: delete: operationId: delete_/v2/storage/tables/{id}::TableDeleteAction parameters: - name: force in: query required: false schema: type: boolean default: false - name: async in: query required: false schema: type: boolean default: false - name: id in: path required: true schema: type: string pattern: '[^/]+' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/tables: get: operationId: get_/v2/storage/branch/{branchId}/tables::TablesListAction parameters: - name: branchId in: path required: true schema: type: string responses: default: description: '' tags: - Storage /v2/storage/tables: get: operationId: get_/v2/storage/tables::TablesListAction responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/workspaces/{workspaceId}: delete: operationId: delete_/v2/storage/branch/{branchId}/workspaces/{workspaceId}::WorkspaceDeleteAction parameters: - name: async in: query required: false schema: type: boolean default: false - name: branchId in: path required: true schema: type: string - name: workspaceId in: path required: true schema: type: string pattern: '[0-9]+' - name: X-KBC-Backend in: header schema: schema: BackendConfigurationRequest properties: context: type: string nullable: true minLength: 1 type: object responses: default: description: '' tags: - Storage /v2/storage/workspaces/{workspaceId}: delete: operationId: delete_/v2/storage/workspaces/{workspaceId}::WorkspaceDeleteAction parameters: - name: async in: query required: false schema: type: boolean default: false - name: workspaceId in: path required: true schema: type: string pattern: '[0-9]+' - name: X-KBC-Backend in: header schema: schema: BackendConfigurationRequest properties: context: type: string nullable: true minLength: 1 type: object responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/workspaces/{workspaceId}/load: post: operationId: post_/v2/storage/branch/{branchId}/workspaces/{workspaceId}/load::WorkspaceLoadAction parameters: - name: branchId in: path required: true schema: type: string - name: workspaceId in: path required: true schema: type: string pattern: \d+ requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/BackendConfigurationRequest' responses: default: description: '' tags: - Storage /v2/storage/workspaces/{workspaceId}/load: post: operationId: post_/v2/storage/workspaces/{workspaceId}/load::WorkspaceLoadAction parameters: - name: workspaceId in: path required: true schema: type: string pattern: \d+ requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/BackendConfigurationRequest' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/workspaces/{workspaceId}/password: post: operationId: post_/v2/storage/branch/{branchId}/workspaces/{workspaceId}/password::WorkspacePasswordAction parameters: - name: branchId in: path required: true schema: type: string - name: workspaceId in: path required: true schema: type: string pattern: '[0-9]+' responses: default: description: '' tags: - Storage /v2/storage/workspaces/{workspaceId}/password: post: operationId: post_/v2/storage/workspaces/{workspaceId}/password::WorkspacePasswordAction parameters: - name: workspaceId in: path required: true schema: type: string pattern: '[0-9]+' responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/workspaces/{workspaceId}/saml2-login: get: operationId: get_/v2/storage/branch/{branchId}/workspaces/{workspaceId}/saml2-login::WorkspaceSsoInitializeAction parameters: - name: branchId in: path required: true schema: type: string - name: workspaceId in: path required: true schema: type: string pattern: \d+ responses: default: description: '' tags: - Storage /v2/storage/branch/{branchId}/workspaces/{workspaceId}/load-clone: post: operationId: post_/v2/storage/branch/{branchId}/workspaces/{workspaceId}/load-clone::WorkspacesLoadCloneAction parameters: - name: branchId in: path required: true schema: type: string - name: workspaceId in: path required: true schema: type: string pattern: '[0-9]+' requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/CloneLoadRequest' responses: default: description: '' tags: - Storage /v2/storage/workspaces/{workspaceId}/load-clone: post: operationId: post_/v2/storage/workspaces/{workspaceId}/load-clone::WorkspacesLoadCloneAction parameters: - name: workspaceId in: path required: true schema: type: string pattern: '[0-9]+' requestBody: required: true content: application/json: schema: oneOf: - $ref: '#/components/schemas/CloneLoadRequest' responses: default: description: '' tags: - Storage components: schemas: ScheduleRefreshRequest: type: object ListFilesRequest: type: object BackendConfigurationRequest: properties: context: type: string nullable: true minLength: 1 type: object ImportDataAsyncFromFileRequest: required: - dataFileId - treatValuesAsNull - columns - enclosure - delimiter - escapedBy properties: dataFileId: type: integer incremental: type: boolean default: false withoutHeaders: type: boolean default: false treatValuesAsNull: type: array items: type: string maxLength: 1 minLength: 0 columns: type: array items: type: string ignoredLinesCount: type: integer default: 0 enclosure: type: string delimiter: type: string escapedBy: type: string type: object ImportDataAsyncFromWorkspaceRequest: required: - dataWorkspaceId - dataObject - dataTableName - columns - enclosure - delimiter - escapedBy - deduplicationStrategy properties: dataWorkspaceId: type: integer dataObject: type: string dataTableName: type: string deprecated: true incremental: type: boolean default: false withoutHeaders: type: boolean default: false columns: type: array items: type: string enclosure: type: string delimiter: type: string escapedBy: type: string deduplicationStrategy: type: string enum: - insert - upsert type: object CreateTagRequest: type: object UpdateDevBranchRequest: type: object CloneLoadRequest: type: object securitySchemes: ApiKeyAuth: type: apiKey in: header name: X-StorageApi-Token