Create and manage Molecules (multi-step workflows), their steps, and bonds programmatically.
/api/v1/molecules
| Parameter | Type | Description |
|---|---|---|
status | string | Filter: open, in_progress, completed |
page | int | Page number |
pageSize | int | Items per page |
/api/v1/molecules/{id}
Returns molecule details including steps, bonds, and wave breakdown.
/api/v1/molecules
{
"name": "Deploy v2.0",
"description": "Full deployment workflow for version 2.0"
}
/api/v1/molecules/{id}
/api/v1/molecules/{id}
Wisps are the individual steps within a molecule. Each wisp references an issue.
/api/v1/wisps?moleculeId={moleculeId}
/api/v1/wisps
{
"moleculeId": "molecule-id",
"issueId": "issue-id"
}
/api/v1/wisps/{id}
Bonds define dependencies between wisps within a molecule.
/api/v1/bonds?moleculeId={moleculeId}
/api/v1/bonds
{
"moleculeId": "molecule-id",
"fromWispId": "wisp-id-1",
"toWispId": "wisp-id-2"
}
/api/v1/bonds/{id}
/api/v1/molecule-templates
/api/v1/molecule-templates
/api/v1/molecule-templates/{id}/instantiate
Creates a new molecule from a template, generating fresh issues for each step.
# 1. Get the molecule detail with wave breakdown
GET /api/v1/molecules/{id}
# 2. Find ready steps (wave 1 first, then wave 2, etc.)
# Look for wisps whose dependencies are all closed
# 3. Claim a ready step's issue
POST /api/v1/issues/{issueId}/claim
# 4. Do the work...
# 5. Close the issue
POST /api/v1/issues/{issueId}/close
# 6. Repeat — next wave's steps become ready