From f5d8e0ae1811bf0ee5982bee25f4a6ae8a3f220b Mon Sep 17 00:00:00 2001 From: Elizabeth Paige Harper Date: Thu, 16 May 2024 13:00:03 -0400 Subject: [PATCH] handle redirects and return http 424 for file download failures --- docs/vdi-api.html | 146 +++++++++--------- platform/build.gradle.kts | 8 +- service/rest-service/api.raml | 13 +- service/rest-service/build.gradle.kts | 1 - service/rest-service/schema/common.raml | 2 +- service/rest-service/schema/library.raml | 11 ++ .../service/vdi/generated/model/Error.java | 5 +- .../vdi/generated/model/ErrorType.java | 3 + .../model/FailedDependencyError.java | 28 ++++ .../model/FailedDependencyErrorImpl.java | 49 ++++++ .../model/FailedDependencyErrorStream.java | 23 +++ .../service/vdi/generated/model/readme.adoc | 7 + .../vdi/generated/model/x-DatasetPostMeta.kt | 19 +++ .../generated/model/x-DatasetPostRequest.kt | 5 + .../vdi/generated/model/x-DatasetPostType.kt | 5 + .../vdi/service/datasets/create-dataset.kt | 141 +++++++---------- .../org/veupathdb/service/vdi/util/http.kt | 82 ++++++++++ .../rest-service/src/main/resources/api.html | 146 +++++++++--------- 18 files changed, 460 insertions(+), 234 deletions(-) create mode 100644 service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyError.java create mode 100644 service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyErrorImpl.java create mode 100644 service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyErrorStream.java create mode 100644 service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/readme.adoc create mode 100644 service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/util/http.kt diff --git a/docs/vdi-api.html b/docs/vdi-api.html index 153dbf61..a93fca38 100644 --- a/docs/vdi-api.html +++ b/docs/vdi-api.html @@ -1222,7 +1222,7 @@ bindFilters(); }); -

VEuPathDB Dataset Installer v2.0.0

link

Resources

get /vdi-datasets

List Datasets  

Returns a list of datasets available to the requesting user, optionally filtered by query parameters.

Results are sorted by creation date in reverse order. This means the most recently created datasets will be first and the oldest dataset will be last in the list.

Parameters chevron_right expand_more

ParameterTypeDescription
Query
project_id Project IDstring

ID of the VEuPathDB project that results should be filtered to.

This means only datasets that are relevant to the project ID given will be returned.

Additionally, this controls the sites on which the dataset installation status will be checked. Meaning, if this parameter is specified and set to, for example, PlasmoDB, the status block in the response objects will only include installation status details for PlasmoDB and not any other sites that the dataset may have been installed into.

Inherits: string

ownership Dataset Ownership Filterstring

Ownership status filter.

Enum of:

  • any
  • owned
  • shared

If set to any the results are not filtered.

If set to owned, the results will be filtered to only results that are owned by the requesting user.

If set to shared, the results will be filtered to only results that are shared with the requesting user.

Default value: "any"

curl -X GET \
+		

VEuPathDB Dataset Installer v2.0.0

link

Resources

get /vdi-datasets

List Datasets  

Returns a list of datasets available to the requesting user, optionally filtered by query parameters.

Results are sorted by creation date in reverse order. This means the most recently created datasets will be first and the oldest dataset will be last in the list.

Parameters chevron_right expand_more

ParameterTypeDescription
Query
project_id Project IDstring

ID of the VEuPathDB project that results should be filtered to.

This means only datasets that are relevant to the project ID given will be returned.

Additionally, this controls the sites on which the dataset installation status will be checked. Meaning, if this parameter is specified and set to, for example, PlasmoDB, the status block in the response objects will only include installation status details for PlasmoDB and not any other sites that the dataset may have been installed into.

Inherits: string

ownership Dataset Ownership Filterstring

Ownership status filter.

Enum of:

  • any
  • owned
  • shared

If set to any the results are not filtered.

If set to owned, the results will be filtered to only results that are owned by the requesting user.

If set to shared, the results will be filtered to only results that are shared with the requesting user.

Default value: "any"

curl -X GET \
   undefined/vdi-datasets?ProjectID=<value>&ownership=<value>

200 OK chevron_right expand_more

Success.

This response means that all checks passed and zero or more dataset records were found for the requesting user.

application/json

application/json

ParameterTypeDescription
[] Dataset List Itemobject

Short entry with basic details about a dataset.

Inherits: object

[].datasetId* Dataset IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

[].owner* Owner Detailsobject

Details about the owner of a VDI dataset.

Inherits: lib.DatasetOwner

[].owner.userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].owner.firstName Owner First Namestring
[].owner.lastName Owner Last Namestring
[].owner.email Owner Emailstring
[].owner.organization Owner Organizationstring
[].datasetType* Dataset Typeobject

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

[].datasetType.name* Type Namestring
[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

[].datasetType.version* Type Versionstring
[].visibility* Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

[].name* Dataset Namestring

User provided name for the dataset.

[].summary Dataset Summarystring

User provided summary of the dataset.

[].description Dataset Descriptionstring

User provided description of the dataset.

[].sourceUrl Source URLstring

URL of the dataset data source, if the dataset was uploaded via URL.

[].origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

[].projectIds* Project IDsarray

Project IDs for projects the dataset record was submitted to.

[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status* Status Infoobject

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

[].status.installarray
[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].metaMessagestring
[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].dataMessagestring
[].shares* Shared Witharray
[].shares[]object

Inherits: object

[].shares[].userId*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].shares[].firstName*string
[].shares[].lastName*string
[].shares[].organization*string
[].shares[].accepted*boolean
[].fileCount* File Countinteger

Number of files uploaded for this dataset.

[].fileSizeTotal* File Size Totalinteger

Sum of the sizes of all the files uploaded for this dataset.

Format: int64

[].created* Creation Timestampdatetime

Timestamp of the creation of this dataset.

Response Body

[
   {
     "datasetId": "zaZqAAGLGJhBgg",
@@ -1274,13 +1274,13 @@
     "fileSizeTotal": 123456789,
     "created": "2023-10-31T23:59:59.999Z"
   }
-]

400 Bad Request chevron_right expand_more

Bad Request.

One or more request query parameters were not valid.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+]

400 Bad Request chevron_right expand_more

Bad Request.

One or more request query parameters were not valid.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1289,13 +1289,13 @@
   -d @file \
   undefined/vdi-datasets

Request Body chevron_right expand_more

Dataset Post Request DatasetPostRequest

multipart/form-data

HTTP POST request body requesting the creation of a dataset from the components included in the request.

For a request to be considered valid, it must contain exactly 1 of the optional parameters file or url. If a request body contains both a file and a url field value, the service will return a 400 error.

Inherits: object

ParameterTypeDescription
meta* Dataset Metaobject

Metadata about the dataset being submitted.

Inherits: lib.DatasetPostMeta

meta.datasetType* Dataset Typeobject

Type of the dataset that is being uploaded.

Inherits: lib.DatasetPostType

meta.datasetType.name*string
meta.datasetType.version*string
meta.name* Dataset Namestring

User provided name for the dataset.

meta.visibility Dataset Visibilitystring

Default value: "private"

Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

meta.summary Dataset Summarystring

User provided summary for the dataset.

meta.description Dataset Descriptionstring

User provided description for the dataset.

meta.origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

meta.projects* Project IDsarray

IDs of the projects this dataset is being submitted to.

meta.projects[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

meta.dependencies* Dataset Dependenciesarray
meta.dependencies[]object

Inherits: lib.DatasetDependency

meta.dependencies[].resourceIdentifier*string
meta.dependencies[].resourceDisplayName*string
meta.dependencies[].resourceVersion*string
meta.createdOn Creation Datedatetime-only
file Dataset Filefile

Dataset file to upload.

This field is incompatible with the url field.

url Dataset URLstring

URL to a dataset file to upload.

This field is incompatible with the file field.

200 OK chevron_right expand_more

Success

Dataset Upload Response DatasetPostResponse

application/json

Response object returned on successful upload of a dataset.

Note that this response does not mean the uploaded dataset has been made available on the target site(s). The upload must first be processed and installed into the target sites before the dataset will become available for use.

Inherits: object

ParameterTypeDescription
datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

Response Body

{
   "datasetId": "zaZqAAGLGJhBgg"
-}

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1306,7 +1306,7 @@
       ]
     }
   }
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1316,16 +1316,16 @@
   -d @file \
   undefined/admin/proxy-upload

Request Body chevron_right expand_more

Dataset Post Request DatasetPostRequest

multipart/form-data

multipart/form-data HTTP POST request to upload a new dataset.

Note, the body description below is of the multipart form data fields and not of a JSON object.

The meta field, however, is expected to be a JSON blob.

Inherits: object

ParameterTypeDescription
meta* Dataset Metaobject

Metadata about the dataset being submitted.

Inherits: lib.DatasetPostMeta

meta.datasetType* Dataset Typeobject

Type of the dataset that is being uploaded.

Inherits: lib.DatasetPostType

meta.datasetType.name*string
meta.datasetType.version*string
meta.name* Dataset Namestring

User provided name for the dataset.

meta.visibility Dataset Visibilitystring

Default value: "private"

Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

meta.summary Dataset Summarystring

User provided summary for the dataset.

meta.description Dataset Descriptionstring

User provided description for the dataset.

meta.origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

meta.projects* Project IDsarray

IDs of the projects this dataset is being submitted to.

meta.projects[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

meta.dependencies* Dataset Dependenciesarray
meta.dependencies[]object

Inherits: lib.DatasetDependency

meta.dependencies[].resourceIdentifier*string
meta.dependencies[].resourceDisplayName*string
meta.dependencies[].resourceVersion*string
meta.createdOn Creation Datedatetime-only
file Dataset Filefile

Dataset file to upload.

This field is incompatible with the url field.

url Dataset URLstring

URL to a dataset file to upload.

This field is incompatible with the file field.

200 OK chevron_right expand_more

Success

Dataset Upload Response DatasetPostResponse

application/json

Response object returned on successful upload of a dataset.

Note that this response does not mean the uploaded dataset has been made available on the target site(s). The upload must first be processed and installed into the target sites before the dataset will become available for use.

Inherits: object

ParameterTypeDescription
datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

Response Body

{
   "datasetId": "zaZqAAGLGJhBgg"
-}

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

403 Forbidden chevron_right expand_more

Forbidden

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Forbidden

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "forbidden",
   "message": "Target user does not exist."
-}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1336,16 +1336,16 @@
       ]
     }
   }
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /admin/failed-imports

List  

Lists datasets that failed to import.

Parameters chevron_right expand_more

ParameterTypeDescription
Query
user VEuPathDB User IDinteger

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

beforestring

Filter results to only those records created before the given date-time value.

Examples:

  • 2023
  • 2023-10
  • 2023-10-02
  • 2023-10-02T17:10
  • 2023-10-02T17:10:00
  • 2023-10-02T17:10:00.000
  • 2023-10-02T17:10:00.000Z

If no timezone is provided, the service will assume its local zone.

afterstring

Filter results to only those records created after the given date-time value.

Examples:

  • 2023
  • 2023-10
  • 2023-10-02
  • 2023-10-02T17:10
  • 2023-10-02T17:10:00
  • 2023-10-02T17:10:00.000
  • 2023-10-02T17:10:00.000Z

If no timezone is provided, the service will assume its local zone.

limitinteger

Max. value: 250

Default value: 100

offsetinteger
sortstring

One of:

  • date

Default value: "date"

orderstring

One of:

  • asc
  • desc

Default value: "desc"

curl -X GET \
   undefined/admin/failed-imports?User-ID=<value>&before=<value>&after=<value>&limit=<value>&offset=<value>&sort=<value>&order=<value>

200 OK chevron_right expand_more

Broken Import Listing BrokenImportListing

application/json

Inherits: object

ParameterTypeDescription
meta*object

Inherits: lib.BrokenImportListingMeta

meta.count*integer
meta.beforestring
meta.afterstring
meta.userinteger

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

meta.limitinteger
meta.offsetinteger
results*array
results[] Broken Import Detailsobject

Inherits: lib.BrokenImportDetails

results[].datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

results[].owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

results[].datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

