Operations 14
Specifications
Schemas & Data
JSONSchema
https://artifacts.apis.io/emory/json-schema/emory-item-schema.json
JSONStructure
https://artifacts.apis.io/emory/json-structure/emory-item-structure.json
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/emory:emory-collection-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Girder REST API (Emory Digital Slide Archive) 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:
string:
type: string
Collection:
type: object
securitySchemes:
Girder-Token:
in: header
name: Girder-Token
type: apiKey