Fastfold Docs
Apps

Webhooks

Fold-job and workflow webhook examples using the SDK and CLI.

Use the Python SDK when webhook configuration is part of a fold-job payload under constraints.webhooks.

Use generic workflow payloads under client.workflows.create(...) or fastfold-cli workflows create ... when webhook configuration belongs inside workflow_input.

For endpoint-level configuration details, delivery semantics, and outgoing payload shapes, use the webhook reference pages:

SDK: Fold -> Evolla

from fastfold import Client

client = Client()
job = client.fold.create(
    model="boltz-2",
    sequence="MGLSDGEWQLVLNVWGKVEA...",
    constraints={
        "webhooks": {
            "evolla": {
                "enabled": True,
                "initial_question": "What is the function of this protein?",
            }
        }
    },
)
print("Fold job:", job.id)

SDK: Fold -> OpenMM

from fastfold import Client

client = Client()
job = client.fold.create(
    model="boltz-2",
    sequence="MGLSDGEWQLVLNVWGKVEA...",
    constraints={
        "webhooks": {
            "openmm": {
                "enabled": True,
                "preset": "single_af_go",
                "residue_profile": "calvados3",
                "sim_length_ns": 10,
            }
        }
    },
)
print("Fold job:", job.id)

SDK: workflow-level custom webhook toggle

When creating Evolla/OpenMM workflows, enable custom HTTP webhook in workflow_input.

from fastfold import Client

client = Client()
workflow = client.workflows.create(
    "calvados_openmm_v1",
    {
        "preset": "single_af_go",
        "name": "my-openmm-run",
        "webhooks": {
            "custom_http": {
                "enabled": True,
            }
        },
    },
    name="OpenMM with webhook",
)
print(workflow.workflow_id)

If your global custom webhook config has enabled_by_default: true, webhook delivery may be automatically enabled for new runs.

CLI: workflow webhook toggle

fastfold-cli workflows create --payload '{
  "workflow_name": "calvados_openmm_v1",
  "name": "OpenMM with webhook",
  "workflow_input": {
    "preset": "single_af_go",
    "name": "my-openmm-run",
    "webhooks": {
      "custom_http": { "enabled": true }
    }
  }
}'

For setup and payload structure details:

Last updated on

On this page