results[].datasetType.name* Type Namestring
results[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

results[].datasetType.version* Type Versionstring
results[].projectIds*array
results[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

results[].messages*array
results[].messages[]string

get /admin/list-broken

List Broken Installs  

Lists datasets that failed installation due to non-user error.

Parameters chevron_right expand_more

ParameterTypeDescription
Query
expanded Expanded Dataset Listboolean

Whether the returned broken dataset install list should be expanded to include additional details about each dataset or should be just a simple list of dataset IDs.

Default value: true

curl -X GET \
-  undefined/admin/list-broken?expanded=<value>

200 OK chevron_right expand_more

Success.

Broken dataset install list successfully generated.

Broken Dataset Listing BrokenDatasetListing

application/json

Inherits: object

ParameterTypeDescription
detailsarray
details[] Broken Dataset Detailsobject

Inherits: lib.BrokenDatasetDetails

details[].datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

details[].owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

details[].datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

details[].datasetType.name* Type Namestring
details[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

details[].datasetType.version* Type Versionstring
details[].projectIds*array
details[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

details[].status*object

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

details[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

details[].status.installarray
details[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

details[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

details[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

details[].status.install[].metaMessagestring
details[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

details[].status.install[].dataMessagestring
idsarray
ids[] VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/admin/list-broken?expanded=<value>

200 OK chevron_right expand_more

Success.

Broken dataset install list successfully generated.

Broken Dataset Listing BrokenDatasetListing

application/json

Inherits: object

ParameterTypeDescription
detailsarray
details[] Broken Dataset Detailsobject

Inherits: lib.BrokenDatasetDetails

details[].datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

details[].owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

details[].datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

details[].datasetType.name* Type Namestring
details[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

details[].datasetType.version* Type Versionstring
details[].projectIds*array
details[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

details[].status*object

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

details[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

details[].status.installarray
details[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

details[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

details[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

details[].status.install[].metaMessagestring
details[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

details[].status.install[].dataMessagestring
idsarray
ids[] VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1361,34 +1361,34 @@
       "projectId": "PlasmoDB"
     }
   ]
-}

204 No Content chevron_right expand_more

Success.

Dataset install cleanup process completed successfully.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

204 No Content chevron_right expand_more

Success.

Dataset install cleanup process completed successfully.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

post /admin/delete-cleanup

Run Deleted Dataset Cleanup  

Permanently delete jobs that were soft deleted more than 24 hours prior to the execution of this task.

curl -X POST \
-  undefined/admin/delete-cleanup

204 No Content chevron_right expand_more

Action completed successfully.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/admin/delete-cleanup

204 No Content chevron_right expand_more

Action completed successfully.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /admin/dataset-details

 

Parameters chevron_right expand_more

ParameterTypeDescription
Query
datasetId*string
curl -X GET \
   undefined/admin/dataset-details?datasetId=<value>

200 OK chevron_right expand_more

InternalDatasetDetails InternalDatasetDetails

application/json

Inherits: object

ParameterTypeDescription
datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

datasetType.name* Type Namestring
datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

datasetType.version* Type Versionstring
owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

isDeleted*boolean
origin*string
created*datetime
inserted*datetime
name*string
summarystring
descriptionstring
visibility*string
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

sourceUrlstring
projectIds*array
projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

status*string
syncControlobject

Inherits: object

syncControl.sharesUpdateTime*datetime
syncControl.dataUpdateTime*datetime
syncControl.metaUpdateTime*datetime
uploadFilesarray
uploadFiles[]string
installFilesarray
installFiles[]string
importMessages*array
importMessages[]string

get /admin/list-s3-objects

 

200 OK chevron_right expand_more

text/plain

text/plain

get /admin/list-all-datasets

 

Parameters chevron_right expand_more

ParameterTypeDescription
Query
offsetinteger
limitinteger

Min. value: 1

Default value: 100

project_idstring

Optionally filter the results to only datasets that target the given project ID.

include_deletedboolean
curl -X GET \
   undefined/admin/list-all-datasets?offset=<value>&limit=<value>&project_id=<value>&include_deleted=<value>

200 OK chevron_right expand_more

All Datasets Listing Response AllDatasetsListResponse

application/json

Inherits: object

ParameterTypeDescription
meta*object

Inherits: lib.AllDatasetsListMeta

meta.count*integer
meta.offset*integer
meta.limit*integer
meta.total*integer
results*array
results[]object

Inherits: lib.AllDatasetsListEntry

results[].datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

results[].owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

results[].datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

results[].datasetType.name* Type Namestring
results[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

results[].datasetType.version* Type Versionstring
results[].visibility*string
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

results[].name*string
results[].summarystring
results[].descriptionstring
results[].sourceUrlstring
results[].origin*string
results[].projectIds*array
results[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

results[].status*object

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

results[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

results[].status.installarray
results[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

results[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

results[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

results[].status.install[].metaMessagestring
results[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

results[].status.install[].dataMessagestring
results[].created*datetime
results[].isDeleted*boolean

get /vdi-datasets/community

List Community Datasets  

Returns a list of datasets that have been made "public" by the owner setting the dataset visibilities to a setting other than private.

curl -X GET \
-  undefined/vdi-datasets/community

200 OK chevron_right expand_more

Success

application/json

application/json

ParameterTypeDescription
[] Dataset List Itemobject

Short entry with basic details about a dataset.

Inherits: object

[].datasetId* Dataset IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

[].owner* Owner Detailsobject

Details about the owner of a VDI dataset.

Inherits: lib.DatasetOwner

[].owner.userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].owner.firstName Owner First Namestring
[].owner.lastName Owner Last Namestring
[].owner.email Owner Emailstring
[].owner.organization Owner Organizationstring
[].datasetType* Dataset Typeobject

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

[].datasetType.name* Type Namestring
[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

[].datasetType.version* Type Versionstring
[].visibility* Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

[].name* Dataset Namestring

User provided name for the dataset.

[].summary Dataset Summarystring

User provided summary of the dataset.

[].description Dataset Descriptionstring

User provided description of the dataset.

[].sourceUrl Source URLstring

URL of the dataset data source, if the dataset was uploaded via URL.

[].origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

[].projectIds* Project IDsarray

Project IDs for projects the dataset record was submitted to.

[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status* Status Infoobject

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

[].status.installarray
[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].metaMessagestring
[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].dataMessagestring
[].shares* Shared Witharray
[].shares[]object

Inherits: object

[].shares[].userId*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].shares[].firstName*string
[].shares[].lastName*string
[].shares[].organization*string
[].shares[].accepted*boolean
[].fileCount* File Countinteger

Number of files uploaded for this dataset.

[].fileSizeTotal* File Size Totalinteger

Sum of the sizes of all the files uploaded for this dataset.

Format: int64

[].created* Creation Timestampdatetime

Timestamp of the creation of this dataset.

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/community

200 OK chevron_right expand_more

Success

application/json

application/json

ParameterTypeDescription
[] Dataset List Itemobject

Short entry with basic details about a dataset.

Inherits: object

[].datasetId* Dataset IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

[].owner* Owner Detailsobject

Details about the owner of a VDI dataset.

Inherits: lib.DatasetOwner

[].owner.userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].owner.firstName Owner First Namestring
[].owner.lastName Owner Last Namestring
[].owner.email Owner Emailstring
[].owner.organization Owner Organizationstring
[].datasetType* Dataset Typeobject

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

[].datasetType.name* Type Namestring
[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

[].datasetType.version* Type Versionstring
[].visibility* Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

[].name* Dataset Namestring

User provided name for the dataset.

[].summary Dataset Summarystring

User provided summary of the dataset.

[].description Dataset Descriptionstring

User provided description of the dataset.

[].sourceUrl Source URLstring

URL of the dataset data source, if the dataset was uploaded via URL.

[].origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

[].projectIds* Project IDsarray

Project IDs for projects the dataset record was submitted to.

[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status* Status Infoobject

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

[].status.installarray
[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].metaMessagestring
[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].dataMessagestring
[].shares* Shared Witharray
[].shares[]object

Inherits: object

[].shares[].userId*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].shares[].firstName*string
[].shares[].lastName*string
[].shares[].organization*string
[].shares[].accepted*boolean
[].fileCount* File Countinteger

Number of files uploaded for this dataset.

[].fileSizeTotal* File Size Totalinteger

Sum of the sizes of all the files uploaded for this dataset.

Format: int64

[].created* Creation Timestampdatetime

Timestamp of the creation of this dataset.

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1442,13 +1442,13 @@
       "resourceVersion": "1.0"
     }
   ]
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

404 Not Found chevron_right expand_more

Target dataset was not located or is not visible to the requesting user.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Target dataset was not located or is not visible to the requesting user.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1459,19 +1459,19 @@
   "name": "My Dataset",
   "summary": "A short summary of my dataset.",
   "description": "A longer description of my dataset."
-}

204 No Content chevron_right expand_more

Target dataset metadata was updated.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

204 No Content chevron_right expand_more

Target dataset metadata was updated.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

403 Forbidden chevron_right expand_more

Action Forbidden.

Target dataset is not owned by the requesting user.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Action Forbidden.

Target dataset is not owned by the requesting user.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "forbidden",
   "message": "the current user is not permitted to perform this action"
-}

404 Not Found chevron_right expand_more

Target dataset was not found.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Target dataset was not found.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1482,54 +1482,54 @@
       ]
     }
   }
-}

425 chevron_right expand_more

Too Early.

Patch request was submitted before the dataset data was written to the dataset store.

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

425 chevron_right expand_more

Too Early.

Patch request was submitted before the dataset data was written to the dataset store.

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

delete /vdi-datasets/{vd-id}

Delete Dataset  

Marks the target dataset as deleted.

Datasets that have been marked as deleted are still recoverable for a short period of time before they are permanently deleted from the system.

Parameters chevron_right expand_more

ParameterTypeDescription
Path
vd-id* VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

curl -X DELETE \
-  undefined/vdi-datasets/{vd-id}

204 No Content chevron_right expand_more

Target dataset was marked as deleted.

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/{vd-id}

204 No Content chevron_right expand_more

Target dataset was marked as deleted.

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

403 Forbidden chevron_right expand_more

Action Forbidden.

Target dataset is not owned by the requesting user.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Action Forbidden.

Target dataset is not owned by the requesting user.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "forbidden",
   "message": "the current user is not permitted to perform this action"
-}

404 Not Found chevron_right expand_more

Target dataset was not located.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Target dataset was not located.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /vdi-datasets/{vd-id}/files

List Files  

Lists the dataset zip files for the original user upload as well as the install files (when available).

If this endpoint is hit before the dataset has been imported, the upload zip size will be -1 which may be used as an indicator to clients that the zip size cannot yet be shown.

Parameters chevron_right expand_more

ParameterTypeDescription
Path
vd-id* VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

curl -X GET \
-  undefined/vdi-datasets/{vd-id}/files

200 OK chevron_right expand_more

Success

Dataset File Listing DatasetFileListing

application/json

Inherits: object

ParameterTypeDescription
upload*object

Inherits: lib.DatasetZipDetails

upload.zipSize*integer

Format: int64

upload.contents*array
upload.contents[] Dataset File Detailsobject

Inherits: lib.DatasetFileDetails

upload.contents[].fileName* File Namestring
upload.contents[].fileSize* File Sizeinteger

Size of the file in bytes.

Format: int64

installobject

Inherits: lib.DatasetZipDetails

install.zipSize*integer

Format: int64

install.contents*array
install.contents[] Dataset File Detailsobject

Inherits: lib.DatasetFileDetails

install.contents[].fileName* File Namestring
install.contents[].fileSize* File Sizeinteger

Size of the file in bytes.

Format: int64

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/{vd-id}/files

200 OK chevron_right expand_more

Success

Dataset File Listing DatasetFileListing

application/json

Inherits: object

ParameterTypeDescription
upload*object

Inherits: lib.DatasetZipDetails

upload.zipSize*integer

Format: int64

upload.contents*array
upload.contents[] Dataset File Detailsobject

Inherits: lib.DatasetFileDetails

upload.contents[].fileName* File Namestring
upload.contents[].fileSize* File Sizeinteger

Size of the file in bytes.

Format: int64

installobject

Inherits: lib.DatasetZipDetails

install.zipSize*integer

Format: int64

install.contents*array
install.contents[] Dataset File Detailsobject

Inherits: lib.DatasetFileDetails

install.contents[].fileName* File Namestring
install.contents[].fileSize* File Sizeinteger

Size of the file in bytes.

Format: int64

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /vdi-datasets/{vd-id}/files/upload

Get Upload Zip File  

Returns a zip file containing the contents of the original upload to the dataset importer.

Parameters chevron_right expand_more

ParameterTypeDescription
Path
vd-id* VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

curl -X GET \
-  undefined/vdi-datasets/{vd-id}/files/upload

200 OK chevron_right expand_more

Success

Headers

ParameterTypeDescription
Content-Disposition*string

application/octet-stream

application/octet-stream

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/{vd-id}/files/upload

200 OK chevron_right expand_more

Success

Headers

ParameterTypeDescription
Content-Disposition*string

application/octet-stream

application/octet-stream

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /vdi-datasets/{vd-id}/files/data

Get Data File  

Parameters chevron_right expand_more

ParameterTypeDescription
Path
vd-id* VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

curl -X GET \
-  undefined/vdi-datasets/{vd-id}/files/data

200 OK chevron_right expand_more

Success

Headers

ParameterTypeDescription
Content-Disposition*string

application/octet-stream

application/octet-stream

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/{vd-id}/files/data

200 OK chevron_right expand_more

Success

Headers

ParameterTypeDescription
Content-Disposition*string

application/octet-stream

application/octet-stream

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1540,16 +1540,16 @@
   "action": "grant"
 }

Revoke Example

{
   "action": "revoke"
-}

204 No Content chevron_right expand_more

Share offer record was successfully (re)placed.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

204 No Content chevron_right expand_more

Share offer record was successfully (re)placed.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "malformed JSON"
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

403 Forbidden chevron_right expand_more

Action Forbidden.

This status is returned when the dataset target of the operation is not owned by the requesting user, thus the requesting user is forbidden from offering shares to the dataset.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Action Forbidden.

This status is returned when the dataset target of the operation is not owned by the requesting user, thus the requesting user is forbidden from offering shares to the dataset.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "forbidden",
   "message": "the current user is not permitted to perform this action"
-}

404 Not Found chevron_right expand_more

Not Found.

Either the target dataset or target user was not found.

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

404 Not Found chevron_right expand_more

Not Found.

Either the target dataset or target user was not found.

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1560,7 +1560,7 @@
       ]
     }
   }
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1571,16 +1571,16 @@
   "action": "accept"
 }

Reject Example

{
   "action": "reject"
-}

204 No Content chevron_right expand_more

Share offer receipt record was successfully created.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

204 No Content chevron_right expand_more

Share offer receipt record was successfully created.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "malformed JSON"
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

403 Forbidden chevron_right expand_more

Action Forbidden.

This status is returned when the requesting user is not the target user and/or the target user was not offered a share for the target dataset.

404 Not Found chevron_right expand_more

Not Found.

This status is returned when the target dataset does not exist.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Action Forbidden.

This status is returned when the requesting user is not the target user and/or the target user was not offered a share for the target dataset.

404 Not Found chevron_right expand_more

Not Found.

This status is returned when the target dataset does not exist.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1591,7 +1591,7 @@
       ]
     }
   }
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1616,13 +1616,13 @@
       "ToxoDB"
     ]
   }
