Projects API¶
Projects group related samples under a single study, similar to an ENA Study.
List projects¶
Response:
[
{
"accession": "NFDP-PRJ-000001",
"ena_accession": null,
"title": "Arabian Camel WGS 2026",
"description": "Whole genome sequencing study",
"project_type": "whole_genome_sequencing",
"release_date": "2026-06-01",
"license": "CC-BY",
"created_at": "2026-01-15T10:00:00"
}
]
Get project¶
Create project¶
Requires authentication.
curl -X POST http://localhost:8000/api/v1/projects/ \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Arabian Camel WGS 2026",
"description": "Whole genome sequencing of Arabian camels in Riyadh",
"project_type": "whole_genome_sequencing"
}'
Fields:
| Field | Type | Required | Description |
|---|---|---|---|
title |
string | Yes | Project title |
description |
string | No | Detailed description |
project_type |
string | Yes | e.g., whole_genome_sequencing, metagenomics |
release_date |
string | No | ISO date (YYYY-MM-DD) |
license |
string | No | Default: CC-BY |
Update project¶
Requires authentication. Only the project owner can update.
curl -X PUT http://localhost:8000/api/v1/projects/NFDP-PRJ-000001 \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Updated Title",
"description": "Updated description",
"release_date": "2026-06-01",
"license": "CC-BY-SA"
}'
Delete project¶
Requires authentication. Only works on empty projects (no samples).
curl -X DELETE http://localhost:8000/api/v1/projects/NFDP-PRJ-000001 \
-H "Authorization: Bearer $TOKEN"
FAIR score¶
Returns per-project FAIR compliance scores.
See FAIR Data Principles for details on scoring.