pipelines-public

Submit a pipeline run

Submit a pipeline run from an existing template, or from a new pipeline graph.

Provide a bindings map, which defines the molecules/files you want to use for each input node in your pipeline. If your input contains chains, define the mapping of chain IDs between your molecule and the pipeline's reference/default (if running against an existing template).

Bindings may be defined as an array of sequences, smiles, or sdf/pdb files (uploaded using the /upload endpoint), or an existing molecule group id (created using /molecules/groups below).

If applicable, put residue selections inside each binding's residuesByChain for the tools that require hotspots / designed residues. Two shapes, auto-detected by the value: SIMPLE {chain: ranges} (a chain maps to a range string) fans one selection to every residue field the input feeds; ADVANCED {toolNodeId: {field: {chain: ranges}}} (a node maps to a per-field object) picks per (tool node, field). An inline submit is stamped Simplified/Advanced from the shape you send; picks under each binding are merged. Chain and residue selections can also be supplied in tool-node settings or top-level per-node settings. Reference chain labels follow chainMapping. Conflicting inline and binding residue selections are rejected.

The response returns as soon as the run is accepted, with status queued and no node runs yet. Poll GET /pipelines/runs/{run_id} for progress; it returns 404 for the few seconds until the engine records the run, and problems found while the engine resolves the run are reported there as a failed run.

Choose from your pipelines or example templates to view example scripts.

post/api/pipelines/submit

Request

  • Base URL: https://app.tamarind.bio
  • URL: https://app.tamarind.bio/api/pipelines/submit
  • Auth: API key in header x-api-key

Headers

Idempotency-Keystring nullable

Request body

pipelinePipelineIR

A pipeline IR document. Full schema (typed, versioned): https://tamarind.bio/schemas/pipeline-v1.json

templateIdstring nullable

REFERENCE mode: an existing template id to run.

namestring required

Name for this pipeline. When runName is omitted, the run's JobName is derived from this (spaces removed, a random suffix appended for uniqueness).

runNamestring nullable

Optional explicit JobName for THIS run. Spaces are replaced with underscores; used verbatim otherwise (no random suffix). Omit to auto-generate a unique JobName from name.

versionstring nullable

REFERENCE mode: a version handle e.g. 'v1'; absent -> default.

bindingsobject required

One binding per input slot, keyed by the slot's input-node id. Bindings may be defined as an array of sequences, smiles, or sdf/pdb files (uploaded using the /upload endpoint), or an existing molecule group id (created using /molecules/groups below).

settingsobject nullable

Per-node settings {nodeId: {settingKey: value}}. Chain and residue selections may be supplied here alongside ordinary settings. For existing templates, ordinary settings must be editable. Chain labels use reference space and follow chainMapping; inline residue selections must agree with overlapping binding selections.

source'production' | 'test'
projectstring nullable

Organization project id to stamp on jobs this run creates.

idempotencyKeystring nullable

Client key to safely retry a submit (≤255).

jobSourcestring nullable

Submission channel: "cli", "mcp", or "api". Ignored for session-authenticated callers.

Example request

{
  "bindings": {
    "target": {
      "group": "3f8a1c2e-5b7d-4e9f-a1b2-c3d4e5f6a7b8"
    }
  },
  "name": "binder-design v2 experiment",
  "project": "proj_…",
  "settings": {
    "design": {
      "numSequences": 32
    }
  },
  "templateId": "3f2a1c9e-8b7d-4e6f-a1b2-c3d4e5f60718",
  "version": "v1"
}

Response

Successful Response

idstring required
templateIdstring required
templateVersionstring nullable required

The executed version handle e.g. 'v1'.

namestring nullable required
source'production' | 'test' required
status'queued' | 'running' | 'finished' | 'partial' | 'stopped' | 'failed' required
startedAtstring required
completedAtstring nullable required
inputsobject required

The recorded inputs (input-node id -> {group} or {file}).

Changes

No recorded changes to this operation across all 1 revision of this API.