-]

400 Bad Request chevron_right expand_more

Bad Request.

This response is returned when the status query parameter was provided but was an invalid value.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+]

400 Bad Request chevron_right expand_more

Bad Request.

This response is returned when the status query parameter was provided but was an invalid value.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "malformed JSON"
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This response is returned when the request either contained an invalid user authorization token, or did not contain a user authorization token at all.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This response is returned when the request either contained an invalid user authorization token, or did not contain a user authorization token at all.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This response is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This response is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1648,18 +1648,18 @@
       "VectorBase"
     ]
   }
-]

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+]

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /vdi-users/self/meta

 

Get user metadata.

curl -X GET \
-  undefined/vdi-users/self/meta

200 OK chevron_right expand_more

Success

UserMetadata UserMetadata

application/json

Inherits: object

ParameterTypeDescription
quota*object

Inherits: lib.UserQuotaDetails

quota.limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

quota.usage*integer

Current number of bytes counted against the user's quota.

Format: int64

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-users/self/meta

200 OK chevron_right expand_more

Success

UserMetadata UserMetadata

application/json

Inherits: object

ParameterTypeDescription
quota*object

Inherits: lib.UserQuotaDetails

quota.limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

quota.usage*integer

Current number of bytes counted against the user's quota.

Format: int64

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1682,28 +1682,28 @@
 }

Type ShareOfferRecipient (object)

Share Offer Recipient

I AM A UNION!

Inherits: object

Model

ParameterTypeDescription
userId* User IDinteger

Format: int64

firstName First Namestring
lastName Last Namestring
organization Organizationstring
email Emailstring

Examples

{
   "userId": 123456,
   "email": "myusername@someuniversity.edu"
-}

Type DatasetPatchRequest (object)

Dataset Patch Request

Request to update the metadata for a dataset.

Inherits: object

Model

ParameterTypeDescription
visibility Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

name Dataset Namestring

User provided name for a dataset.

summary Dataset Summarystring

User provided summary for a dataset.

description Dataset Descriptionstring

User provided description for a dataset.

Type DatasetShareOffer (object)

Dataset Share Offer

An offer to share (or un-share) a dataset with a single target user.

Inherits: object

Model

ParameterTypeDescription
action* Offer Actionstring

What action to take with the dataset share offer.

Either grant or revoke.

A value of grant means the share should be offered to the user if they do not already have the dataset, or continue to be allowed if they already have access to the dataset.

A value of revoke means the share should not be offered to the target user if they do not already have the dataset, or the sharing should be stopped if the user did already have access to the dataset.

Enum:
  • grant
  • revoke

Inherits: lib.ShareOfferAction

Type DatasetShareReceipt (object)

Dataset Share Receipt

A receipt or response to a share offer of a dataset to a single user.

Inherits: object

Model

ParameterTypeDescription
action* Acknowledgement Actionstring

What action to take with acknowledging a dataset share offer.

Either accept or reject.

A value of accept means that the dataset that a share was offered for should become available to the accepting user.

A value of reject means that the dataset that a share was offered for should become unavailable to the rejecting user.

Enum:
  • accept
  • reject

Inherits: lib.ShareReceiptAction

Type PluginListItem (object)

Plugin Listing Entry

Inherits: object

Model

ParameterTypeDescription
displayName* Plugin Display Namestring
typeName* Dataset Type Namestring
typeVersion* Dataset Type Versionstring
projects Relevant Projectsarray

Projects that this plugin is restricted to. An empty or absent list indicates that the plugin has no project restrictions and may be used on any site.

projects[]string

Type UserMetadata (object)

UserMetadata

Inherits: object

Model

ParameterTypeDescription
quota*object

Inherits: lib.UserQuotaDetails

quota.limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

quota.usage*integer

Current number of bytes counted against the user's quota.

Format: int64

Type UserQuotaDetails (object)

UserQuotaDetails

Inherits: object

Model

ParameterTypeDescription
limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

usage*integer

Current number of bytes counted against the user's quota.

Format: int64

Type VDI-ID (string)

VDI ID

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

Type User-ID (integer)

VEuPathDB User ID

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

Type ProjectID (string)

Project ID

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

Type DatasetOwner (object)

Dataset Owner

Details about the owner of a VDI dataset.

Inherits: object

Model

ParameterTypeDescription
userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

firstName Owner First Namestring
lastName Owner Last Namestring
email Owner Emailstring
organization Owner Organizationstring

Type DatasetTypeInfo (object)

Dataset Type Info

Information about a specific dataset type.

Inherits: object

Model

ParameterTypeDescription
name* Type Namestring
displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

version* Type Versionstring

Type ShareOfferAction (string)

ShareOfferAction
Enum:
  • grant
  • revoke

Inherits: string

Type ShareReceiptAction (string)

ShareReceiptAction
Enum:
  • accept
  • reject

Inherits: string

Type DatasetVisibility (string)

DatasetVisibility
Enum:
  • private
  • protected
  • public

Inherits: string

Type DatasetStatusInfo (object)

Dataset Status Info

Information about the import and install status of a dataset.

Inherits: object

Model

ParameterTypeDescription
import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

installarray
install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

install[].metaMessagestring
install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

install[].dataMessagestring

Type DatasetImportStatus (string)

Dataset Import Status

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: string

Type DatasetInstallStatus (string)

Dataset Install Status
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

Type DatasetInstallStatusEntry (object)

Dataset Install Status Entry

Entry in a list of install statuses for a dataset.

Inherits: object

Model

ParameterTypeDescription
projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

metaMessagestring
dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

dataMessagestring

Type DatasetDependency (object)

DatasetDependency

Inherits: object

Model

ParameterTypeDescription
resourceIdentifier*string
resourceDisplayName*string
resourceVersion*string

Type Error (object)

Error

Discriminator: status

Inherits: object

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Type ErrorType (string)

ErrorType
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: string

Type BadRequestError (object)

Bad Request

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type DatasetPatchRequest (object)

Dataset Patch Request

Request to update the metadata for a dataset.

Inherits: object

Model

ParameterTypeDescription
visibility Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

name Dataset Namestring

User provided name for a dataset.

summary Dataset Summarystring

User provided summary for a dataset.

description Dataset Descriptionstring

User provided description for a dataset.

Type DatasetShareOffer (object)

Dataset Share Offer

An offer to share (or un-share) a dataset with a single target user.

Inherits: object

Model

ParameterTypeDescription
action* Offer Actionstring

What action to take with the dataset share offer.

Either grant or revoke.

A value of grant means the share should be offered to the user if they do not already have the dataset, or continue to be allowed if they already have access to the dataset.

A value of revoke means the share should not be offered to the target user if they do not already have the dataset, or the sharing should be stopped if the user did already have access to the dataset.

Enum:
  • grant
  • revoke

Inherits: lib.ShareOfferAction

Type DatasetShareReceipt (object)

Dataset Share Receipt

A receipt or response to a share offer of a dataset to a single user.

Inherits: object

Model

ParameterTypeDescription
action* Acknowledgement Actionstring

What action to take with acknowledging a dataset share offer.

Either accept or reject.

A value of accept means that the dataset that a share was offered for should become available to the accepting user.

A value of reject means that the dataset that a share was offered for should become unavailable to the rejecting user.

Enum:
  • accept
  • reject

Inherits: lib.ShareReceiptAction

Type PluginListItem (object)

Plugin Listing Entry

Inherits: object

Model

ParameterTypeDescription
displayName* Plugin Display Namestring
typeName* Dataset Type Namestring
typeVersion* Dataset Type Versionstring
projects Relevant Projectsarray

Projects that this plugin is restricted to. An empty or absent list indicates that the plugin has no project restrictions and may be used on any site.

projects[]string

Type UserMetadata (object)

UserMetadata

Inherits: object

Model

ParameterTypeDescription
quota*object

Inherits: lib.UserQuotaDetails

quota.limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

quota.usage*integer

Current number of bytes counted against the user's quota.

Format: int64

Type UserQuotaDetails (object)

UserQuotaDetails

Inherits: object

Model

ParameterTypeDescription
limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

usage*integer

Current number of bytes counted against the user's quota.

Format: int64

Type VDI-ID (string)

VDI ID

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

Type User-ID (integer)

VEuPathDB User ID

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

Type ProjectID (string)

Project ID

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

Type DatasetOwner (object)

Dataset Owner

Details about the owner of a VDI dataset.

Inherits: object

Model

ParameterTypeDescription
userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

firstName Owner First Namestring
lastName Owner Last Namestring
email Owner Emailstring
organization Owner Organizationstring

Type DatasetTypeInfo (object)

Dataset Type Info

Information about a specific dataset type.

Inherits: object

Model

ParameterTypeDescription
name* Type Namestring
displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

version* Type Versionstring

Type ShareOfferAction (string)

ShareOfferAction
Enum:
  • grant
  • revoke

Inherits: string

Type ShareReceiptAction (string)

ShareReceiptAction
Enum:
  • accept
  • reject

Inherits: string

Type DatasetVisibility (string)

DatasetVisibility
Enum:
  • private
  • protected
  • public

Inherits: string

Type DatasetStatusInfo (object)

Dataset Status Info

Information about the import and install status of a dataset.

Inherits: object

Model

ParameterTypeDescription
import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

installarray
install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

install[].metaMessagestring
install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

install[].dataMessagestring

Type DatasetImportStatus (string)

Dataset Import Status

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: string

Type DatasetInstallStatus (string)

Dataset Install Status
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

Type DatasetInstallStatusEntry (object)

Dataset Install Status Entry

Entry in a list of install statuses for a dataset.

Inherits: object

Model

ParameterTypeDescription
projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

metaMessagestring
dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

dataMessagestring

Type DatasetDependency (object)

DatasetDependency

Inherits: object

Model

ParameterTypeDescription
resourceIdentifier*string
resourceDisplayName*string
resourceVersion*string

Type Error (object)

Error

Discriminator: status

Inherits: object

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Type ErrorType (string)

ErrorType
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: string

Type BadRequestError (object)

Bad Request

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "bad-request",
   "message": "malformed JSON"
-}

Type UnauthorizedError (object)

Unauthorized

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type UnauthorizedError (object)

Unauthorized

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

Type ForbiddenError (object)

Forbidden

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type ForbiddenError (object)

Forbidden

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "forbidden",
   "message": "the current user is not permitted to perform this action"
-}

Type NotFoundError (object)

Not Found

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type NotFoundError (object)

Not Found

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

Type MethodNotAllowedError (object)

Method Not Allowed

The HTTP method used to request a resource is not allowed or configured by the server.

Discriminator: status

Discriminator value: bad-method

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type MethodNotAllowedError (object)

Method Not Allowed

The HTTP method used to request a resource is not allowed or configured by the server.

Discriminator: status

Discriminator value: bad-method

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "bad-method",
   "message": "PUT requests are not permitted on this endpoint"
-}

Type ConflictError (object)

Conflict

The request could not be completed due to a conflict with the current state of the resource.

If you submitted a resource, that resource may already exist.

Discriminator: status

Discriminator value: conflict

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type ConflictError (object)

Conflict

The request could not be completed due to a conflict with the current state of the resource.

If you submitted a resource, that resource may already exist.

Discriminator: status

Discriminator value: conflict

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "conflict",
   "message": "Target resource already exists and cannot be overwritten."
-}

Type GoneError (object)

Gone

The request could not be completed due to the requested resource or its underlying data no longer being present on the server.

Discriminator: status

Discriminator value: gone

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type GoneError (object)

Gone

The request could not be completed due to the requested resource or its underlying data no longer being present on the server.

Discriminator: status

Discriminator value: gone

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "gone",
   "message": "The target resource or its dependencies no longer exists."
-}

Type UnprocessableEntityError (object)

Unprocessable Entity

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Examples

{
+}

Type UnprocessableEntityError (object)

Unprocessable Entity

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Examples

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1714,7 +1714,11 @@
       ]
     }
   }
-}

Type ServerError (object)

Internal Server Error

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Examples

{
+}

Type FailedDependencyError (object)

Failed Dependency Error

Discriminator: status

Discriminator value: failed-dependency

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
dependency*string

Examples

{
+  "status": "failed-dependency",
+  "dependency": "google.com",
+  "message": "unexpected status code 403 from google.com"
+}

Type ServerError (object)

