Get data collections
This page documents both read endpoints for data collections:
- Get all data collections (paginated):
GET /data-collections - Get one collection by id:
GET /data-collections/{data_collection_id}
Get all data collections
Endpoint: GET /data-collections
Description
Returns a paginated list of data collections with an items array and a meta object (see below).
Parameters
page- integer, default1, minimum1.page_size- integer, default10, between1and10000.shared— optional boolean.falsereturns only your own collections;truereturns only collections shared with you; omit to return all you can access.
Error responses
401,422— Auth or invalidpage/page_size.500— Server error listing collections.
Responses
200— JSON withitemsandmeta:
Example response (200)
{
"items": [
{
"id": 14,
"user": { "id": 7, "email": "analyst@acme.com" },
"name": "My bundle",
"org_id": null,
"datasets": [
{
"id": 1,
"name": "Support QA - March",
"user": { "id": 7, "email": "analyst@acme.com" },
"org_id": null
}
],
"runs": [],
"created_at": "2026-04-01T09:20:00Z",
"updated_at": "2026-04-01T09:20:00Z"
}
],
"meta": {
"current_page": 1,
"page_size": 10,
"total_items": 1,
"items_on_page": 1,
"total_pages": 1,
"has_next": false,
"has_previous": false,
"next_page": null,
"previous_page": null
}
}
{
"items": [
{
"id": 0,
"user": { "id": 0, "email": "string" },
"name": "string",
"org_id": "integer | null",
"datasets": [
{
"id": 0,
"name": "string",
"user": { "id": 0, "email": "string" },
"org_id": "integer | null"
}
],
"runs": [],
"created_at": "date",
"updated_at": "date"
}
],
"meta": {
"current_page": 1,
"page_size": 10,
"total_items": 1,
"items_on_page": 1,
"total_pages": 1,
"has_next": false,
"has_previous": false,
"next_page": "integer | null",
"previous_page": "integer | null"
}
}
Each element of runs has this shape:
{
"id": 0,
"user": { "id": 0, "email": "string" },
"run_type_id": 0,
"run_source_id": 0,
"api_key_id": 0,
"dataset_id": "integer | null",
"data_collection_id": "integer | null",
"org_id": "integer | null",
"run_type": {
"id": 0,
"name": "string",
"label": "string",
"description": "string"
},
"run_source": {
"id": 0,
"name": "string",
"label": "string",
"description": "string"
},
"dataset": "DatasetResponse | null",
"number_of_metrics": 0,
"result": "number | null",
"threshold": 0,
"model_slug": "string | null",
"alias": "string | null",
"aggregate_results": "object | null",
"started_at": "date",
"finished_at": "date | null",
"created_at": "date",
"updated_at": "date | null",
"is_gte_threshold": "boolean | null"
}
When dataset on a run response is not null, it matches this object:
DatasetResponse
{
"id": 0,
"user": { "id": 0, "email": "string" },
"dataset_type_id": 0,
"name": "string",
"structure": ["string"],
"selected_metrics": "object | null",
"column_mappings": "object | null",
"data_collection_id": "integer | null",
"org_id": "integer | null",
"created_at": "date",
"updated_at": "date | null"
}
curl
curl "https://api.aegisevals.ai/api/v1/data-collections?page=1&page_size=20" \
-H "Authorization: Bearer sk_00000000000000000000000000000000"
Get data collection by id
Endpoint: GET /data-collections/{data_collection_id}
Description Returns one data collection by id if it belongs to you, including linked datasets and runs.
Parameters
- Path:
data_collection_id— integer.
Error responses (get by id)
401— Authentication failed.404— Collection not found or not yours.500— Server error.
Responses (get by id)
200— one collection object with the same JSON shape as one element ofitemsfrom the list endpoint on this page.
Example response (200)
{
"id": 14,
"user": { "id": 7, "email": "analyst@acme.com" },
"name": "My bundle",
"org_id": null,
"datasets": [
{
"id": 1,
"name": "Support QA - March",
"user": { "id": 7, "email": "analyst@acme.com" },
"org_id": null
}
],
"runs": [
{
"id": 991,
"user": { "id": 7, "email": "analyst@acme.com" },
"run_type_id": 2,
"run_source_id": 1,
"api_key_id": 12,
"dataset_id": 1,
"data_collection_id": 14,
"org_id": null,
"run_type": {"id": 2, "name": "dataset", "label": "Dataset", "description": "Run from dataset"},
"run_source": {"id": 1, "name": "api", "label": "API", "description": "Created via API"},
"dataset": {
"id": 1,
"user": { "id": 7, "email": "analyst@acme.com" },
"dataset_type_id": 1,
"name": "Support QA - March",
"structure": ["prompt", "output", "golden_answer"],
"selected_metrics": null,
"column_mappings": null,
"data_collection_id": 14,
"org_id": null,
"created_at": "2026-03-30T10:00:00Z",
"updated_at": null
},
"number_of_metrics": 2,
"result": 83.5,
"threshold": 70,
"model_slug": "gpt-4o",
"alias": "support-march",
"aggregate_results": {"ans_corr": 86, "faith": 81},
"started_at": "2026-04-01T09:12:00Z",
"finished_at": "2026-04-01T09:13:12Z",
"created_at": "2026-04-01T09:12:00Z",
"updated_at": null,
"is_gte_threshold": true
}
],
"created_at": "2026-04-01T09:20:00Z",
"updated_at": "2026-04-01T09:25:00Z"
}
curl
curl "https://api.aegisevals.ai/api/v1/data-collections/1" \
-H "Authorization: Bearer sk_00000000000000000000000000000000"