api.ilepbase.com

NicheBarcoding

生态位条形码工作流 — 模式发现、任务提交、状态轮询与结果下载(按 IP 限流)。

NicheBarcoding API 管理异步生态位条形码分析工作流。无需认证;按 IP 限流。

典型流程:

  1. GET /niche-barcoding/schemas — 获取可用工作流与模型
  2. POST /niche-barcoding/validate — 校验任务配置
  3. POST /niche-barcoding/jobs — 创建任务并获取上传说明
  4. PUT /niche-barcoding/jobs/{jobId}/upload — 上传输入文件
  5. POST /niche-barcoding/jobs/{jobId}/confirm — 确认上传并开始处理
  6. GET /niche-barcoding/jobs/{jobId} — 轮询任务状态
  7. GET /niche-barcoding/jobs/{jobId}/results — 获取结果
  8. GET /niche-barcoding/jobs/{jobId}/visualizations — 获取可视化数据
  9. GET /niche-barcoding/jobs/{jobId}/files/{fileId} — 下载结果文件

GET /api/v1/niche-barcoding/schemas

返回可用的 NicheBarcoding 工作流模式、模型与环境数据源,用于填充任务提交表单。

curl https://api.ilepbase.com/api/v1/niche-barcoding/schemas

POST /api/v1/niche-barcoding/validate

在提交前校验 NicheBarcoding 任务配置。若存在问题则返回校验信息。

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"
    }
  }'

请求体

字段类型必填描述
workflowstring是工作流标识,如 NBSI。
modelstring是模型标识,如 RF。
filesobject是按角色键名的预期输入文件名。

POST /api/v1/niche-barcoding/jobs

提交新的 NicheBarcoding 任务,返回任务 ID 及输入文件上传地址。

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"
    }
  }'

请求体

字段类型必填描述
workflowstring是工作流标识。
modelstring是模型标识。
labelstring否可读的任务标签。
filesobject是按角色键名的输入文件名。

PUT /api/v1/niche-barcoding/jobs/{jobId}/upload

为 NicheBarcoding 任务上传输入文件。通过查询参数 fileName 指定文件名。请求体为二进制流(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

查询参数

名称类型必填描述
fileNamestring是正在上传的文件名。

路径参数

名称类型描述
jobIduuid任务 ID。

POST /api/v1/niche-barcoding/jobs/{jobId}/confirm

确认所有输入文件已上传完毕,任务可以开始处理。

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}

获取 NicheBarcoding 任务当前状态(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

获取已完成 NicheBarcoding 任务的输出结果。任务尚未完成时返回 409。

curl https://api.ilepbase.com/api/v1/niche-barcoding/jobs/3fa85f64-5717-4562-b3fc-2c963f66afa6/results

GET /api/v1/niche-barcoding/jobs/{jobId}/visualizations

获取已完成 NicheBarcoding 任务的可视化数据(概率序列、物种摘要、地图点位、PCA 预览等)。

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}

从已完成的 NicheBarcoding 任务下载指定结果文件,以二进制流返回。

curl -L -o output.csv \
  "https://api.ilepbase.com/api/v1/niche-barcoding/jobs/3fa85f64-5717-4562-b3fc-2c963f66afa6/files/output.csv"

路径参数

名称类型描述
jobIduuid任务 ID。
fileIdstring结果文件名或标识。

目录