Internal Server Error

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Examples

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
diff --git a/platform/build.gradle.kts b/platform/build.gradle.kts
index 5f2e76f3..122c0f14 100644
--- a/platform/build.gradle.kts
+++ b/platform/build.gradle.kts
@@ -5,7 +5,7 @@ plugins {
 dependencies {
   constraints {
     api("org.gusdb:fgputil-db:2.13.1")
-    api("org.veupathdb.lib:jaxrs-container-core:7.0.9")
+    api("org.veupathdb.lib:jaxrs-container-core:7.1.0")
     api("org.veupathdb.lib:multipart-jackson-pojo:1.1.7")
 
     // VDI
@@ -29,11 +29,7 @@ dependencies {
 
     // HTTP
     api("io.foxcapades.lib:k-multipart:1.2.1")
-    api("org.glassfish.jersey.core:jersey-server:3.1.5")
-
-    // JSON
-    api("com.fasterxml.jackson.core:jackson-databind:2.17.0")
-    api("com.fasterxml.jackson.core:jackson-annotations:2.17.0")
+    api("org.glassfish.jersey.core:jersey-server")
 
     // Messaging
     api("org.apache.kafka:kafka-clients:3.7.0")
diff --git a/service/rest-service/api.raml b/service/rest-service/api.raml
index e7f43440..f0201856 100644
--- a/service/rest-service/api.raml
+++ b/service/rest-service/api.raml
@@ -3,7 +3,7 @@
 extends: https://raw.githubusercontent.com/VEuPathDB/docs-api-schema/v2.2.0/libraries/base-service.raml
 
 title: VEuPathDB Dataset Installer
-version: 2.0.0
+version: 2.1.0
 mediaType: application/json
 
 traits:
@@ -216,6 +216,17 @@ uses:
         body:
           application/json:
             type: lib.UnprocessableEntityError
+      424:
+        description: |
+          Failed Dependency.
+          
+          Returned when the dataset data source was a URL and the VDI service
+          encountered a non-success HTTP status code from the target URL.  This
+          could be, for example, a 403 error from an expired AWS S3 URL, or a
+          404 for a file that no longer exists on the remote server.
+        body:
+          application/json:
+            type: lib.FailedDependencyError
       500:
         description: |
           Internal Server Error.
diff --git a/service/rest-service/build.gradle.kts b/service/rest-service/build.gradle.kts
index 11796eda..334b8ef0 100644
--- a/service/rest-service/build.gradle.kts
+++ b/service/rest-service/build.gradle.kts
@@ -70,7 +70,6 @@ dependencies {
   implementation(kotlin("stdlib-jdk8"))
   implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core")
 
-
   // Jersey
   implementation("org.glassfish.jersey.core:jersey-server")
 
diff --git a/service/rest-service/schema/common.raml b/service/rest-service/schema/common.raml
index 6f7bd205..c452006d 100644
--- a/service/rest-service/schema/common.raml
+++ b/service/rest-service/schema/common.raml
@@ -1,7 +1,7 @@
 #%RAML 1.0 Library
 
 uses:
-  error: https://raw.githubusercontent.com/VEuPathDB/docs-api-schema/v2.2.1/libraries/errors.raml
+  error: https://raw.githubusercontent.com/VEuPathDB/docs-api-schema/v2.3.0/libraries/errors.raml
 
 types:
   VDI-ID:
diff --git a/service/rest-service/schema/library.raml b/service/rest-service/schema/library.raml
index 6434f0fa..5cb86ae0 100644
--- a/service/rest-service/schema/library.raml
+++ b/service/rest-service/schema/library.raml
@@ -777,6 +777,7 @@ types:
       - conflict
       - gone
       - invalid-input
+      - failed-dependency
       - server-error
   BadRequestError:
     displayName: Bad Request
@@ -872,6 +873,16 @@ types:
         general: []
         byKey:
           id: [Given ID value does not point to an existing record.]
+  FailedDependencyError:
+    displayName: Failed Dependency Error
+    type: Error
+    discriminatorValue: failed-dependency
+    properties:
+      dependency: string
+    example:
+      status: failed-dependency
+      dependency: google.com
+      message: unexpected status code 403 from google.com
   ServerError:
     displayName: Internal Server Error
     type: Error
diff --git a/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/Error.java b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/Error.java
index 8d5f314d..4ef1bc1b 100644
--- a/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/Error.java
+++ b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/Error.java
@@ -13,13 +13,14 @@
 @JsonSubTypes({
     @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.ConflictError.class),
     @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.MethodNotAllowedError.class),
+    @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.FailedDependencyError.class),
     @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.ServerError.class),
     @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.BadRequestError.class),
     @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.UnauthorizedError.class),
-    @JsonSubTypes.Type(java.lang.String.class),
-    @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.UnprocessableEntityError.class),
     @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.NotFoundError.class),
     @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.ForbiddenError.class),
