VoxLink.ai

API Reference

Apply automation template

Create an automation from a ready-made template and prove it with a real test run

Updated 27 July 2026

This endpoint creates an automation from a template (see List automation templates), runs a real test, and — for assistant-event templates — attaches the automation to the assistant once the test passes. It returns the same envelope as Create automation.

Templates marked side_effects: true really send messages or start calls during their test run — applying them requires confirm_side_effects: true, and the test targets the real values you supplied. Never apply a template with example or guessed values.

Path Parameters

keystringrequired

The template key (from List automation templates). An unknown key returns a 404.

Request body

paramsobject

The template's parameters as key-value pairs — see the template's params list for what each one needs. Missing required parameters return a 422 (missing_params) listing exactly what is needed. Max 64 KB.

assistant_idinteger

The assistant the resulting automation attaches to. Required for templates with requires_assistant: true.

namestring

A custom name for the automation (max 255 characters); defaults to the template name

confirm_side_effectsboolean

Required (true) for templates marked side_effects: true

Response

The Create automation envelope: automation_id, webhook_url (for webhook-triggered templates such as lead-intake-webhook and the mid-call lookup ones; null for assistant-event templates), status (active / active_untested / test_failed), test (run_status + per-step outcomes), response, binding. Returns 201 when the automation is active, 200 when its test run failed.

A template whose test run parks at a Delay step (e.g. post-call-callback) reports run_status: "PAUSED" — that is success, not a failure: every step before the delay ran, and the run resumes at the target time.

Error codes (422)

Hard failures return {"message": "...", "error": "<code>", "params": ...} and nothing is created. Notable codes:

error Meaning
missing_params Required parameters are missing — the response's params array lists their full specs.
invalid_param_choice A parameter references a resource (e.g. a spreadsheet) that does not exist in your connected account — the message lists the real choices by name.
needs_connection / needs_reconnection A required account connection is missing or broken — the message contains the exact steps to fix it in the app (one-time).
side_effects_require_confirmation The template sends for real — retry with confirm_side_effects: true.
assistant_required / assistant_not_found / binding_conflict Same as Create automation.
{
  "automation_id": "aB3xYz01MnOpQrStUvWxY",
  "webhook_url": null,
  "status": "active",
  "test": {
    "run_status": "SUCCEEDED",
    "steps": []
  },
  "response": null,
  "binding": {
    "type": "post_call",
    "assistant_id": 123,
    "bound": true
  }
}
{
  "message": "These values are required: spreadsheet_id. Ask the user for them — never guess or reuse example values.",
  "error": "missing_params",
  "params": [
    {
      "key": "spreadsheet_id",
      "label": "Google Spreadsheet ID",
      "description": "The spreadsheet to append rows to.",
      "required": true,
      "example": "1AbCdEfGhIjKlMnOpQrStUvWxYz"
    }
  ]
}
{
  "message": "No template with that key — call the template list first.",
  "error": "template_not_found",
  "params": null
}

Related guides