NicheBarcoding
Ecological niche barcoding workflow — schema discovery, job submission, status polling, and result download (rate limited per IP).
The NicheBarcoding API manages asynchronous ecological niche barcoding workflows. No authentication required; rate limited per IP.
Typical workflow:
GET /niche-barcoding/schemas— discover available workflows and modelsPOST /niche-barcoding/validate— validate job configurationPOST /niche-barcoding/jobs— create a job and receive upload instructionsPUT /niche-barcoding/jobs/{jobId}/upload— upload input filesPOST /niche-barcoding/jobs/{jobId}/confirm— confirm uploads and start processingGET /niche-barcoding/jobs/{jobId}— poll job statusGET /niche-barcoding/jobs/{jobId}/results— retrieve resultsGET /niche-barcoding/jobs/{jobId}/visualizations— retrieve visualization dataGET /niche-barcoding/jobs/{jobId}/files/{fileId}— download a result file
GET /api/v1/niche-barcoding/schemas
Returns available NicheBarcoding workflow schemas, models, and environment sources. Use to populate the job submission form.
curl https://api.ilepbase.com/api/v1/niche-barcoding/schemasPOST /api/v1/niche-barcoding/validate
Validates a NicheBarcoding job configuration before submission. Returns validation issues if any.
curl -X POST https://api.ilepbase.com/api/v1/niche-barcoding/validate \
-H "Content-Type: application/json" \
-d '{
"workflow": "NBSI",
"model": "RF",
"files": {
"referenceSequence": "ref.fasta",
"querySequence": "query.fasta"
}
}'Request Body
| Field | Type | Required | Description |
|---|---|---|---|
workflow | string | Yes | Workflow identifier, such as NBSI. |
model | string | Yes | Model identifier, such as RF. |
files | object | Yes | Expected input file names keyed by role. |
POST /api/v1/niche-barcoding/jobs
Submit a new NicheBarcoding job. Returns a job ID and upload URLs for input files.
curl -X POST https://api.ilepbase.com/api/v1/niche-barcoding/jobs \
-H "Content-Type: application/json" \
-d '{
"workflow": "NBSI",
"model": "RF",
"label": "My NBSI analysis",
"files": {
"referenceSequence": "ref.fasta",
"querySequence": "query.fasta"
}
}'Request Body
| Field | Type | Required | Description |
|---|---|---|---|
workflow | string | Yes | Workflow identifier. |
model | string | Yes | Model identifier. |
label | string | No | Human-readable job label. |
files | object | Yes | Input file names keyed by role. |
PUT /api/v1/niche-barcoding/jobs/{jobId}/upload
Upload an input file for a NicheBarcoding job. Pass fileName as a query parameter. Request body is raw binary (application/octet-stream).
curl -X PUT "https://api.ilepbase.com/api/v1/niche-barcoding/jobs/3fa85f64-5717-4562-b3fc-2c963f66afa6/upload?fileName=ref.fasta" \
-H "Content-Type: application/octet-stream" \
--data-binary @ref.fastaQuery Parameters
| Name | Type | Required | Description |
|---|---|---|---|
fileName | string | Yes | Name of the file being uploaded. |
Path Parameters
| Name | Type | Description |
|---|---|---|
jobId | uuid | Job identifier. |
POST /api/v1/niche-barcoding/jobs/{jobId}/confirm
Confirm that all input files have been uploaded and the job can begin processing.
curl -X POST https://api.ilepbase.com/api/v1/niche-barcoding/jobs/3fa85f64-5717-4562-b3fc-2c963f66afa6/confirmGET /api/v1/niche-barcoding/jobs/{jobId}
Get the current status of a NicheBarcoding job (pending, running, succeeded, failed).
curl https://api.ilepbase.com/api/v1/niche-barcoding/jobs/3fa85f64-5717-4562-b3fc-2c963f66afa6GET /api/v1/niche-barcoding/jobs/{jobId}/results
Get the output results of a completed NicheBarcoding job. Returns 409 if the job is not yet finished.
curl https://api.ilepbase.com/api/v1/niche-barcoding/jobs/3fa85f64-5717-4562-b3fc-2c963f66afa6/resultsGET /api/v1/niche-barcoding/jobs/{jobId}/visualizations
Get visualization data (probability series, species summary, map points, PCA preview) for a completed NicheBarcoding job.
curl https://api.ilepbase.com/api/v1/niche-barcoding/jobs/3fa85f64-5717-4562-b3fc-2c963f66afa6/visualizationsGET /api/v1/niche-barcoding/jobs/{jobId}/files/{fileId}
Download a specific result file from a completed NicheBarcoding job. Returns the file as a binary stream.
curl -L -o output.csv \
"https://api.ilepbase.com/api/v1/niche-barcoding/jobs/3fa85f64-5717-4562-b3fc-2c963f66afa6/files/output.csv"Path Parameters
| Name | Type | Description |
|---|---|---|
jobId | uuid | Job identifier. |
fileId | string | Result file name or identifier. |