+    @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.UnprocessableEntityError.class),
+    @JsonSubTypes.Type(java.lang.String.class),
     @JsonSubTypes.Type(org.veupathdb.service.vdi.generated.model.Error.class)
 })
 @JsonDeserialize(
diff --git a/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/ErrorType.java b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/ErrorType.java
index 3b185162..83871f52 100644
--- a/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/ErrorType.java
+++ b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/ErrorType.java
@@ -27,6 +27,9 @@ public enum ErrorType {
   @JsonProperty("invalid-input")
   INVALIDINPUT("invalid-input"),
 
+  @JsonProperty("failed-dependency")
+  FAILEDDEPENDENCY("failed-dependency"),
+
   @JsonProperty("server-error")
   SERVERERROR("server-error");
 
diff --git a/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyError.java b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyError.java
new file mode 100644
index 00000000..f93025f5
--- /dev/null
+++ b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyError.java
@@ -0,0 +1,28 @@
+package org.veupathdb.service.vdi.generated.model;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+
+@JsonTypeName("failed-dependency")
+@JsonDeserialize(
+    as = FailedDependencyErrorImpl.class
+)
+public interface FailedDependencyError extends Error {
+  ErrorType _DISCRIMINATOR_TYPE_NAME = ErrorType.FAILEDDEPENDENCY;
+
+  @JsonProperty("status")
+  ErrorType getStatus();
+
+  @JsonProperty("message")
+  String getMessage();
+
+  @JsonProperty("message")
+  void setMessage(String message);
+
+  @JsonProperty("dependency")
+  String getDependency();
+
+  @JsonProperty("dependency")
+  void setDependency(String dependency);
+}
diff --git a/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyErrorImpl.java b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyErrorImpl.java
new file mode 100644
index 00000000..b3a2f1d6
--- /dev/null
+++ b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyErrorImpl.java
@@ -0,0 +1,49 @@
+package org.veupathdb.service.vdi.generated.model;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonTypeName("failed-dependency")
+@JsonPropertyOrder({
+    "status",
+    "message",
+    "dependency"
+})
+public class FailedDependencyErrorImpl implements FailedDependencyError {
+  @JsonProperty("status")
+  private final ErrorType status = _DISCRIMINATOR_TYPE_NAME;
+
+  @JsonProperty("message")
+  private String message;
+
+  @JsonProperty("dependency")
+  private String dependency;
+
+  @JsonProperty("status")
+  public ErrorType getStatus() {
+    return this.status;
+  }
+
+  @JsonProperty("message")
+  public String getMessage() {
+    return this.message;
+  }
+
+  @JsonProperty("message")
+  public void setMessage(String message) {
+    this.message = message;
+  }
+
+  @JsonProperty("dependency")
+  public String getDependency() {
+    return this.dependency;
+  }
+
+  @JsonProperty("dependency")
+  public void setDependency(String dependency) {
+    this.dependency = dependency;
+  }
+}
diff --git a/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyErrorStream.java b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyErrorStream.java
new file mode 100644
index 00000000..82f6513c
--- /dev/null
+++ b/service/rest-service/src/main/java/org/veupathdb/service/vdi/generated/model/FailedDependencyErrorStream.java
@@ -0,0 +1,23 @@
+
+package org.veupathdb.service.vdi.generated.model;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.function.Consumer;
+
+import jakarta.ws.rs.WebApplicationException;
+import jakarta.ws.rs.core.StreamingOutput;
+
+public class FailedDependencyErrorStream extends FailedDependencyErrorImpl implements StreamingOutput {
+
+  private final Consumer _streamer;
+
+  public FailedDependencyErrorStream(Consumer streamer) {
+    _streamer = streamer;
+  }
+
+  @Override
+  public void write(OutputStream output) throws IOException, WebApplicationException {
+    _streamer.accept(output);
+  }
+}
diff --git a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/readme.adoc b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/readme.adoc
new file mode 100644
index 00000000..70518578
--- /dev/null
+++ b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/readme.adoc
@@ -0,0 +1,7 @@
+= Generated Java Model Extensions
+
+This package contains extension/mixin helper methods for working with the model
+Java classes generated by the RAML -> JaxRS code generator.
+
+The file names all follow the scheme `x-\{generated class name}` where the
+prefix `x` is short for 'extension'.
\ No newline at end of file
diff --git a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostMeta.kt b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostMeta.kt
index 85bb6f0e..5e3676fe 100644
--- a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostMeta.kt
+++ b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostMeta.kt
@@ -2,6 +2,25 @@ package org.veupathdb.service.vdi.generated.model
 
 import org.veupathdb.service.vdi.util.ValidationErrors
 
+internal fun DatasetPostMeta.cleanup() {
+  datasetType?.cleanup()
+
+  name = name?.trim()
+  summary = summary?.takeIf { it.isNotBlank() }
+    ?.trim()
+  description = description?.takeIf { it.isNotBlank() }
+    ?.trim()
+  origin = origin?.trim()
+
+  projects?.forEachIndexed { i, s -> projects[i] = s?.takeIf { it.isNotBlank() } ?.trim() }
+
+  dependencies?.forEach {
+    it.resourceVersion = it.resourceVersion?.takeIf { it.isNotBlank() } ?.trim()
+    it.resourceIdentifier = it.resourceIdentifier?.takeIf { it.isNotBlank() } ?.trim()
+    it.resourceDisplayName = it.resourceDisplayName?.takeIf { it.isNotBlank() } ?.trim()
+  }
+}
+
 internal fun DatasetPostMeta.validate(validationErrors: ValidationErrors) {
   if (datasetType == null)
     validationErrors.add("meta.type", "field is required")
diff --git a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostRequest.kt b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostRequest.kt
index 7872d955..e8b90781 100644
--- a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostRequest.kt
+++ b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostRequest.kt
@@ -8,6 +8,11 @@ import org.veupathdb.vdi.lib.common.model.VDIDatasetTypeImpl
 import org.veupathdb.vdi.lib.common.model.VDIDatasetVisibility
 import java.time.OffsetDateTime
 
+internal fun DatasetPostRequest.cleanup() {
+  meta?.cleanup()
+  url = url?.takeIf { it.isNotBlank() } ?.trim()
+}
+
 internal fun DatasetPostRequest.validate(): ValidationErrors {
   val validationErrors = ValidationErrors()
 
diff --git a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostType.kt b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostType.kt
index 03cce786..51ba1126 100644
--- a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostType.kt
+++ b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/generated/model/x-DatasetPostType.kt
@@ -2,6 +2,11 @@ package org.veupathdb.service.vdi.generated.model
 
 import org.veupathdb.service.vdi.util.ValidationErrors
 
+internal fun DatasetPostType.cleanup() {
+  name = name?.trim()
+  version = version?.trim()
+}
+
 internal fun DatasetPostType.validate(validationErrors: ValidationErrors) {
   if (name.isNullOrBlank())
     validationErrors.add("meta.type.name", "field is required")
diff --git a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/service/datasets/create-dataset.kt b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/service/datasets/create-dataset.kt
index b66d4867..2c0a3cb9 100644
--- a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/service/datasets/create-dataset.kt
+++ b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/service/datasets/create-dataset.kt
@@ -1,15 +1,18 @@
 package org.veupathdb.service.vdi.service.datasets
 
 import jakarta.ws.rs.BadRequestException
-import jakarta.ws.rs.InternalServerErrorException
 import org.slf4j.LoggerFactory
+import org.veupathdb.lib.container.jaxrs.errors.FailedDependencyException
 import org.veupathdb.lib.jaxrs.raml.multipart.JaxRSMultipartUpload
 import org.veupathdb.service.vdi.config.Options
 import org.veupathdb.service.vdi.generated.model.DatasetPostRequest
 import org.veupathdb.service.vdi.generated.model.toDatasetMeta
 import org.veupathdb.service.vdi.s3.DatasetStore
 import org.veupathdb.service.vdi.service.users.getCurrentQuotaUsage
-import org.veupathdb.service.vdi.util.BoundedInputStream
+import org.veupathdb.service.vdi.util.*
+import org.veupathdb.service.vdi.util.URLFetchException
+import org.veupathdb.service.vdi.util.fetchContent
+import org.veupathdb.service.vdi.util.toJavaURL
 import org.veupathdb.vdi.lib.common.OriginTimestamp
 import org.veupathdb.vdi.lib.common.compression.Tar
 import org.veupathdb.vdi.lib.common.compression.Zip
@@ -27,7 +30,7 @@ import vdi.component.db.cache.model.DatasetMetaImpl
 import vdi.component.db.cache.withTransaction
 import vdi.component.metrics.Metrics
 import vdi.component.plugin.mapping.PluginHandlers
-import java.net.HttpURLConnection
+import java.net.MalformedURLException
 import java.net.URL
 import java.nio.file.Path
 import java.time.OffsetDateTime
@@ -111,7 +114,7 @@ fun createDataset(
   //       starting the new thread.  Then the new thread will be forked and the
   //       target file downloaded into a temp directory in that thread before
   //       being uploaded to MinIO (also in that forked thread).
-  val (tempDirectory, uploadFile) = try { entity.getDatasetFile() }
+  val (tempDirectory, uploadFile) = try { entity.fetchDatasetFile() }
   catch (e: Throwable) {
     CacheDB().withTransaction { it.updateImportControl(datasetID, DatasetImportStatus.Failed) }
     throw e
@@ -319,6 +322,8 @@ private fun Path.repackRaw(into: Path): List {
   return listOf(VDIDatasetFileInfoImpl(name, fileSize()))
 }
 
+private data class FileReference(val tempDirectory: Path, val tempFile: Path)
+
 /**
  * Resolves the upload dataset file and places it in a new temp directory.
  *
@@ -332,93 +337,67 @@ private fun Path.repackRaw(into: Path): List {
  * @return A [Pair] containing the temp directory path first and the temp file
  * path second.
  */
+private fun DatasetPostRequest.fetchDatasetFile(): FileReference =
+  file?.let {
+    TempFiles.makeTempPath(it.name)
+      .also { (_, tmpFile) -> it.copyTo(tmpFile.toFile(), true) }
+      .let { (tmpDir, tmpFile) -> FileReference(tmpDir, tmpFile) }
+  } ?: downloadRemoteFile()
+
 @OptIn(ExperimentalPathApi::class)
-private fun DatasetPostRequest.getDatasetFile(): Pair =
-  if (file != null) {
-    // If the user uploaded a file, then use that
-    val (tempDir, tempFile) = TempFiles.makeTempPath(file.name)
-
-    file.copyTo(tempFile.toFile(), true)
-
-    tempDir to tempFile
-  } else {
-    // Try to construct a URL instance (validating that the URL is sane)
-    val url = url.toJavaURL()
-
-    // If the user gave us a URL then we have to download the contents of that
-    // URL to a local file to be uploaded.   This is done to catch errors with
-    // the URL or transfer before we start uploading to the dataset store.
-    val fileName = url.safeFilename()
-
-    if (fileName.isBlank())
-      throw BadRequestException("could not determine file name or type from the given URL")
-
-    val paths = TempFiles.makeTempPath(fileName)
-
-    // Try to establish a connection to the URL target (validating that the
-    // target is reachable)
-    val connection = try {
-      url.openConnection() as HttpURLConnection
-    } catch (e: Throwable) {
-      paths.first.deleteRecursively()
-      throw BadRequestException("given source file URL was unreachable")
-    }
+private fun DatasetPostRequest.downloadRemoteFile(): FileReference {
+  val url = try { url.toJavaURL() }
+  catch (e: MalformedURLException) { throw BadRequestException("invalid file source: ${e.message}") }
 
-    // Wrap the response code check as it will open and begin reading the input
-    // stream from the request target.
-    try {
-      val statusCode = connection.responseCode
-      if (statusCode !in 200 .. 299)
-        throw BadRequestException("target server for file download responded with status code $statusCode")
-    } catch (e: Throwable) {
-      paths.first.deleteRecursively()
-
-      throw if (e is BadRequestException)
-        e
-      else
-        BadRequestException("encountered error while attempting to communicate with the target server for file " +
-          "download: ${e.message}")
-    }
+  // If the user gave us a URL then we have to download the contents of that
+  // URL to a local file to be uploaded.   This is done to catch errors with
+  // the URL or transfer before we start uploading to the dataset store.
+  val fileName = url.safeFilename()
 
-    // Try to download the file from the source URL.
-    try {
-      BoundedInputStream(JaxRSMultipartUpload.maxFileUploadSize, connection.inputStream) {
-        BadRequestException("given source file URL pointed to a file that exceeded the max allowed upload size of " +
-          "${JaxRSMultipartUpload.maxFileUploadSize} bytes.")
-      }
-        .use { inp -> paths.second.outputStream().use { out -> inp.transferTo(out) } }
-    } catch (e: Throwable) {
-      log.error("failed to download file from target URL", e)
-      paths.second.deleteIfExists()
-      paths.first.deleteRecursively()
-      throw InternalServerErrorException("error occurred while attempting to download source file from the given URL")
-    }
+  if (fileName.isBlank())
+    throw BadRequestException("could not determine file name or type from the given URL")
 
-    paths
-  }
+  val response = try { url.fetchContent() }
+  catch (e: URLFetchException) { throw FailedDependencyException(this.url, e.message, e) }
 
-private fun Path.validateZip() {
-  when (getZipType()) {
-    ZipType.Empty    -> throw BadRequestException("uploaded zip file is empty")
-    ZipType.Standard -> { /* OK */ }
-    ZipType.Spanned  -> throw BadRequestException("uploaded zip file is part of a spanned archive")
-    ZipType.Invalid  -> throw BadRequestException("uploaded zip file is invalid")
-  }
-}
+  // If the remote server "successfully" returned an error code or some other
+  // non-2xx code.
+  if (!response.isSuccess)
+    throw FailedDependencyException(this.url, "unexpected status code ${response.status}")
 
-private fun String.toJavaURL(): URL {
-  val dividerIndex = indexOf("://")
+  // If for some reason the server returned nothing.
+  if (!response.hasBody)
+    throw FailedDependencyException(this.url, "remote server returned code ${response.status} with no content")
 
-  if (dividerIndex < 1)
-    throw BadRequestException("given url does not specify a protocol, must be http or https")
+  val (tmpDir, tmpFile) = TempFiles.makeTempPath(fileName)
 
-  with(substring(0, dividerIndex)) {
-    if (this != "http" && this != "https")
-      throw BadRequestException("given url has an invalid protocol, must be http or https")
+  // Try to download the file from the source URL.
+  try {
+    BoundedInputStream(JaxRSMultipartUpload.maxFileUploadSize, response.body!!) {
+      BadRequestException("given source file URL pointed to a file that exceeded the max allowed upload size of " +
+        "${JaxRSMultipartUpload.maxFileUploadSize} bytes.")
+    }
+      .use { inp -> tmpFile.outputStream().use { out -> inp.transferTo(out) } }
+  } catch (e: Throwable) {
+    log.error("content transfer from ${url.shortForm}", e)
+    tmpFile.deleteIfExists()
+    tmpDir.deleteRecursively()
+    throw FailedDependencyException(
+      this.url,
+      "error occurred while attempting to download source file from ${url.shortForm}",
+    )
   }
 
-  return try { URL(this) }
-  catch (e: Throwable) { throw BadRequestException("given url is invalid: ${e.message}")}
+  return FileReference(tmpDir, tmpFile)
+}
+
+private fun Path.validateZip() {
+  when (getZipType()) {
+    ZipType.Empty -> throw BadRequestException("uploaded zip file is empty")
+    ZipType.Standard -> { /* OK */ }
+    ZipType.Spanned -> throw BadRequestException("uploaded zip file is part of a spanned archive")
+    ZipType.Invalid -> throw BadRequestException("uploaded zip file is invalid")
+  }
 }
 
 private fun URL.safeFilename(): String {
diff --git a/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/util/http.kt b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/util/http.kt
new file mode 100644
index 00000000..ff2ef24f
--- /dev/null
+++ b/service/rest-service/src/main/kotlin/org/veupathdb/service/vdi/util/http.kt
@@ -0,0 +1,82 @@
+package org.veupathdb.service.vdi.util
+
+import java.io.IOException
+import java.io.InputStream
+import java.net.HttpURLConnection
+import java.net.MalformedURLException
+import java.net.URL
+
+internal data class URLFetchResult(val status: Int, val body: InputStream?) : AutoCloseable {
+  inline val isSuccess get() = status in 200 .. 299
+
+  inline val hasBody get() = body != null
+
+  override fun close() {
+    body?.close()
+  }
+}
+
+internal inline val URL.shortForm get() = "$protocol://$host"
+
+/**
+ * Attempts to fetch the contents of a remote address.
+ *
+ * This method follows redirects even when switching between http/https, unlike
+ * the built in [HttpURLConnection.followRedirects] option which does not allow
+ * protocol changes.
+ */
+internal fun URL.fetchContent(): URLFetchResult {
+  var currentURL = this
+
+  while (true) {
+    with (currentURL.protocol) {
+      if (this != "http" && this != "https")
+        throw URLFetchException("unsupported protocol, only http and https are supported")
+    }
+
+    val con = currentURL.openConnection() as HttpURLConnection
+
+    try {
+      val code = con.responseCode
+
+      if (code in 200 .. 299)
+        return URLFetchResult(code, con.inputStream)
+
+      if (code !in 300 .. 399)
+        return URLFetchResult(code, con.errorStream)
+
+      val location = con.getHeaderField("Location")
+        ?: throw URLFetchException("remote server responded with a 3xx status code but no redirect location")
+
+      if (location.isBlank())
+        throw URLFetchException("remote server responded with a 3xx status code and a blank redirect location")
+
+      currentURL = try { location.toJavaURL() }
+      catch (e: MalformedURLException) {
+        throw URLFetchException("remove server responded with a 3xx status code and an invalid or unsupported url: "
+          + location)
+      }
+    } catch (e: IOException) {
+      throw URLFetchException("encountered unexpected exception while attempting to communicate with remote server", e)
+    }
+  }
+}
+
+internal class URLFetchException : Exception {
+  constructor(message: String) : super(message)
+  constructor(message: String, cause: Throwable) : super(message, cause)
+}
+
+internal fun String.toJavaURL(): URL {
+  val dividerIndex = indexOf("://")
+
+  if (dividerIndex < 1)
+    throw MalformedURLException("url does not specify a protocol, must be http or https")
+
+  with(substring(0, dividerIndex)) {
+    if (this != "http" && this != "https")
+      throw MalformedURLException("url has an unsupported protocol, must be http or https")
+  }
+
+  return URL(this)
+}
\ No newline at end of file
diff --git a/service/rest-service/src/main/resources/api.html b/service/rest-service/src/main/resources/api.html
index 153dbf61..a93fca38 100644
--- a/service/rest-service/src/main/resources/api.html
+++ b/service/rest-service/src/main/resources/api.html
@@ -1222,7 +1222,7 @@
 	bindFilters();
 
 });
-		

VEuPathDB Dataset Installer v2.0.0

link

Resources

get /vdi-datasets

List Datasets  

Returns a list of datasets available to the requesting user, optionally filtered by query parameters.

Results are sorted by creation date in reverse order. This means the most recently created datasets will be first and the oldest dataset will be last in the list.

Parameters chevron_right expand_more

ParameterTypeDescription
Query
project_id Project IDstring

ID of the VEuPathDB project that results should be filtered to.

This means only datasets that are relevant to the project ID given will be returned.

Additionally, this controls the sites on which the dataset installation status will be checked. Meaning, if this parameter is specified and set to, for example, PlasmoDB, the status block in the response objects will only include installation status details for PlasmoDB and not any other sites that the dataset may have been installed into.

Inherits: string

ownership Dataset Ownership Filterstring

Ownership status filter.

Enum of:

  • any
  • owned
  • shared

If set to any the results are not filtered.

If set to owned, the results will be filtered to only results that are owned by the requesting user.

If set to shared, the results will be filtered to only results that are shared with the requesting user.

Default value: "any"

curl -X GET \
+		

VEuPathDB Dataset Installer v2.0.0

link

Resources

get /vdi-datasets

List Datasets  

Returns a list of datasets available to the requesting user, optionally filtered by query parameters.

Results are sorted by creation date in reverse order. This means the most recently created datasets will be first and the oldest dataset will be last in the list.

Parameters chevron_right expand_more

ParameterTypeDescription
Query
project_id Project IDstring

ID of the VEuPathDB project that results should be filtered to.

This means only datasets that are relevant to the project ID given will be returned.

Additionally, this controls the sites on which the dataset installation status will be checked. Meaning, if this parameter is specified and set to, for example, PlasmoDB, the status block in the response objects will only include installation status details for PlasmoDB and not any other sites that the dataset may have been installed into.

Inherits: string

ownership Dataset Ownership Filterstring

Ownership status filter.

Enum of:

  • any
  • owned
  • shared

If set to any the results are not filtered.

If set to owned, the results will be filtered to only results that are owned by the requesting user.

If set to shared, the results will be filtered to only results that are shared with the requesting user.

Default value: "any"

curl -X GET \
   undefined/vdi-datasets?ProjectID=<value>&ownership=<value>

200 OK chevron_right expand_more

Success.

This response means that all checks passed and zero or more dataset records were found for the requesting user.

application/json

application/json

ParameterTypeDescription
[] Dataset List Itemobject

Short entry with basic details about a dataset.

Inherits: object

[].datasetId* Dataset IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

[].owner* Owner Detailsobject

Details about the owner of a VDI dataset.

Inherits: lib.DatasetOwner

[].owner.userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].owner.firstName Owner First Namestring
[].owner.lastName Owner Last Namestring
[].owner.email Owner Emailstring
[].owner.organization Owner Organizationstring
[].datasetType* Dataset Typeobject

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

[].datasetType.name* Type Namestring
[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

[].datasetType.version* Type Versionstring
[].visibility* Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

[].name* Dataset Namestring

User provided name for the dataset.

[].summary Dataset Summarystring

User provided summary of the dataset.

[].description Dataset Descriptionstring

User provided description of the dataset.

[].sourceUrl Source URLstring

URL of the dataset data source, if the dataset was uploaded via URL.

[].origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

[].projectIds* Project IDsarray

Project IDs for projects the dataset record was submitted to.

[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status* Status Infoobject

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

[].status.installarray
[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].metaMessagestring
[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].dataMessagestring
[].shares* Shared Witharray
[].shares[]object

Inherits: object

[].shares[].userId*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].shares[].firstName*string
[].shares[].lastName*string
[].shares[].organization*string
[].shares[].accepted*boolean
[].fileCount* File Countinteger

Number of files uploaded for this dataset.

[].fileSizeTotal* File Size Totalinteger

Sum of the sizes of all the files uploaded for this dataset.

Format: int64

[].created* Creation Timestampdatetime

Timestamp of the creation of this dataset.

Response Body

[
   {
     "datasetId": "zaZqAAGLGJhBgg",
@@ -1274,13 +1274,13 @@
     "fileSizeTotal": 123456789,
     "created": "2023-10-31T23:59:59.999Z"
   }
-]

400 Bad Request chevron_right expand_more

Bad Request.

One or more request query parameters were not valid.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+]

400 Bad Request chevron_right expand_more

Bad Request.

One or more request query parameters were not valid.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1289,13 +1289,13 @@
   -d @file \
   undefined/vdi-datasets

Request Body chevron_right expand_more

Dataset Post Request DatasetPostRequest

multipart/form-data

HTTP POST request body requesting the creation of a dataset from the components included in the request.

For a request to be considered valid, it must contain exactly 1 of the optional parameters file or url. If a request body contains both a file and a url field value, the service will return a 400 error.

Inherits: object

ParameterTypeDescription
meta* Dataset Metaobject

Metadata about the dataset being submitted.

Inherits: lib.DatasetPostMeta

meta.datasetType* Dataset Typeobject

Type of the dataset that is being uploaded.

Inherits: lib.DatasetPostType

meta.datasetType.name*string
meta.datasetType.version*string
meta.name* Dataset Namestring

User provided name for the dataset.

meta.visibility Dataset Visibilitystring

Default value: "private"

Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

meta.summary Dataset Summarystring

User provided summary for the dataset.

meta.description Dataset Descriptionstring

User provided description for the dataset.

meta.origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

meta.projects* Project IDsarray

IDs of the projects this dataset is being submitted to.

meta.projects[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

meta.dependencies* Dataset Dependenciesarray
meta.dependencies[]object

Inherits: lib.DatasetDependency

meta.dependencies[].resourceIdentifier*string
meta.dependencies[].resourceDisplayName*string
meta.dependencies[].resourceVersion*string
meta.createdOn Creation Datedatetime-only
file Dataset Filefile

Dataset file to upload.

This field is incompatible with the url field.

url Dataset URLstring

URL to a dataset file to upload.

This field is incompatible with the file field.

200 OK chevron_right expand_more

Success

Dataset Upload Response DatasetPostResponse

application/json

Response object returned on successful upload of a dataset.

Note that this response does not mean the uploaded dataset has been made available on the target site(s). The upload must first be processed and installed into the target sites before the dataset will become available for use.

Inherits: object

ParameterTypeDescription
datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

Response Body

{
   "datasetId": "zaZqAAGLGJhBgg"
-}

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1306,7 +1306,7 @@
       ]
     }
   }
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1316,16 +1316,16 @@
   -d @file \
   undefined/admin/proxy-upload

Request Body chevron_right expand_more

Dataset Post Request DatasetPostRequest

multipart/form-data

multipart/form-data HTTP POST request to upload a new dataset.

Note, the body description below is of the multipart form data fields and not of a JSON object.

The meta field, however, is expected to be a JSON blob.

Inherits: object

ParameterTypeDescription
meta* Dataset Metaobject

Metadata about the dataset being submitted.

Inherits: lib.DatasetPostMeta

meta.datasetType* Dataset Typeobject

Type of the dataset that is being uploaded.

Inherits: lib.DatasetPostType

meta.datasetType.name*string
meta.datasetType.version*string
meta.name* Dataset Namestring

User provided name for the dataset.

meta.visibility Dataset Visibilitystring

Default value: "private"

Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

meta.summary Dataset Summarystring

User provided summary for the dataset.

meta.description Dataset Descriptionstring

User provided description for the dataset.

meta.origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

meta.projects* Project IDsarray

IDs of the projects this dataset is being submitted to.

meta.projects[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

meta.dependencies* Dataset Dependenciesarray
meta.dependencies[]object

Inherits: lib.DatasetDependency

meta.dependencies[].resourceIdentifier*string
meta.dependencies[].resourceDisplayName*string
meta.dependencies[].resourceVersion*string
meta.createdOn Creation Datedatetime-only
file Dataset Filefile

Dataset file to upload.

This field is incompatible with the url field.

url Dataset URLstring

URL to a dataset file to upload.

This field is incompatible with the file field.

200 OK chevron_right expand_more

Success

Dataset Upload Response DatasetPostResponse

application/json

Response object returned on successful upload of a dataset.

Note that this response does not mean the uploaded dataset has been made available on the target site(s). The upload must first be processed and installed into the target sites before the dataset will become available for use.

Inherits: object

ParameterTypeDescription
datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

Response Body

{
   "datasetId": "zaZqAAGLGJhBgg"
-}

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

403 Forbidden chevron_right expand_more

Forbidden

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Forbidden

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "forbidden",
   "message": "Target user does not exist."
-}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1336,16 +1336,16 @@
       ]
     }
   }
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /admin/failed-imports

List  

Lists datasets that failed to import.

Parameters chevron_right expand_more

ParameterTypeDescription
Query
user VEuPathDB User IDinteger

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

beforestring

Filter results to only those records created before the given date-time value.

Examples:

  • 2023
  • 2023-10
  • 2023-10-02
  • 2023-10-02T17:10
  • 2023-10-02T17:10:00
  • 2023-10-02T17:10:00.000
  • 2023-10-02T17:10:00.000Z

If no timezone is provided, the service will assume its local zone.

afterstring

Filter results to only those records created after the given date-time value.

Examples:

  • 2023
  • 2023-10
  • 2023-10-02
  • 2023-10-02T17:10
  • 2023-10-02T17:10:00
  • 2023-10-02T17:10:00.000
  • 2023-10-02T17:10:00.000Z

If no timezone is provided, the service will assume its local zone.

limitinteger

Max. value: 250

Default value: 100

offsetinteger
sortstring

One of:

  • date

Default value: "date"

orderstring

One of:

  • asc
  • desc

Default value: "desc"

curl -X GET \
   undefined/admin/failed-imports?User-ID=<value>&before=<value>&after=<value>&limit=<value>&offset=<value>&sort=<value>&order=<value>

200 OK chevron_right expand_more

Broken Import Listing BrokenImportListing

application/json

Inherits: object

ParameterTypeDescription
meta*object

Inherits: lib.BrokenImportListingMeta

meta.count*integer
meta.beforestring
meta.afterstring
meta.userinteger

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

meta.limitinteger
meta.offsetinteger
results*array
results[] Broken Import Detailsobject

Inherits: lib.BrokenImportDetails

results[].datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

results[].owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

results[].datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

results[].datasetType.name* Type Namestring
results[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

results[].datasetType.version* Type Versionstring
results[].projectIds*array
results[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

results[].messages*array
results[].messages[]string

get /admin/list-broken

List Broken Installs  

Lists datasets that failed installation due to non-user error.

Parameters chevron_right expand_more

ParameterTypeDescription
Query
expanded Expanded Dataset Listboolean

Whether the returned broken dataset install list should be expanded to include additional details about each dataset or should be just a simple list of dataset IDs.

Default value: true

curl -X GET \
-  undefined/admin/list-broken?expanded=<value>

200 OK chevron_right expand_more

Success.

Broken dataset install list successfully generated.

Broken Dataset Listing BrokenDatasetListing

application/json

Inherits: object

ParameterTypeDescription
detailsarray
details[] Broken Dataset Detailsobject

Inherits: lib.BrokenDatasetDetails

details[].datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

details[].owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

details[].datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

details[].datasetType.name* Type Namestring
details[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

details[].datasetType.version* Type Versionstring
details[].projectIds*array
details[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

details[].status*object

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

details[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

details[].status.installarray
details[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

details[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

details[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

details[].status.install[].metaMessagestring
details[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

details[].status.install[].dataMessagestring
idsarray
ids[] VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/admin/list-broken?expanded=<value>

200 OK chevron_right expand_more

Success.

Broken dataset install list successfully generated.

Broken Dataset Listing BrokenDatasetListing

application/json

Inherits: object

ParameterTypeDescription
detailsarray
details[] Broken Dataset Detailsobject

Inherits: lib.BrokenDatasetDetails

details[].datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

details[].owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

details[].datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

details[].datasetType.name* Type Namestring
details[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

details[].datasetType.version* Type Versionstring
details[].projectIds*array
details[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

details[].status*object

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

details[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

details[].status.installarray
details[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

details[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

details[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

details[].status.install[].metaMessagestring
details[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

details[].status.install[].dataMessagestring
idsarray
ids[] VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1361,34 +1361,34 @@
       "projectId": "PlasmoDB"
     }
   ]
-}

204 No Content chevron_right expand_more

Success.

Dataset install cleanup process completed successfully.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

204 No Content chevron_right expand_more

Success.

Dataset install cleanup process completed successfully.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

post /admin/delete-cleanup

Run Deleted Dataset Cleanup  

Permanently delete jobs that were soft deleted more than 24 hours prior to the execution of this task.

curl -X POST \
-  undefined/admin/delete-cleanup

204 No Content chevron_right expand_more

Action completed successfully.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/admin/delete-cleanup

204 No Content chevron_right expand_more

Action completed successfully.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /admin/dataset-details

 

Parameters chevron_right expand_more

ParameterTypeDescription
Query
datasetId*string
curl -X GET \
   undefined/admin/dataset-details?datasetId=<value>

200 OK chevron_right expand_more

InternalDatasetDetails InternalDatasetDetails

application/json

Inherits: object

ParameterTypeDescription
datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

datasetType.name* Type Namestring
datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

datasetType.version* Type Versionstring
owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

isDeleted*boolean
origin*string
created*datetime
inserted*datetime
name*string
summarystring
descriptionstring
visibility*string
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

sourceUrlstring
projectIds*array
projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

status*string
syncControlobject

Inherits: object

syncControl.sharesUpdateTime*datetime
syncControl.dataUpdateTime*datetime
syncControl.metaUpdateTime*datetime
uploadFilesarray
uploadFiles[]string
installFilesarray
installFiles[]string
importMessages*array
importMessages[]string

get /admin/list-s3-objects

 

200 OK chevron_right expand_more

text/plain

text/plain

get /admin/list-all-datasets

 

Parameters chevron_right expand_more

ParameterTypeDescription
Query
offsetinteger
limitinteger

Min. value: 1

Default value: 100

project_idstring

Optionally filter the results to only datasets that target the given project ID.

include_deletedboolean
curl -X GET \
   undefined/admin/list-all-datasets?offset=<value>&limit=<value>&project_id=<value>&include_deleted=<value>

200 OK chevron_right expand_more

All Datasets Listing Response AllDatasetsListResponse

application/json

Inherits: object

ParameterTypeDescription
meta*object

Inherits: lib.AllDatasetsListMeta

meta.count*integer
meta.offset*integer
meta.limit*integer
meta.total*integer
results*array
results[]object

Inherits: lib.AllDatasetsListEntry

results[].datasetId*string

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

results[].owner*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

results[].datasetType*object

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

results[].datasetType.name* Type Namestring
results[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

results[].datasetType.version* Type Versionstring
results[].visibility*string
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

results[].name*string
results[].summarystring
results[].descriptionstring
results[].sourceUrlstring
results[].origin*string
results[].projectIds*array
results[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

results[].status*object

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

results[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

results[].status.installarray
results[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

results[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

results[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

results[].status.install[].metaMessagestring
results[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

results[].status.install[].dataMessagestring
results[].created*datetime
results[].isDeleted*boolean

get /vdi-datasets/community

List Community Datasets  

Returns a list of datasets that have been made "public" by the owner setting the dataset visibilities to a setting other than private.

curl -X GET \
-  undefined/vdi-datasets/community

200 OK chevron_right expand_more

Success

application/json

application/json

ParameterTypeDescription
[] Dataset List Itemobject

Short entry with basic details about a dataset.

Inherits: object

[].datasetId* Dataset IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

[].owner* Owner Detailsobject

Details about the owner of a VDI dataset.

Inherits: lib.DatasetOwner

[].owner.userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].owner.firstName Owner First Namestring
[].owner.lastName Owner Last Namestring
[].owner.email Owner Emailstring
[].owner.organization Owner Organizationstring
[].datasetType* Dataset Typeobject

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

[].datasetType.name* Type Namestring
[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

[].datasetType.version* Type Versionstring
[].visibility* Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

[].name* Dataset Namestring

User provided name for the dataset.

[].summary Dataset Summarystring

User provided summary of the dataset.

[].description Dataset Descriptionstring

User provided description of the dataset.

[].sourceUrl Source URLstring

URL of the dataset data source, if the dataset was uploaded via URL.

[].origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

[].projectIds* Project IDsarray

Project IDs for projects the dataset record was submitted to.

[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status* Status Infoobject

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

[].status.installarray
[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].metaMessagestring
[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].dataMessagestring
[].shares* Shared Witharray
[].shares[]object

Inherits: object

[].shares[].userId*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].shares[].firstName*string
[].shares[].lastName*string
[].shares[].organization*string
[].shares[].accepted*boolean
[].fileCount* File Countinteger

Number of files uploaded for this dataset.

[].fileSizeTotal* File Size Totalinteger

Sum of the sizes of all the files uploaded for this dataset.

Format: int64

[].created* Creation Timestampdatetime

Timestamp of the creation of this dataset.

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/community

200 OK chevron_right expand_more

Success

application/json

application/json

ParameterTypeDescription
[] Dataset List Itemobject

Short entry with basic details about a dataset.

Inherits: object

[].datasetId* Dataset IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: lib.VDI-ID

[].owner* Owner Detailsobject

Details about the owner of a VDI dataset.

Inherits: lib.DatasetOwner

[].owner.userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].owner.firstName Owner First Namestring
[].owner.lastName Owner Last Namestring
[].owner.email Owner Emailstring
[].owner.organization Owner Organizationstring
[].datasetType* Dataset Typeobject

Information about a specific dataset type.

Inherits: lib.DatasetTypeInfo

[].datasetType.name* Type Namestring
[].datasetType.displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

[].datasetType.version* Type Versionstring
[].visibility* Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

[].name* Dataset Namestring

User provided name for the dataset.

[].summary Dataset Summarystring

User provided summary of the dataset.

[].description Dataset Descriptionstring

User provided description of the dataset.

[].sourceUrl Source URLstring

URL of the dataset data source, if the dataset was uploaded via URL.

[].origin* Dataset Originstring

String representing the origin of the dataset. Examples include direct-upload, nephele, or galaxy.

[].projectIds* Project IDsarray

Project IDs for projects the dataset record was submitted to.

[].projectIds[] Project IDstring

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status* Status Infoobject

Information about the import and install status of a dataset.

Inherits: lib.DatasetStatusInfo

[].status.import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

[].status.installarray
[].status.install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

[].status.install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: lib.ProjectID

[].status.install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].metaMessagestring
[].status.install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

[].status.install[].dataMessagestring
[].shares* Shared Witharray
[].shares[]object

Inherits: object

[].shares[].userId*integer

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: lib.User-ID

[].shares[].firstName*string
[].shares[].lastName*string
[].shares[].organization*string
[].shares[].accepted*boolean
[].fileCount* File Countinteger

Number of files uploaded for this dataset.

[].fileSizeTotal* File Size Totalinteger

Sum of the sizes of all the files uploaded for this dataset.

Format: int64

[].created* Creation Timestampdatetime

Timestamp of the creation of this dataset.

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1442,13 +1442,13 @@
       "resourceVersion": "1.0"
     }
   ]
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

404 Not Found chevron_right expand_more

Target dataset was not located or is not visible to the requesting user.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Target dataset was not located or is not visible to the requesting user.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1459,19 +1459,19 @@
   "name": "My Dataset",
   "summary": "A short summary of my dataset.",
   "description": "A longer description of my dataset."
-}

204 No Content chevron_right expand_more

Target dataset metadata was updated.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

204 No Content chevron_right expand_more

Target dataset metadata was updated.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "Invalid project_id value."
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

403 Forbidden chevron_right expand_more

Action Forbidden.

Target dataset is not owned by the requesting user.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Action Forbidden.

Target dataset is not owned by the requesting user.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "forbidden",
   "message": "the current user is not permitted to perform this action"
-}

404 Not Found chevron_right expand_more

Target dataset was not found.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Target dataset was not found.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1482,54 +1482,54 @@
       ]
     }
   }
-}

425 chevron_right expand_more

Too Early.

Patch request was submitted before the dataset data was written to the dataset store.

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

425 chevron_right expand_more

Too Early.

Patch request was submitted before the dataset data was written to the dataset store.

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

delete /vdi-datasets/{vd-id}

Delete Dataset  

Marks the target dataset as deleted.

Datasets that have been marked as deleted are still recoverable for a short period of time before they are permanently deleted from the system.

Parameters chevron_right expand_more

ParameterTypeDescription
Path
vd-id* VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

curl -X DELETE \
-  undefined/vdi-datasets/{vd-id}

204 No Content chevron_right expand_more

Target dataset was marked as deleted.

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/{vd-id}

204 No Content chevron_right expand_more

Target dataset was marked as deleted.

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "Users must be logged in to access this resource."
-}

403 Forbidden chevron_right expand_more

Action Forbidden.

Target dataset is not owned by the requesting user.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Action Forbidden.

Target dataset is not owned by the requesting user.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "forbidden",
   "message": "the current user is not permitted to perform this action"
-}

404 Not Found chevron_right expand_more

Target dataset was not located.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Target dataset was not located.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Dataset store is unreachable",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /vdi-datasets/{vd-id}/files

List Files  

Lists the dataset zip files for the original user upload as well as the install files (when available).

If this endpoint is hit before the dataset has been imported, the upload zip size will be -1 which may be used as an indicator to clients that the zip size cannot yet be shown.

Parameters chevron_right expand_more

ParameterTypeDescription
Path
vd-id* VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

curl -X GET \
-  undefined/vdi-datasets/{vd-id}/files

200 OK chevron_right expand_more

Success

Dataset File Listing DatasetFileListing

application/json

Inherits: object

ParameterTypeDescription
upload*object

Inherits: lib.DatasetZipDetails

upload.zipSize*integer

Format: int64

upload.contents*array
upload.contents[] Dataset File Detailsobject

Inherits: lib.DatasetFileDetails

upload.contents[].fileName* File Namestring
upload.contents[].fileSize* File Sizeinteger

Size of the file in bytes.

Format: int64

installobject

Inherits: lib.DatasetZipDetails

install.zipSize*integer

Format: int64

install.contents*array
install.contents[] Dataset File Detailsobject

Inherits: lib.DatasetFileDetails

install.contents[].fileName* File Namestring
install.contents[].fileSize* File Sizeinteger

Size of the file in bytes.

Format: int64

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/{vd-id}/files

200 OK chevron_right expand_more

Success

Dataset File Listing DatasetFileListing

application/json

Inherits: object

ParameterTypeDescription
upload*object

Inherits: lib.DatasetZipDetails

upload.zipSize*integer

Format: int64

upload.contents*array
upload.contents[] Dataset File Detailsobject

Inherits: lib.DatasetFileDetails

upload.contents[].fileName* File Namestring
upload.contents[].fileSize* File Sizeinteger

Size of the file in bytes.

Format: int64

installobject

Inherits: lib.DatasetZipDetails

install.zipSize*integer

Format: int64

install.contents*array
install.contents[] Dataset File Detailsobject

Inherits: lib.DatasetFileDetails

install.contents[].fileName* File Namestring
install.contents[].fileSize* File Sizeinteger

Size of the file in bytes.

Format: int64

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /vdi-datasets/{vd-id}/files/upload

Get Upload Zip File  

Returns a zip file containing the contents of the original upload to the dataset importer.

Parameters chevron_right expand_more

ParameterTypeDescription
Path
vd-id* VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

curl -X GET \
-  undefined/vdi-datasets/{vd-id}/files/upload

200 OK chevron_right expand_more

Success

Headers

ParameterTypeDescription
Content-Disposition*string

application/octet-stream

application/octet-stream

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/{vd-id}/files/upload

200 OK chevron_right expand_more

Success

Headers

ParameterTypeDescription
Content-Disposition*string

application/octet-stream

application/octet-stream

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /vdi-datasets/{vd-id}/files/data

Get Data File  

Parameters chevron_right expand_more

ParameterTypeDescription
Path
vd-id* VDI IDstring

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

curl -X GET \
-  undefined/vdi-datasets/{vd-id}/files/data

200 OK chevron_right expand_more

Success

Headers

ParameterTypeDescription
Content-Disposition*string

application/octet-stream

application/octet-stream

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-datasets/{vd-id}/files/data

200 OK chevron_right expand_more

Success

Headers

ParameterTypeDescription
Content-Disposition*string

application/octet-stream

application/octet-stream

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

404 Not Found chevron_right expand_more

Not Found

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1540,16 +1540,16 @@
   "action": "grant"
 }

Revoke Example

{
   "action": "revoke"
-}

204 No Content chevron_right expand_more

Share offer record was successfully (re)placed.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

204 No Content chevron_right expand_more

Share offer record was successfully (re)placed.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "malformed JSON"
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

403 Forbidden chevron_right expand_more

Action Forbidden.

This status is returned when the dataset target of the operation is not owned by the requesting user, thus the requesting user is forbidden from offering shares to the dataset.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Action Forbidden.

This status is returned when the dataset target of the operation is not owned by the requesting user, thus the requesting user is forbidden from offering shares to the dataset.

Forbidden ForbiddenError

application/json

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "forbidden",
   "message": "the current user is not permitted to perform this action"
-}

404 Not Found chevron_right expand_more

Not Found.

Either the target dataset or target user was not found.

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

404 Not Found chevron_right expand_more

Not Found.

Either the target dataset or target user was not found.

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1560,7 +1560,7 @@
       ]
     }
   }
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1571,16 +1571,16 @@
   "action": "accept"
 }

Reject Example

{
   "action": "reject"
-}

204 No Content chevron_right expand_more

Share offer receipt record was successfully created.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

204 No Content chevron_right expand_more

Share offer receipt record was successfully created.

400 Bad Request chevron_right expand_more

Bad Request.

Request body did not resemble the expected JSON form.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "malformed JSON"
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This status is returned when the request contains either no user authorization token or an invalid user authorization token.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

403 Forbidden chevron_right expand_more

Action Forbidden.

This status is returned when the requesting user is not the target user and/or the target user was not offered a share for the target dataset.

404 Not Found chevron_right expand_more

Not Found.

This status is returned when the target dataset does not exist.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

403 Forbidden chevron_right expand_more

Action Forbidden.

This status is returned when the requesting user is not the target user and/or the target user was not offered a share for the target dataset.

404 Not Found chevron_right expand_more

Not Found.

This status is returned when the target dataset does not exist.

Not Found NotFoundError

application/json

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
+}

422 Unprocessable Entity chevron_right expand_more

Unprocessable Entity.

Request body was syntactically valid JSON, however the body failed validation.

Unprocessable Entity UnprocessableEntityError

application/json

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Response Body

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1591,7 +1591,7 @@
       ]
     }
   }
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This status is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1616,13 +1616,13 @@
       "ToxoDB"
     ]
   }
