Skip to main content

Collections

Organizing Files

Collections are logical groups of EliseFiles. Use them to organize indexed documents into projects, workspaces, or any grouping that fits your workflow. A file can belong to multiple collections.

Creating a Collection

Create a new collection with a name and an optional description and icon.

curl -X POST "https://<api-domain>/api/core/collections" \
-H "Authorization: Bearer <your-pat>" \
-H "Content-Type: application/json" \
-d '{
"name": "Q1 Research Papers",
"description": "Research papers collected during Q1 review",
"icon": "folder"
}'

Listing Collections

Retrieve a paginated list of collections accessible to your account.

curl -s "https://<api-domain>/api/core/collections?page=0&pageSize=20" \
-H "Authorization: Bearer <your-pat>"

Query Parameters

ParameterTypeDefaultDescription
pageinteger0Page number (0-based)
pageSizeinteger20Number of items per page
sortBystring--Field to sort by
sortOrderstringascSort direction (asc or desc)
qstring--Text search filter on collection names

Getting a Collection

Retrieve a single collection by its UUID.

curl -s "https://<api-domain>/api/core/collections/${COLLECTION_ID}" \
-H "Authorization: Bearer <your-pat>"

Updating a Collection

Partially update a collection. Only the fields you provide will be modified.

curl -X PATCH "https://<api-domain>/api/core/collections/${COLLECTION_ID}" \
-H "Authorization: Bearer <your-pat>" \
-H "Content-Type: application/json" \
-d '{"name": "Q1 2026 Research Papers", "description": "Updated description"}'

Deleting a Collection

Delete a collection. Only the collection owner can perform this operation. Deleting a collection does not delete the files it contains.

curl -X DELETE "https://<api-domain>/api/core/collections/${COLLECTION_ID}" \
-H "Authorization: Bearer <your-pat>"
Owner Only

Only the owner of a collection can delete it. Attempting to delete a collection you do not own returns a 403 Forbidden error.

Adding Files to a Collection

Associate an existing EliseFile with a collection. The file must already exist (created via the Files endpoint).

curl -X POST "https://<api-domain>/api/core/collections/${COLLECTION_ID}/files" \
-H "Authorization: Bearer <your-pat>" \
-H "Content-Type: application/json" \
-d '{"fileId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"}'

Listing Files in a Collection

Retrieve the files belonging to a collection with pagination and optional search filtering.

Query Parameters

ParameterTypeDefaultDescription
pageinteger0Page number (0-based)
pageSizeinteger20Number of items per page
sortBystring--Field to sort by
sortOrderstringascSort direction (asc or desc)
qstring--Text search filter on file names
curl -s "https://<api-domain>/api/core/collections/${COLLECTION_ID}/files?page=0&pageSize=20" \
-H "Authorization: Bearer <your-pat>"

Removing a File from a Collection

Remove the association between a file and a collection. The EliseFile itself is not deleted.

curl -X DELETE "https://<api-domain>/api/core/collections/${COLLECTION_ID}/files/${FILE_ID}" \
-H "Authorization: Bearer <your-pat>"

Next Steps

Bulk Operations

To add multiple files to a collection, call the add file endpoint for each file. There is currently no bulk endpoint, but you can parallelize requests for efficiency.