api.ilepbase.com

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:

  1. GET /niche-barcoding/schemas — discover available workflows and models
  2. POST /niche-barcoding/validate — validate job configuration
  3. POST /niche-barcoding/jobs — create a job and receive upload instructions
  4. PUT /niche-barcoding/jobs/{jobId}/upload — upload input files
  5. POST /niche-barcoding/jobs/{jobId}/confirm — confirm uploads and start processing
  6. GET /niche-barcoding/jobs/{jobId} — poll job status
  7. GET /niche-barcoding/jobs/{jobId}/results — retrieve results
  8. GET /niche-barcoding/jobs/{jobId}/visualizations — retrieve visualization data
  9. GET /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/schemas

POST /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

FieldTypeRequiredDescription
workflowstringYesWorkflow identifier, such as NBSI.
modelstringYesModel identifier, such as RF.
filesobjectYesExpected 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

FieldTypeRequiredDescription
workflowstringYesWorkflow identifier.
modelstringYesModel identifier.
labelstringNoHuman-readable job label.
filesobjectYesInput 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.fasta

Query Parameters

NameTypeRequiredDescription
fileNamestringYesName of the file being uploaded.

Path Parameters

NameTypeDescription
jobIduuidJob 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/confirm

GET /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-2c963f66afa6

GET /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/results

GET /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/visualizations

GET /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

NameTypeDescription
jobIduuidJob identifier.
fileIdstringResult file name or identifier.

On this page