-]

400 Bad Request chevron_right expand_more

Bad Request.

This response is returned when the status query parameter was provided but was an invalid value.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+]

400 Bad Request chevron_right expand_more

Bad Request.

This response is returned when the status query parameter was provided but was an invalid value.

Bad Request BadRequestError

application/json

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "bad-request",
   "message": "malformed JSON"
-}

401 Unauthorized chevron_right expand_more

Unauthorized.

This response is returned when the request either contained an invalid user authorization token, or did not contain a user authorization token at all.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+}

401 Unauthorized chevron_right expand_more

Unauthorized.

This response is returned when the request either contained an invalid user authorization token, or did not contain a user authorization token at all.

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This response is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error.

This response is returned when an unhandled or unexpected issue arises when attempting to process the request.

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1648,18 +1648,18 @@
       "VectorBase"
     ]
   }
-]

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+]

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
 }

get /vdi-users/self/meta

 

Get user metadata.

curl -X GET \
-  undefined/vdi-users/self/meta

200 OK chevron_right expand_more

Success

UserMetadata UserMetadata

application/json

Inherits: object

ParameterTypeDescription
quota*object

Inherits: lib.UserQuotaDetails

quota.limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

quota.usage*integer

Current number of bytes counted against the user's quota.

Format: int64

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
+  undefined/vdi-users/self/meta

