Manifest Endpoints
The manifest endpoints are used to manage and retrieve information about sample manifests, including fetching manifests, sample records and validation reports.
Note
The examples below use API endpoints from the live COPO website.
To use the demo website instead, replace https://copo-project.org/api/
with https://demo.copo-project.org/api/ in the URLs.
Tip
To view details of the endpoint, click the
Show endpoint details button.Then, inside that section, click the
Show API query parameters button to see input parameter details.-
By default, the API returns results in JSON format and uses the Tree of Life (ToL) standard. You do not need to specify these unless you want to override them.
To explicitly include them in the API URL:
Use
?return_type=jsonor?standard=tolif there are no other query parameters.Use
&return_type=jsonor&standard=tolif the URL already includes other parameters.
See also
See term Manifest for more information.
Fetch Manifests
Show endpoint details
Usage
This endpoint returns a list of manifest IDs of sample records.
After having retrieved a
manifest_idvalue, you can use it to retrieve full sample information using the Fetch Sample in Manifest by Manifest ID endpoint or updates using the Fetch Sample Updates by Manifest ID endpoint.https://copo-project.org/api/manifest$ curl -X GET "https://copo-project.org/api/manifest" -H "accept: application/json"
Fetch Manifests Filtered by Sequencing Centre
Show endpoint details
Show API query parameters
Tip
Filters are applied by appending them as query parameters in the API URL. See the Usage and Example sections for details.
sequencing_centre (required): The name of the sequencing centre used to filter sample records. Choose from the list of available sequencing centres provided in this endpoint.
return_type (optional): Output format for the results. Options include json (default) and csv
Usage
Please include at least the
sequencing_centreparameter value in the API URL to retrieve a list of manifest IDs records by that sequencing centre. Replace<sequencing-centre>with the desired sequencing centre name.https://copo-project.org/api/manifest/sequencing_centre?sequencing_centre=<sequencing-centre>$ curl -X GET "https://copo-project.org/api/manifest/sequencing_centre?sequencing_centre=<sequencing-centre>" -H "accept: application/json"
Example
To retrieve manifest IDs associated with the sequencing centre
EARLHAM INSTITUTEin the default JSON format, use the following URL.https://copo-project.org/api/manifest/sequencing_centre?sequencing_centre=EARLHAM%20INSTITUTE$ curl -X GET "https://copo-project.org/api/manifest/sequencing_centre?sequencing_centre=EARLHAM%20INSTITUTE" -H "accept: application/json"
Fetch Current Manifest Versions
Show endpoint details
Show API query parameters
Tip
Filters are applied by appending them as query parameters in the API URL. See the Usage and Example sections for details.
manifest_type (optional): The type of the manifest [2]. If no manifest type is provided, COPO returns a list of project names along with the latest manifest version associated with each.
return_type (optional): Output format for the results. Options include json (default) and csv
Usage
https://copo-project.org/api/manifest/current_version$ curl -X GET "https://copo-project.org/api/manifest/current_version" -H "accept: application/json"
Example
To retrieve the current manifest version of the
DTOLproject in the default JSON format, use the following URL.https://copo-project.org/api/manifest/current_version?manifest_type=DTOL$ curl -X GET "https://copo-project.org/api/manifest/current_version?manifest_type=DTOL" -H "accept: application/json"
Fetch Sample in Manifest by Manifest ID
Show endpoint details
Show API query parameters
Tip
Filters are applied by appending them as query parameters in the API URL. See the Usage and Example sections for details.
Usage
Please include at least the
manifest_idparameter value in the API URL to retrieve sample records for that manifest. Replace{manifest_id}with the desired manifest ID.https://copo-project.org/api/manifest/{manifest_id}$ curl -X GET "https://copo-project.org/api/manifest/{manifest_id}" -H "accept: application/json"
Example
To retrieve sample records for the manifest ID
f8e5c23d-f735-439f-bfaf-a6886e31741ein therocrateformat, use the following URL.https://copo-project.org/api/manifest/f8e5c23d-f735-439f-bfaf-a6886e31741e?return_type=rocrate$ curl -X GET "https://copo-project.org/api/manifest/f8e5c23d-f735-439f-bfaf-a6886e31741e?return_type=rocrate" -H "accept: application/json"
Fetch Manifests between Dates
Show endpoint details
Show API query parameters
Tip
Filters are applied by appending them as query parameters in the API URL. See the Usage and Example sections for details.
from (required): Start date for filtering (format: YYYY-MM- DDTHH:MM:SS+00:00)
to (required): End date for filtering (format: YYYY-MM- DDTHH:MM:SS+00:00)
return_type (optional): Output format for the results. Options include json (default) and csv
Usage
Please include at least the
fromandtoparameter values in the API URL to retrieve a list of manifest IDs [1] in a given date period. Replace{from}and{to}with the desired start and end dates respectively.https://copo-project.org/api/manifest/{from}/{to}$ curl -X GET "https://copo-project.org/api/manifest/{from}/{to}" -H "accept: application/json"Example
To retrieve manifest IDs recorded between 1st January, 2025 and 1st May, 2025 in the default JSON format, use the following URL.
https://copo-project.org/api/manifest/2025-01- 01T00:00:00+00:00/2025-05-01T00:00:00+00:00$ curl -X GET "https://copo-project.org/api/manifest/2025-01- 01T00:00:00+00:00/2025-05-01T00:00:00+00:00" -H "accept: application/json"
Fetch Manifests between Dates for a Project
Show endpoint details
Show API query parameters
Tip
Filters are applied by appending them as query parameters in the API URL. See the Usage and Example sections for details.
project (required): The name of the project [2]
from (required): Start date for filtering (format: YYYY-MM- DDTHH:MM:SS+00:00)
to (required): End date for filtering (format: YYYY-MM- DDTHH:MM:SS+00:00)
return_type (optional): Output format for the results. Options include json (default) and csv
Usage
Please include at least the
project,fromandtoparameter values in the API URL to retrieve a list of manifest IDs [1] in a given date period for that project. Replace{project},{from}and{to}with the desired start and end dates respectively.https://copo-project.org/api/manifest/{project}/{from}/{to}$ curl -X GET "https://copo- project.org/api/manifest/{project}/{from}/{to}" -H "accept: application/json"Example
To retrieve manifest IDs for the
ERGAproject recorded between 1st January, 2025 and 1st May, 2025 in the default JSON format, use the following URL.https://copo-project.org/api/manifest/erga/2025-01- 01T00:00:00+00:00/2025-05-01T00:00:00+00:00$ curl -X GET "https://copo-project.org/api/manifest/erga/2025-01- 01T00:00:00+00:00/2025-05-01T00:00:00+00:00" -H "accept: application/json"
Fetch Sample Status in a Manifest
Show endpoint details
Show API query parameters
Tip
Filters are applied by appending them as query parameters in the API URL. See the Usage and Example sections for details.
manifest_id (required):The manifest ID [1] assigned to sample records.
return_type (optional): Output format for the results. Options include json (default) and csv
Usage
Please include at least the
manifest_idparameter value in the API URL to retrieve minimal sample status information for each sample for that manifest ID. Replace{manifest_id}with the desired manifest ID.https://copo-project.org/api/manifest/{manifest_id}/sample_status$ curl -X GET "https://copo- project.org/api/manifest/{manifest_id}/sample_status" -H "accept: application/json"
Example
To retrieve status information for sample records with the manifest ID
f8e5c23d-f735-439f-bfaf-a6886e31741ein the default CSV format, use the following URL.The browser method will prompt a download of the CSV while the curl method is helpful if you are scripting or working in a terminal environment.
https://copo-project.org/api/manifest/f8e5c23d-f735-439f-bfaf- a6886e31741e/sample_status?return_type=csv$ curl -X GET "https://copo-project.org/api/manifest/f8e5c23d- f735-439f-bfaf-a6886e31741e/sample_status?return_type=csv" -H "accept: application/json"
Validate Manifest by Profile ID
Show endpoint details
Show API query parameters
Note
Authentication is required in order to use this API method. Create an API key from the /apiKey API endpoint before using this method.
profile_id (required): The identifier of the profile associated with the manifest to be validated.
file (optional): The manifest file to be validated. This should be a valid CSV or XLSX manifest file.
Usage
Please include at least the
profile_idparameter value in the API URL to validate a manifest associated with that profile and receive the validation report ID. Replace{profile_id}with the profile ID.After having retrieved the validation report ID, you can use it to retrieve the validation report using the Validate Manifest by Report ID endpoint.
https://copo-project.org/api/manifest/validate$ curl -X POST "https://copo-project.org/api/manifest/validate" -H "accept: */*" -d "title=<title>&description=<description>&profile_ type=<profile_type>"
Validate Manifest by Report ID
Show endpoint details
Show API query parameters
Note
Authentication is required in order to use this API method. Create an API key from the /apiKey API endpoint before using this method.
validation_report_id (required): The identifier of the validation report.
Usage
Please include the
validation_report_idparameter value in the API URL to retrieve the manifest validation report associated with that ID.https://copo-project.org/api/manifest/validate/report$ curl -X POST "https://copo- project.org/api/manifest/validate/report" -H "accept: */*" -d "ti tle=<title>&description=<description>&profile_type=<profile_type>"
Validate Manifest
Show endpoint details
Usage
This endpoint all manifest validations performed by the authenticated user.
https://copo-project.org/api/manifest/validations$ curl -X POST "https://copo- project.org/api/manifest/validations/" -H "accept: */*" -d ""
Footnotes