openapi: 3.0.3 info: title: Girder REST API (Emory Digital Slide Archive) annotation collection 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: collection resource name: collection paths: /collection: get: operationId: collection_find_collection parameters: - name: text in: query required: false description: Pass this to perform a text search for collections. 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: 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 content: application/json: schema: items: $ref: '#/components/schemas/Collection' type: array '400': description: A parameter was invalid. summary: List or search for collections. tags: - collection post: operationId: collection_createCollection_post_collection parameters: - name: name in: query required: true description: Name for the collection. Must be unique. schema: type: string - name: description in: query required: false description: Collection description. schema: type: string - name: public in: query required: false description: Whether the collection should be publicly visible. schema: type: boolean default: false responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Collection' '400': description: A parameter was invalid. '403': description: You are not authorized to create collections. summary: Create a new collection. tags: - collection /collection/details: get: operationId: collection_getCollectionsDetails_details responses: '200': description: Success '400': description: A parameter was invalid. summary: Get detailed information of accessible collections. tags: - collection parameters: [] /collection/{id}: delete: operationId: collection_deleteCollection_delete_id parameters: - name: id in: path required: true description: The ID of the document. schema: type: string responses: '200': description: Success '400': description: ID was invalid. '403': description: Admin permission denied on the collection. summary: Delete a collection by ID. tags: - collection get: operationId: collection_getCollection_id parameters: - name: id in: path required: true description: The ID of the document. schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Collection' '400': description: ID was invalid. '403': description: Read permission denied on the collection. summary: Get a collection by ID. tags: - collection put: operationId: collection_updateCollection_put_id parameters: - name: id in: path required: true description: The ID of the document. schema: type: string - name: name in: query required: false description: Unique name for the collection. schema: type: string - name: description in: query required: false description: Collection description. schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Collection' '400': description: ID was invalid. '403': description: Write permission denied on the collection. summary: Edit a collection by ID. tags: - collection /collection/{id}/access: get: operationId: collection_getCollectionAccess_id_access parameters: - name: id in: path required: true description: The ID of the document. schema: type: string responses: '200': description: Success '400': description: ID was invalid. '403': description: Admin permission denied on the collection. summary: Get the access control list for a collection. tags: - collection put: operationId: collection_updateCollectionAccess_put_id_access parameters: - name: id in: path required: true description: The ID of the document. schema: type: string - name: access in: query required: true description: The access control list as JSON. schema: type: string - name: publicFlags in: query required: false description: List of public access flags to set on the collection. schema: type: string - name: public in: query required: false description: Whether the collection should be publicly visible. schema: type: boolean - name: recurse in: query required: false description: Whether the policies should be applied to all folders under this collection as well. schema: type: boolean default: false - name: progress in: query required: false description: If recurse is set to True, this controls whether progress notifications will be sent. schema: type: boolean default: false responses: '200': description: Success '400': description: ID was invalid. '403': description: Admin permission denied on the collection. summary: Set the access control list for a collection. tags: - collection /collection/{id}/details: get: operationId: collection_getCollectionDetails_id_details 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: Read access was denied on the collection. summary: Get detailed information about a collection. tags: - collection /collection/{id}/download: get: operationId: collection_downloadCollection_id_download parameters: - name: id in: path required: true description: The ID of the document. schema: type: string - name: mimeFilter in: query required: false description: JSON list of MIME types to include. schema: type: string responses: '200': description: Success '400': description: ID was invalid. '403': description: Read access was denied for the collection. summary: Download an entire collection as a zip archive. tags: - collection /collection/{id}/metadata: delete: operationId: collection_deleteMetadata_delete_id_metadata parameters: - name: id in: path required: true description: The ID of the document. schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Collection' '400': description: 'ID was invalid. Invalid JSON passed in request body. Metadata key name was invalid.' '403': description: Write access was denied for the collection. summary: Delete metadata fields on a collection. tags: - collection requestBody: content: application/json: schema: $ref: '#/components/schemas/string' required: true description: A JSON list containing the metadata fields to delete put: description: Set metadata fields to null in order to delete them. operationId: collection_setMetadata_put_id_metadata parameters: - name: id in: path required: true description: The ID of the document. schema: type: string - name: allowNull in: query required: false description: Whether "null" is allowed as a metadata value. schema: type: boolean default: false responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Collection' '400': description: 'ID was invalid. Invalid JSON passed in request body. Metadata key name was invalid.' '403': description: Write access was denied for the collection. summary: Set metadata fields on a collection. tags: - collection requestBody: content: application/json: schema: $ref: '#/components/schemas/string' required: true description: A JSON object containing the metadata keys to add /collection/{id}/quota: get: operationId: collection_getCollectionQuota_id_quota parameters: - name: id in: path required: true description: The collection ID schema: type: string responses: '200': description: Success '400': description: ID was invalid. summary: Get quota and assetstore policies for the collection. tags: - collection put: operationId: collection_setCollectionQuota_put_id_quota parameters: - name: id in: path required: true description: The collection ID schema: type: string - name: policy in: query required: true description: A JSON object containing the policies. This is a dictionary of keys and values. Any key that is not specified does not change. schema: type: string responses: '200': description: Success '400': description: ID was invalid. summary: Set quota and assetstore policies for the collection. tags: - collection components: schemas: Collection: type: object string: type: string securitySchemes: Girder-Token: in: header name: Girder-Token type: apiKey