Sample Groups
Returns sample groups for the current user, or team-scoped when team is set. Personal lists annotate sample_count for non-archived samples only.
Token-based authentication with required prefix "Token"
Team name; when set, list groups owned by that team.
GET /api/sample-groups/ HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
{
"data": [
{
"id": 1,
"name": "text",
"description": "text",
"group_type": "text",
"user_owner": "text",
"team_owner": "text",
"created_date": "2026-01-01T00:00:00.000Z",
"is_private": true,
"sample_count": 1,
"resolved_image": "text"
}
]
}Creates a sample group. Defaults to personal ownership unless team_owner is set (requires create permission on the team).
Token-based authentication with required prefix "Token"
POST /api/sample-groups/ HTTP/1.1
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 156
{
"name": "text",
"description": "text",
"group_type": "text",
"user_owner": "text",
"team_owner": "text",
"created_date": "2026-01-01T00:00:00.000Z",
"is_private": true
}{
"data": {
"id": 1,
"name": "text",
"description": "text",
"group_type": "text",
"user_owner": "text",
"team_owner": "text",
"created_date": "2026-01-01T00:00:00.000Z",
"is_private": true,
"sample_count": 1,
"resolved_image": "text"
}
}Returns sample group details when the caller may view the group. For private groups the caller cannot access, returns 403 with is_private and name.
Token-based authentication with required prefix "Token"
Private group; body includes is_private and name (not wrapped in data).
GET /api/sample-groups/{id}/ HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
{
"data": {
"id": 1,
"name": "text",
"description": "text",
"group_type": "text",
"user_owner": "text",
"team_owner": "text",
"created_date": "2026-01-01T00:00:00.000Z",
"is_private": true,
"sample_count": 1,
"resolved_image": "text"
}
}Token-based authentication with required prefix "Token"
DELETE /api/sample-groups/{id}/ HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
{
"data": {
"success": true
}
}Token-based authentication with required prefix "Token"
PATCH /api/sample-groups/{id}/ HTTP/1.1
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 156
{
"name": "text",
"description": "text",
"group_type": "text",
"user_owner": "text",
"team_owner": "text",
"created_date": "2026-01-01T00:00:00.000Z",
"is_private": true
}{
"data": {
"id": 1,
"name": "text",
"description": "text",
"group_type": "text",
"user_owner": "text",
"team_owner": "text",
"created_date": "2026-01-01T00:00:00.000Z",
"is_private": true,
"sample_count": 1,
"resolved_image": "text"
}
}Adds samples to a sample group by sample_ids or select_all with filters. Private samples are skipped when adding to a public group.
Token-based authentication with required prefix "Token"
Sample group primary key.
Sample primary keys to add or remove (int or list).
When true, apply filters instead of sample_ids.
falseInvalid request body.
Insufficient permission on this sample group.
Sample group or matching samples not found.
POST /api/sample-groups/{id}/add-samples/ HTTP/1.1
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 82
{
"sample_ids": [
1
],
"select_all": false,
"filters": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}{
"data": {
"added_count": 1,
"skipped_existing_count": 1,
"skipped_private_sample_count": 1,
"total_matched": 1,
"sample_added_ids_sample": [
1
],
"message": "text"
}
}Removes samples from a sample group by sample_ids or select_all with filters (restricted to memberships already in the group).
Token-based authentication with required prefix "Token"
Sample group primary key.
Sample primary keys to add or remove (int or list).
When true, apply filters instead of sample_ids.
falseInvalid request body.
Insufficient permission on this sample group.
Sample group or matching samples not found.
POST /api/sample-groups/{id}/remove-samples/ HTTP/1.1
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 82
{
"sample_ids": [
1
],
"select_all": false,
"filters": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}{
"data": {
"removed_count": 1,
"total_matched": 1,
"message": "text"
}
}Returns every sample group the authenticated user can access, grouped by personal and each team name.
Token-based authentication with required prefix "Token"
GET /api/sample-groups/me/ HTTP/1.1
Authorization: YOUR_API_KEY
Accept: */*
{
"data": {
"ANY_ADDITIONAL_PROPERTY": [
{
"id": 1,
"name": "text",
"description": "text",
"group_type": "text",
"user_owner": "text",
"team_owner": "text",
"created_date": "2026-01-01T00:00:00.000Z",
"is_private": true,
"sample_count": 1,
"resolved_image": "text"
}
]
}
}Last updated
Was this helpful?