openapi: 3.0.3 info: title: Girder REST API (Emory Digital Slide Archive) annotation assetstore API version: 3.2.14 description: OpenAPI 3.0 conversion of the Girder REST API powering the Emory Digital Slide Archive (computablebrain). Converted faithfully from the live Swagger 2.0 document at https://computablebrain.emory.edu/api/v1/describe. license: name: Apache-2.0 url: https://www.apache.org/licenses/LICENSE-2.0.txt servers: - url: https://computablebrain.emory.edu/api/v1 tags: - description: assetstore resource name: assetstore paths: /assetstore: get: operationId: assetstore_find_assetstore parameters: - name: limit in: query required: false description: Result set size limit. schema: type: integer format: int32 default: 50 - name: offset in: query required: false description: Offset into result set. schema: type: integer format: int32 default: 0 - name: sort in: query required: false description: Field to sort the result set by. schema: type: string default: name - name: sortdir in: query required: false description: 'Sort order: 1 for ascending, -1 for descending.' schema: type: integer format: int32 enum: - 1 - -1 default: 1 responses: '200': description: Success '400': description: A parameter was invalid. '403': description: You are not an administrator. summary: List assetstores. tags: - assetstore post: description: You must be an administrator to call this. operationId: assetstore_createAssetstore_post_assetstore parameters: - name: name in: query required: true description: Unique name for the assetstore. schema: type: string - name: type in: query required: true description: Type of the assetstore. schema: type: integer format: int32 - name: root in: query required: false description: Root path on disk (for filesystem type). schema: type: string - name: perms in: query required: false description: File creation permissions (for filesystem type). schema: type: string - name: db in: query required: false description: Database name (for GridFS type) schema: type: string - name: mongohost in: query required: false description: Mongo host URI (for GridFS type) schema: type: string - name: replicaset in: query required: false description: Replica set name (for GridFS type) schema: type: string - name: bucket in: query required: false description: The S3 bucket to store data in (for S3 type). schema: type: string - name: prefix in: query required: false description: Optional path prefix within the bucket under which files will be stored (for S3 type). schema: type: string default: '' - name: accessKeyId in: query required: false description: The AWS access key ID to use for authentication (for S3 type). schema: type: string - name: secret in: query required: false description: The AWS secret key to use for authentication (for S3 type). schema: type: string - name: service in: query required: false description: The S3 service host (for S3 type). Default is s3.amazonaws.com. This can be used to specify a protocol and port as well using the form [http[s]://](host domain)[:(port)]. Do not include the bucket name here. schema: type: string default: '' - name: readOnly in: query required: false description: If this assetstore is read-only, set this to true. schema: type: boolean default: false - name: region in: query required: false description: The AWS region to which the S3 bucket belongs. schema: type: string default: us-east-1 - name: inferCredentials in: query required: false description: The credentials for connecting to S3 will be inferred by Boto rather than explicitly passed. Inferring credentials will ignore accessKeyId and secret. schema: type: boolean - name: serverSideEncryption in: query required: false description: Whether to use S3 SSE to encrypt the objects uploaded to this bucket (for S3 type). schema: type: boolean default: false - name: allowS3AcceleratedTransfer in: query required: false description: Whether to allow clients to requests a data transfer using S3 transfer acceleration. schema: type: boolean default: false - name: url in: query required: false description: The base URL for the DICOMweb server (for DICOMweb) schema: type: string - name: qido_prefix in: query required: false description: The QIDO URL prefix for the server, if needed (for DICOMweb) schema: type: string - name: wado_prefix in: query required: false description: The WADO URL prefix for the server, if needed (for DICOMweb) schema: type: string - name: auth_type in: query required: false description: The authentication type required for the server, if needed (for DICOMweb) schema: type: string - name: auth_token in: query required: false description: Token for authentication if needed (for DICOMweb) schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Assetstore' '400': description: A parameter was invalid. '403': description: You are not an administrator. summary: Create a new assetstore. tags: - assetstore /assetstore/all_imports: get: operationId: assetstore_listAllImports_all_imports parameters: - name: unique in: query required: false description: If true, only show unique imports schema: type: boolean default: false - name: limit in: query required: false description: Result set size limit. schema: type: integer format: int32 default: 50 - name: offset in: query required: false description: Offset into result set. schema: type: integer format: int32 default: 0 - name: sort in: query required: false description: Field to sort the result set by. schema: type: string default: started - name: sortdir in: query required: false description: 'Sort order: 1 for ascending, -1 for descending.' schema: type: integer format: int32 enum: - 1 - -1 default: -1 responses: '200': description: Success '400': description: A parameter was invalid. summary: List all past imports for all assetstores. tags: - assetstore /assetstore/import/{id}: get: operationId: assetstore_getImport_import_id parameters: - name: id in: path required: true description: ID of an import schema: type: string responses: '200': description: Success '400': description: A parameter was invalid. summary: Get import for record from ID. tags: - assetstore /assetstore/{id}: delete: description: This will fail if there are any files in the assetstore. operationId: assetstore_deleteAssetstore_delete_id parameters: - name: id in: path required: true description: The ID of the document. schema: type: string responses: '200': description: Success '400': description: 'A parameter was invalid. The assetstore is not empty.' '403': description: You are not an administrator. summary: Delete an assetstore. tags: - assetstore get: operationId: assetstore_getAssetstore_id parameters: - name: id in: path required: true description: The ID of the document. schema: type: string responses: '200': description: Success '400': description: A parameter was invalid. '403': description: You are not an administrator. summary: Get information about an assetstore. tags: - assetstore put: operationId: assetstore_updateAssetstore_put_id parameters: - name: id in: path required: true description: The ID of the document. schema: type: string - name: name in: query required: true description: Unique name for the assetstore. schema: type: string - name: root in: query required: false description: Root path on disk (for Filesystem type) schema: type: string - name: perms in: query required: false description: File creation permissions (for Filesystem type) schema: type: string - name: db in: query required: false description: Database name (for GridFS type) schema: type: string - name: mongohost in: query required: false description: Mongo host URI (for GridFS type) schema: type: string - name: replicaset in: query required: false description: Replica set name (for GridFS type) schema: type: string - name: bucket in: query required: false description: The S3 bucket to store data in (for S3 type). schema: type: string - name: prefix in: query required: false description: Optional path prefix within the bucket under which files will be stored (for S3 type). schema: type: string default: '' - name: accessKeyId in: query required: false description: The AWS access key ID to use for authentication (for S3 type). schema: type: string - name: secret in: query required: false description: The AWS secret key to use for authentication (for S3 type). schema: type: string - name: service in: query required: false description: The S3 service host (for S3 type). Default is s3.amazonaws.com. This can be used to specify a protocol and port as well using the form [http[s]://](host domain)[:(port)]. Do not include the bucket name here. schema: type: string default: '' - name: readOnly in: query required: false description: If this assetstore is read-only, set this to true. schema: type: boolean - name: region in: query required: false description: The AWS region to which the S3 bucket belongs. schema: type: string default: us-east-1 - name: current in: query required: true description: Whether this is the current assetstore schema: type: boolean - name: inferCredentials in: query required: false description: The credentials for connecting to S3 will be inferred by Boto rather than explicitly passed. Inferring credentials will ignore accessKeyId and secret. schema: type: boolean - name: serverSideEncryption in: query required: false description: Whether to use S3 SSE to encrypt the objects uploaded to this bucket (for S3 type). schema: type: boolean default: false - name: allowS3AcceleratedTransfer in: query required: false description: Whether to allow clients to requests a data transfer using S3 transfer acceleration. schema: type: boolean default: false responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Assetstore' '400': description: A parameter was invalid. '403': description: You are not an administrator. summary: Update an existing assetstore. tags: - assetstore /assetstore/{id}/files: get: operationId: assetstore_getAssetstoreFiles_id_files parameters: - name: id in: path required: true description: The ID of the document. schema: type: string - name: limit in: query required: false description: Result set size limit. schema: type: integer format: int32 default: 50 - name: offset in: query required: false description: Offset into result set. schema: type: integer format: int32 default: 0 - name: sort in: query required: false description: Field to sort the result set by. schema: type: string default: _id - name: sortdir in: query required: false description: 'Sort order: 1 for ascending, -1 for descending.' schema: type: integer format: int32 enum: - 1 - -1 default: 1 responses: '200': description: Success '400': description: A parameter was invalid. '403': description: You are not an administrator. summary: Get a list of files controlled by an assetstore. tags: - assetstore /assetstore/{id}/import: post: description: This does not move or copy the existing data, it just creates references to it in the Girder data hierarchy. Deleting those references will not delete the underlying data. This operation is currently only supported for S3 assetstores. operationId: assetstore_importDataWrapper_post_id_import parameters: - name: id in: path required: true description: The ID of the document. schema: type: string - name: importPath in: query required: false description: Root path within the underlying storage system to import. schema: type: string - name: destinationId in: query required: true description: ID of a folder, collection, or user in Girder under which the data will be imported. schema: type: string - name: destinationType in: query required: true description: Type of the destination resource. schema: type: string enum: - folder - collection - user - name: progress in: query required: false description: Whether to record progress on the import. schema: type: boolean default: false - name: leafFoldersAsItems in: query required: false description: Whether folders containing only files should be imported as items. schema: type: boolean default: false - name: fileIncludeRegex in: query required: false description: If set, only filenames matching this regular expression will be imported. schema: type: string - name: fileExcludeRegex in: query required: false description: If set, only filenames that do not match this regular expression will be imported. If a file matches both the include and exclude regex, it will be excluded. schema: type: string - name: excludeExisting in: query required: false description: If true, then a file with an import path that is already in the system is not imported, even if it is not in the destination hierarchy. schema: type: boolean default: false responses: '200': description: Success '400': description: A parameter was invalid. '403': description: You are not an administrator. summary: Import existing data into an assetstore. tags: - assetstore /assetstore/{id}/import/single_path: post: operationId: assetstore_importSinglePath_post_id_import_single_path parameters: - name: id in: path required: true description: The ID of the document. schema: type: string - name: itemId in: query required: true description: The ID of the document. schema: type: string - name: path in: query required: true description: The new import path of the file. schema: type: string - name: name in: query required: true description: The name to use for the file. schema: type: string - name: mimeType in: query required: false description: The mimetyoe of the file. schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/File' '400': description: ID was invalid. '403': description: Write access was denied on the parent folder. summary: Import a single path into an assetstore. tags: - assetstore /assetstore/{id}/imports: get: operationId: assetstore_listImports_id_imports parameters: - name: id in: path required: true description: An assetstore ID schema: type: string - name: unique in: query required: false description: If true, only show unique imports schema: type: boolean default: false - name: limit in: query required: false description: Result set size limit. schema: type: integer format: int32 default: 50 - name: offset in: query required: false description: Offset into result set. schema: type: integer format: int32 default: 0 - name: sort in: query required: false description: Field to sort the result set by. schema: type: string default: started - name: sortdir in: query required: false description: 'Sort order: 1 for ascending, -1 for descending.' schema: type: integer format: int32 enum: - 1 - -1 default: -1 responses: '200': description: Success '400': description: A parameter was invalid. summary: List all imports for a given assetstore. tags: - assetstore components: schemas: File: type: object Assetstore: type: object securitySchemes: Girder-Token: in: header name: Girder-Token type: apiKey