Skip to main content
POST
/
api
/
v1
/
experiments
Create experiment
curl --request POST \
  --url https://foundry-api-public.adaptyvbio.com/api/v1/experiments \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "experiment_spec": {
    "experiment_type": "affinity",
    "antigen_concentrations": [
      1000,
      316.2,
      100,
      31.6,
      0
    ],
    "method": "bli",
    "n_replicates": 3,
    "parameters": "<unknown>",
    "sequences": {},
    "target_id": "c383cc1d-fe22-5dbf-953c-378bc073019d"
  },
  "name": "<string>",
  "id": "<string>",
  "skip_draft": true,
  "webhook_url": "<string>"
}
'
{
  "experiment_id": "<string>",
  "error": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Request payload for creating or updating an experiment.

Supports upsert semantics: omit id to create a new experiment, or provide an existing experiment's UUID to update it. Created experiments start in Draft status. Updates replace sequences entirely rather than merging.

experiment_spec
object
required

Structured experiment definition (type, target, sequences, parameters)

name
string
required

Human-readable name for the experiment

id
string | null

Experiment UUID for updates. Omit to create a new experiment.

skip_draft
boolean

Bypass Draft status and submit directly for processing.

When true, the experiment is created in "Waiting for confirmation" status instead of Draft, skipping the manual review step. Use this for automated pipelines with pre-validated payloads.

When an experiment is submitted with skip_draft: true and the target has existing inventory materials, those materials are automatically linked to expedite processing.

webhook_url
string | null

URL to which experiment status updates will be POSTed

Response

Experiment updated successfully (when id provided)

Response confirming experiment creation.

experiment_id
string
required

Unique identifier assigned to the new experiment

error
string | null

Error message when the request fails validation or processing