200 OK chevron_right expand_more

Success

UserMetadata UserMetadata

application/json

Inherits: object

ParameterTypeDescription
quota*object

Inherits: lib.UserQuotaDetails

quota.limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

quota.usage*integer

Current number of bytes counted against the user's quota.

Format: int64

401 Unauthorized chevron_right expand_more

Unauthorized

Unauthorized UnauthorizedError

application/json

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Response Body

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
+}

500 Internal Server Error chevron_right expand_more

Internal Server Error

Internal Server Error ServerError

application/json

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Response Body

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"
@@ -1682,28 +1682,28 @@
 }

Type ShareOfferRecipient (object)

Share Offer Recipient

I AM A UNION!

Inherits: object

Model

ParameterTypeDescription
userId* User IDinteger

Format: int64

firstName First Namestring
lastName Last Namestring
organization Organizationstring
email Emailstring

Examples

{
   "userId": 123456,
   "email": "myusername@someuniversity.edu"
-}

Type DatasetPatchRequest (object)

Dataset Patch Request

Request to update the metadata for a dataset.

Inherits: object

Model

ParameterTypeDescription
visibility Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

name Dataset Namestring

User provided name for a dataset.

summary Dataset Summarystring

User provided summary for a dataset.

description Dataset Descriptionstring

User provided description for a dataset.

Type DatasetShareOffer (object)

Dataset Share Offer

An offer to share (or un-share) a dataset with a single target user.

Inherits: object

Model

ParameterTypeDescription
action* Offer Actionstring

What action to take with the dataset share offer.

Either grant or revoke.

A value of grant means the share should be offered to the user if they do not already have the dataset, or continue to be allowed if they already have access to the dataset.

