Microservice responsible for managing Domino Volumes for NetApp ONTAP feature v1.0
Contact Information
Name: Domino Data Lab
URL: https://tickets.dominodatalab.com/hc/en-us
Email: support@dominodatalab.com
License
Name: Apache 2.0
URL: http://www.apache.org/licenses/LICENSE-2.0.html
GET /filesystems
Description: List all filesystems with optional filters and pagination
Consumes: application/json
Produces: application/json
Tags: filesystems
Summary: List filesystems
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| query | integer | Maximum number of results to return |
| query | integer | Starting index of the returned results |
| query | string | Sort direction (asc or desc) |
| query | string | Search term |
| query | string | Field name to sort by |
| query | array (string, multi) | Filter by one or more Data Plane IDs |
- Responses
-
200 - OK (Schema: #/definitions/server.PaginatedFilesystems)
400 - Bad Request (Schema: #/definitions/server.HTTPError)
403 - Forbidden (Schema: #/definitions/server.HTTPError)
404 - Not Found (Schema: #/definitions/server.HTTPError)
500 - Internal Server Error (Schema: #/definitions/server.HTTPError)
POST /filesystems
Description: Create a new filesystem
Consumes: application/json
Produces: application/json
Tags: filesystems
Summary: Create a new filesystem
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Filesystem to create (Schema: #/definitions/server.Filesystem) |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Filesystem)
400 - Bad Request (Schema: #/definitions/server.HTTPError)
403 - Forbidden (Schema: #/definitions/server.HTTPError)
404 - Not Found (Schema: #/definitions/server.HTTPError)
500 - Internal Server Error (Schema: #/definitions/server.HTTPError)
GET /filesystems/{id}
Description: Retrieve a filesystem by its ID
Consumes: application/json
Produces: application/json
Tags: filesystems
Summary: Get a filesystem by ID
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | ID of the filesystem to retrieve |
| query | boolean | Whether to include the data plane host name in the response |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Filesystem)
400 - Bad Request (Schema: #/definitions/server.HTTPError)
403 - Forbidden (Schema: #/definitions/server.HTTPError)
404 - Not Found (Schema: #/definitions/server.HTTPError)
500 - Internal Server Error (Schema: #/definitions/server.HTTPError)
PUT /filesystems/{id}
Description: Update an existing filesystem
Consumes: application/json
Produces: application/json
Tags: filesystems
Summary: Update filesystem
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | ID of the filesystem to update |
| body (required) | object | Updated filesystem data (Schema: #/definitions/server.Filesystem) |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Filesystem)
400 - Bad Request (Schema: #/definitions/server.HTTPError)
403 - Forbidden (Schema: #/definitions/server.HTTPError)
404 - Not Found (Schema: #/definitions/server.HTTPError)
500 - Internal Server Error (Schema: #/definitions/server.HTTPError)
DELETE /filesystems/{id}
Description: Delete a filesystem by ID
Consumes: application/json
Produces: application/json
Tags: filesystems
Summary: Delete a filesystem
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | ID of the filesystem to delete |
- Responses
-
204 - No Content
400 - Bad Request (Schema: #/definitions/server.HTTPError)
403 - Forbidden (Schema: #/definitions/server.HTTPError)
404 - Not Found (Schema: #/definitions/server.HTTPError)
500 - Internal Server Error (Schema: #/definitions/server.HTTPError)
GET /volumes
Description: List all volumes with optional filters and pagination
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: List volumes
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| query | integer | Maximum number of items to return |
| query | integer | Offset for pagination |
| query | string | Sort direction (asc or desc) |
| query | string | Field to sort by |
| query | string | Search term for volume name or ID |
| query | array (string, multi) | Filter by Data Plane ID(s) |
| query | array (string, multi) | Filter by Filesystem ID(s) |
| query | array (string, multi) | Filter by Project ID(s) |
| query | boolean | Whether to include volumes marked as deleted |
- Responses
-
200 - OK (Schema: #/definitions/server.PaginatedVolumes)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /volumes
Description: Create a new volume
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Create a volume
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Volume creation request (Schema: #/definitions/server.CreateVolumeRequest) |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Volume)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
GET /volumes/{id}
Description: Retrieve volume details by ID
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Get volume by ID
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | ID of the volume |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Volume)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
PATCH /volumes/{id}
Description: Update specific fields of a volume
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Patch volume
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | ID of the volume |
| body (required) | object | Patch request (Schema: #/definitions/server.PatchVolumeRequest) |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Volume)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
GET /volumes/{id}/grants
Description: Get user or project grants for a volume
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: List grants for a volume
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | ID of the volume |
- Responses
-
200 - OK (Schema: #/definitions/server.Grants)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
PUT /volumes/{id}/grants
Description: Replace grants for a volume
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Set grants for a volume
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | ID of the volume |
| body (required) | object | Grant request (Schema: #/definitions/server.SetGrantsRequest) |
- Responses
-
200 - OK (Schema: #/definitions/server.Grants)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/attach-volume-to-project
Description: Attach a volume to a project
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Attach volume to project
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Attach request (Schema: #/definitions/server.UpdateVolumeProject) |
- Responses
-
204 - No Content (Schema: #/definitions/remotefs.Volume)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/delete-volume
Description: Delete a volume by ID
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Delete volume
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Volume ID (Schema: #/definitions/server.VolumeIDRequest) |
- Responses
-
204 - No Content
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/get-volume-mounts
Description: Retrieve mounts for volumes and snapshots by project
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Get volume mounts
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Volume mount query (Schema: #/definitions/server.ListVolumeMountsRequest) |
- Responses
-
200 - OK (Schema: array of #/definitions/remotefs.VolumeMount)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/mark-volume-for-deletion
Description: Mark a volume for deletion
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Mark volume for deletion
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Volume ID (Schema: #/definitions/server.VolumeIDRequest) |
- Responses
-
204 - No Content (Schema: #/definitions/remotefs.Volume)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/detach-volume-from-project
Description: Detach a volume from a project
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Detach volume from project
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Detach request (Schema: #/definitions/server.UpdateVolumeProject) |
- Responses
-
204 - No Content (Schema: #/definitions/remotefs.Volume)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/restore-volume
Description: Restore a volume to active state
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Restore volume
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Volume ID (Schema: #/definitions/server.VolumeIDRequest) |
- Responses
-
204 - No Content (Schema: #/definitions/remotefs.Volume)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/check-is-over-limit
Description: Check whether requesting user is over their volume limit
Consumes: application/json
Produces: application/json
Tags: volumes
Summary: Check volume limit
- Responses
-
200 - OK (Schema: boolean)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
GET /snapshots
Description: List all snapshots with optional filters and pagination
Consumes: application/json
Produces: application/json
Tags: snapshots
Summary: List snapshots
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| query | integer | Maximum number of items to return |
| query | integer | Offset for pagination |
| query | string | Sort direction (asc or desc) |
| query | string | Field to sort by |
| query | string | Search term for snapshot name or ID |
| query | array (string, multi) | Filter by Volume ID(s) |
| query | array (string, multi) | Filter by Project ID(s) |
| query | boolean | Whether to include snapshots marked as deleted |
- Responses
-
200 - OK (Schema: #/definitions/server.PaginatedSnapshots)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /snapshots
Description: Create a snapshot
Consumes: application/json
Produces: application/json
Tags: snapshots
Summary: Create snapshot
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Snapshot creation request (Schema: #/definitions/server.CreateSnapshotRequest) |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Snapshot)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
GET /snapshots/{id}
Description: Retrieve snapshot details by ID
Consumes: application/json
Produces: application/json
Tags: snapshots
Summary: Get snapshot by ID
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | Snapshot ID |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Snapshot)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
PUT /snapshots/{id}
Description: Update a snapshot’s metadata
Consumes: application/json
Produces: application/json
Tags: snapshots
Summary: Update snapshot
- Parameters
Name | Location | Type | Description |
---|---|---|---|
id | path (required) | string | Snapshot ID |
| body (required) | object | Patch request (Schema: #/definitions/server.PatchSnapshotRequest) |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.Snapshot)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/delete-snapshot
Description: Delete a snapshot by ID
Consumes: application/json
Produces: application/json
Tags: snapshots
Summary: Delete snapshot
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Snapshot ID (Schema: #/definitions/server.SnapshotIDRequest) |
- Responses
-
204 - No Content
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /rpc/restore-snapshot
Description: Restore a snapshot to active state
Consumes: application/json
Produces: application/json
Tags: snapshots
Summary: Restore snapshot
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Snapshot ID (Schema: #/definitions/server.SnapshotIDRequest) |
- Responses
-
204 - No Content (Schema: #/definitions/remotefs.Snapshot)
400, 403, 404, 500 - Various errors (Schema: #/definitions/server.HTTPError)
POST /account/authz/permissions/authorizedactions
Description: Get all permissions for the requesting user with optional volume or project context
Consumes: application/json
Produces: application/json
Tags: authz
Summary: Get all authorized actions for the user
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Permission check input (Schema: #/definitions/server.PermissionRequest) |
- Responses
-
200 - OK (Schema: #/definitions/server.PermissionResponse)
400, 403, 404, 500 - #/definitions/server.HTTPError
POST /account/authz/permissions/volume/{id}
Description: Check if user has all provided permissions on a volume
Consumes: application/json
Produces: application/json
Tags: authz
Summary: Check volume permissions
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | Volume ID |
| body (required) | object | Permissions to check (Schema: #/definitions/server.VolumePermissionsRequest) |
- Responses
-
200 - OK (Schema: boolean)
400, 403, 404, 500 - #/definitions/server.HTTPError
POST /downloads
Description: Create a download task that generates an archive from given volume paths
Consumes: application/json
Produces: application/json
Tags: downloads
Summary: Create download archive
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| body (required) | object | Archive request (Schema: #/definitions/server.CreateDownloadArchiveRequest) |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.FiletaskTask)
400, 403, 404, 500 - #/definitions/server.HTTPError
GET /downloads/{id}
Description: Get status of a download archive task
Consumes: application/json
Produces: application/json
Tags: downloads
Summary: Check archive download status
- Parameters
Name | Location | Type | Description |
---|---|---|---|
| path (required) | string | Download task ID |
| query (required) | string | Volume ID of the download |
- Responses
-
200 - OK (Schema: #/definitions/remotefs.FiletaskTask)
400, 403, 404, 500 - #/definitions/server.HTTPError
remotefs.Volume
Type: object
Properties:
id: string
name: string
capacity: integer
dataPlaneId: string
filesystemId: string
projectId: string
status: remotefs.ResourceStatus
createdBy: remotefs.UserSummary
updatedBy: remotefs.UserSummary
createdAt: string
updatedAt: string
deletedAt: string (nullable)
grants: array of server.Grant