A value of revoke means the share should not be offered to the target user if they do not already have the dataset, or the sharing should be stopped if the user did already have access to the dataset.

Enum:
  • grant
  • revoke

Inherits: lib.ShareOfferAction

Type DatasetShareReceipt (object)

Dataset Share Receipt

A receipt or response to a share offer of a dataset to a single user.

Inherits: object

Model

ParameterTypeDescription
action* Acknowledgement Actionstring

What action to take with acknowledging a dataset share offer.

Either accept or reject.

A value of accept means that the dataset that a share was offered for should become available to the accepting user.

A value of reject means that the dataset that a share was offered for should become unavailable to the rejecting user.

Enum:
  • accept
  • reject

Inherits: lib.ShareReceiptAction

Type PluginListItem (object)

Plugin Listing Entry

Inherits: object

Model

ParameterTypeDescription
displayName* Plugin Display Namestring
typeName* Dataset Type Namestring
typeVersion* Dataset Type Versionstring
projects Relevant Projectsarray

Projects that this plugin is restricted to. An empty or absent list indicates that the plugin has no project restrictions and may be used on any site.

projects[]string

Type UserMetadata (object)

UserMetadata

Inherits: object

Model

ParameterTypeDescription
quota*object

Inherits: lib.UserQuotaDetails

quota.limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

quota.usage*integer

Current number of bytes counted against the user's quota.

Format: int64

Type UserQuotaDetails (object)

UserQuotaDetails

Inherits: object

Model

ParameterTypeDescription
limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

usage*integer

Current number of bytes counted against the user's quota.

Format: int64

Type VDI-ID (string)

VDI ID

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

Type User-ID (integer)

VEuPathDB User ID

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

Type ProjectID (string)

Project ID

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

Type DatasetOwner (object)

Dataset Owner

Details about the owner of a VDI dataset.

Inherits: object

Model

ParameterTypeDescription
userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

firstName Owner First Namestring
lastName Owner Last Namestring
email Owner Emailstring
organization Owner Organizationstring

Type DatasetTypeInfo (object)

Dataset Type Info

Information about a specific dataset type.

Inherits: object

Model

ParameterTypeDescription
name* Type Namestring
displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

version* Type Versionstring

Type ShareOfferAction (string)

ShareOfferAction
Enum:
  • grant
  • revoke

Inherits: string

Type ShareReceiptAction (string)

ShareReceiptAction
Enum:
  • accept
  • reject

Inherits: string

Type DatasetVisibility (string)

DatasetVisibility
Enum:
  • private
  • protected
  • public

Inherits: string

Type DatasetStatusInfo (object)

Dataset Status Info

Information about the import and install status of a dataset.

Inherits: object

Model

ParameterTypeDescription
import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

installarray
install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

install[].metaMessagestring
install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

install[].dataMessagestring

Type DatasetImportStatus (string)

Dataset Import Status

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: string

Type DatasetInstallStatus (string)

Dataset Install Status
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

Type DatasetInstallStatusEntry (object)

Dataset Install Status Entry

Entry in a list of install statuses for a dataset.

Inherits: object

Model

ParameterTypeDescription
projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

metaMessagestring
dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

dataMessagestring

Type DatasetDependency (object)

DatasetDependency

Inherits: object

Model

ParameterTypeDescription
resourceIdentifier*string
resourceDisplayName*string
resourceVersion*string

Type Error (object)

Error

Discriminator: status

Inherits: object

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Type ErrorType (string)

ErrorType
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: string

Type BadRequestError (object)

Bad Request

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type DatasetPatchRequest (object)

Dataset Patch Request

Request to update the metadata for a dataset.

Inherits: object

Model

ParameterTypeDescription
visibility Dataset Visibilitystring
Enum:
  • private
  • protected
  • public

Inherits: lib.DatasetVisibility

name Dataset Namestring

User provided name for a dataset.

summary Dataset Summarystring

User provided summary for a dataset.

description Dataset Descriptionstring

User provided description for a dataset.

Type DatasetShareOffer (object)

Dataset Share Offer

An offer to share (or un-share) a dataset with a single target user.

Inherits: object

Model

ParameterTypeDescription
action* Offer Actionstring

What action to take with the dataset share offer.

Either grant or revoke.

A value of grant means the share should be offered to the user if they do not already have the dataset, or continue to be allowed if they already have access to the dataset.

A value of revoke means the share should not be offered to the target user if they do not already have the dataset, or the sharing should be stopped if the user did already have access to the dataset.

Enum:
  • grant
  • revoke

Inherits: lib.ShareOfferAction

Type DatasetShareReceipt (object)

Dataset Share Receipt

A receipt or response to a share offer of a dataset to a single user.

Inherits: object

Model

ParameterTypeDescription
action* Acknowledgement Actionstring

What action to take with acknowledging a dataset share offer.

Either accept or reject.

A value of accept means that the dataset that a share was offered for should become available to the accepting user.

A value of reject means that the dataset that a share was offered for should become unavailable to the rejecting user.

Enum:
  • accept
  • reject

Inherits: lib.ShareReceiptAction

Type PluginListItem (object)

Plugin Listing Entry

Inherits: object

Model

ParameterTypeDescription
displayName* Plugin Display Namestring
typeName* Dataset Type Namestring
typeVersion* Dataset Type Versionstring
projects Relevant Projectsarray

Projects that this plugin is restricted to. An empty or absent list indicates that the plugin has no project restrictions and may be used on any site.

projects[]string

Type UserMetadata (object)

UserMetadata

Inherits: object

Model

ParameterTypeDescription
quota*object

Inherits: lib.UserQuotaDetails

quota.limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

quota.usage*integer

Current number of bytes counted against the user's quota.

Format: int64

Type UserQuotaDetails (object)

UserQuotaDetails

Inherits: object

Model

ParameterTypeDescription
limit*integer

Max number of bytes a user is allowed to upload.

Format: int64

usage*integer

Current number of bytes counted against the user's quota.

Format: int64

Type VDI-ID (string)

VDI ID

Unique VDI Dataset identifier string.

Pattern: ^[a-zA-Z0-9_-]{14}$

Min. length: 14

Max. length: 14

Inherits: string

Type User-ID (integer)

VEuPathDB User ID

Unique user identifier

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

Type ProjectID (string)

Project ID

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

Type DatasetOwner (object)

Dataset Owner

Details about the owner of a VDI dataset.

Inherits: object

Model

ParameterTypeDescription
userId* Owner User IDinteger

VEuPathDB user ID of the owner of the dataset.

Min. value: 1

Max. value: 9223372036854776000

Format: int64

Inherits: integer

firstName Owner First Namestring
lastName Owner Last Namestring
email Owner Emailstring
organization Owner Organizationstring

Type DatasetTypeInfo (object)

Dataset Type Info

Information about a specific dataset type.

Inherits: object

Model

ParameterTypeDescription
name* Type Namestring
displayName Type Display Namestring

Display name for the type. This field is ignored in requests and will always be present in responses.

version* Type Versionstring

Type ShareOfferAction (string)

ShareOfferAction
Enum:
  • grant
  • revoke

Inherits: string

Type ShareReceiptAction (string)

ShareReceiptAction
Enum:
  • accept
  • reject

Inherits: string

Type DatasetVisibility (string)

DatasetVisibility
Enum:
  • private
  • protected
  • public

Inherits: string

Type DatasetStatusInfo (object)

Dataset Status Info

Information about the import and install status of a dataset.

Inherits: object

Model

ParameterTypeDescription
import*string

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: lib.DatasetImportStatus

installarray
install[] Dataset Install Status Entryobject

Entry in a list of install statuses for a dataset.

Inherits: lib.DatasetInstallStatusEntry

install[].projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

install[].metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

install[].metaMessagestring
install[].dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: lib.DatasetInstallStatus

install[].dataMessagestring

Type DatasetImportStatus (string)

Dataset Import Status

Import status of the dataset.

ValueDescription
queuedThe dataset has not yet been processed and is waiting in the queue.
in-progressThe dataset is currently being import processed.
completeThe dataset has been processed and imported for installation.
invalidThe dataset failed import validation.
failedThe dataset import failed due to an internal server error.
Enum:
  • queued
  • in-progress
  • complete
  • invalid
  • failed

Inherits: string

Type DatasetInstallStatus (string)

Dataset Install Status
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

Type DatasetInstallStatusEntry (object)

Dataset Install Status Entry

Entry in a list of install statuses for a dataset.

Inherits: object

Model

ParameterTypeDescription
projectId*string

Name or ID of a target VEuPathDB project.

Valid project IDs are:

  • AmoebaDB
  • ClinEpiDB
  • CryptoDB
  • FungiDB
  • GiardiaDB
  • HostDB
  • MicrobiomeDB
  • MicrosporidiaDB
  • PiroplasmaDB
  • PlasmoDB
  • ToxoDB
  • TrichDB
  • TriTrypDB
  • VectorBase
  • VEuPathDB

Inherits: string

metaStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

metaMessagestring
dataStatusstring
Enum:
  • running
  • complete
  • failed-validation
  • failed-installation
  • ready-for-reinstall
  • missing-dependency

Inherits: string

dataMessagestring

Type DatasetDependency (object)

DatasetDependency

Inherits: object

Model

ParameterTypeDescription
resourceIdentifier*string
resourceDisplayName*string
resourceVersion*string

Type Error (object)

Error

Discriminator: status

Inherits: object

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Type ErrorType (string)

ErrorType
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: string

Type BadRequestError (object)

Bad Request

Request could not be parsed or was otherwise unusable.

Discriminator: status

Discriminator value: bad-request

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "bad-request",
   "message": "malformed JSON"
-}

Type UnauthorizedError (object)

Unauthorized

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type UnauthorizedError (object)

Unauthorized

Unauthenticated client requested a resource that requires authentication.

Discriminator: status

Discriminator value: unauthorized

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "unauthorized",
   "message": "users must be logged in to access this resource"
-}

Type ForbiddenError (object)

Forbidden

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type ForbiddenError (object)

Forbidden

Server understood the request but is refusing it.

Could be caused by incorrect instructions or an authenticated client requesting a resource or action that requires permissions that the client does not have assigned.

Discriminator: status

Discriminator value: forbidden

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "forbidden",
   "message": "the current user is not permitted to perform this action"
-}

Type NotFoundError (object)

Not Found

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type NotFoundError (object)

Not Found

The requested resource was not found on this server.

Discriminator: status

Discriminator value: not-found

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "not-found",
   "message": "the requested resource could not be found"
-}

Type MethodNotAllowedError (object)

Method Not Allowed

The HTTP method used to request a resource is not allowed or configured by the server.

Discriminator: status

Discriminator value: bad-method

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type MethodNotAllowedError (object)

Method Not Allowed

The HTTP method used to request a resource is not allowed or configured by the server.

Discriminator: status

Discriminator value: bad-method

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "bad-method",
   "message": "PUT requests are not permitted on this endpoint"
-}

Type ConflictError (object)

Conflict

The request could not be completed due to a conflict with the current state of the resource.

If you submitted a resource, that resource may already exist.

Discriminator: status

Discriminator value: conflict

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type ConflictError (object)

Conflict

The request could not be completed due to a conflict with the current state of the resource.

If you submitted a resource, that resource may already exist.

Discriminator: status

Discriminator value: conflict

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "conflict",
   "message": "Target resource already exists and cannot be overwritten."
-}

Type GoneError (object)

Gone

The request could not be completed due to the requested resource or its underlying data no longer being present on the server.

Discriminator: status

Discriminator value: gone

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
+}

Type GoneError (object)

Gone

The request could not be completed due to the requested resource or its underlying data no longer being present on the server.

Discriminator: status

Discriminator value: gone

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string

Examples

{
   "status": "gone",
   "message": "The target resource or its dependencies no longer exists."
-}

Type UnprocessableEntityError (object)

Unprocessable Entity

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Examples

{
+}

Type UnprocessableEntityError (object)

Unprocessable Entity

The request payload or parameters are correctly structured but fail resource specific validation.

Discriminator: status

Discriminator value: invalid-input

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
errors*object

Additional properties: Yes

errors.general*array

Non-field specific errors.

errors.general[]string
errors.byKey*object

Field specific errors

Additional properties: Yes

errors.byKey.//*array
errors.byKey.//[]string

Examples

{
   "status": "invalid-input",
   "message": "JSON validation failed",
   "errors": {
@@ -1714,7 +1714,11 @@
       ]
     }
   }
-}

Type ServerError (object)

Internal Server Error

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Examples

{
+}

Type FailedDependencyError (object)

Failed Dependency Error

Discriminator: status

Discriminator value: failed-dependency

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
dependency*string

Examples

{
+  "status": "failed-dependency",
+  "dependency": "google.com",
+  "message": "unexpected status code 403 from google.com"
+}

Type ServerError (object)

Internal Server Error

Discriminator: status

Discriminator value: server-error

Inherits: lib.Error

Model

ParameterTypeDescription
status*string
Enum:
  • bad-request
  • unauthorized
  • forbidden
  • not-found
  • bad-method
  • conflict
  • gone
  • invalid-input
  • failed-dependency
  • server-error

Inherits: lib.ErrorType

message*string
requestId*string

Examples

{
   "status": "server-error",
   "message": "Datastore connection lost",
   "requestId": "b296c3d9-4032-41b1-906e-c97ccfc447e3"