---
id: workflow-alias-activate
title: Activate an alias
description: >-
  Turns the alias on: every trigger on its revision registers, so cron schedules
  start firing, webhooks get a public URL, and event subscriptions are created.
  Until this call, a published workflow has zero side effects.
sidebar_label: Activate an alias
hide_title: true
hide_table_of_contents: true
api: >-
  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
sidebar_class_name: post api-method
info_path: docs/api/nullplatform-api
custom_edit_url: null
canonical: 'https://docs.nullplatform.com/docs/api/workflow-alias-activate'
---
<Heading
  as={"h1"}
  className={"openapi__heading"}
  children={"Activate an alias"}
>
</Heading>

<MethodEndpoint
  method={"post"}
  path={"/workflows/definitions/{id}/aliases/{alias}/activate"}
  context={"endpoint"}
>

</MethodEndpoint>

Turns the alias on: every trigger on its revision registers, so cron schedules start firing, webhooks get a public URL, and event subscriptions are created. Until this call, a published workflow has zero side effects.

- If any trigger fails to register, the response is still 200 but the alias rolls back to inactive: check `failedTriggers` for the reason.
- `latest` cannot be activated. Create a named alias (for example `live`) first.

<Heading
  id={"request"}
  as={"h2"}
  className={"openapi-tabs__heading"}
  children={"Request"}
>
</Heading>

<ParamsDetails
  parameters={[{"in":"path","name":"id","required":true,"schema":{"type":"string"},"description":"Workflow reference: a server-minted id (`wf_...`) or the workflow's client-chosen key (lowercase slug, unique per organization).","example":"wf_ifWBbWfpug0n"},{"in":"path","name":"alias","required":true,"schema":{"type":"string"},"description":"The alias name. `latest` is reserved and auto-maintained.","example":"live"}]}
>

</ParamsDetails>

<RequestSchema
  title={"Body"}
  body={undefined}
>

</RequestSchema>

<StatusCodes
  id={undefined}
  label={undefined}
  responses={{"200":{"description":"The activation outcome, including per-trigger results.","content":{"application/json":{"schema":{"type":"object","properties":{"alias":{"title":"Alias","type":"object","required":["workflowId","name","revision","active","updatedAt"],"properties":{"workflowId":{"type":"string","example":"wf_ifWBbWfpug0n"},"name":{"type":"string","example":"live"},"revision":{"type":"integer","example":3},"active":{"type":"boolean","description":"Whether the alias's triggers are activated."},"updatedAt":{"type":"string","format":"date-time"},"updatedBy":{"type":"string"},"metadata":{"type":"object"},"triggerStates":{"type":"object","description":"Map of trigger id to its activation state.","additionalProperties":{"title":"TriggerState","type":"object","properties":{"status":{"type":"string","enum":["pending","live","failed","inactive"]},"activatedAt":{"type":"string","format":"date-time"},"deactivatedAt":{"type":"string","format":"date-time"},"lastError":{"type":"object","properties":{"message":{"type":"string"},"code":{"type":"string"}}},"runtimeMetadata":{"type":"object","description":"Runtime data such as the trigger's `webhookUrl`.","properties":{"webhookUrl":{"type":"string"}},"additionalProperties":true}}}}}},"activatedTriggers":{"type":"array","items":{"type":"string"}},"failedTriggers":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"pluginType":{"type":"string"},"status":{"type":"string","enum":["failed"]},"error":{"type":"string"}}}},"triggerResults":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"pluginType":{"type":"string"},"status":{"type":"string","enum":["active","failed"]},"error":{"type":"string"}}}}}}}}},"4XX":{"description":"Client error. The body says what went wrong: an error `type`, a human-readable `detail`, and, on validation failures, one entry per offending field.","content":{"application/problem+json":{"schema":{"title":"Problem","type":"object","description":"The standard error body (RFC 7807 problem details, served as `application/problem+json`).","properties":{"type":{"type":"string","description":"Error type URI, e.g. `https://workflow-system.dev/errors/workflow-not-found`.","example":"https://workflow-system.dev/errors/workflow-not-found"},"title":{"type":"string","example":"Not found"},"status":{"type":"integer","example":404},"detail":{"type":"string","example":"No workflow with id wf_ifWBbWfpug0n exists"},"instance":{"type":"string","example":"/workflows/definitions/wf_ifWBbWfpug0n"},"errors":{"type":"array","description":"Present on validation failures: one entry per offending field.","items":{"type":"object","properties":{"path":{"type":"string","example":"/steps/scan/config"},"message":{"type":"string","example":"must have required property 'code'"}}}}}}}}},"5XX":{"description":"Unexpected server error.","content":{"application/problem+json":{"schema":{"title":"Problem","type":"object","description":"The standard error body (RFC 7807 problem details, served as `application/problem+json`).","properties":{"type":{"type":"string","description":"Error type URI, e.g. `https://workflow-system.dev/errors/workflow-not-found`.","example":"https://workflow-system.dev/errors/workflow-not-found"},"title":{"type":"string","example":"Not found"},"status":{"type":"integer","example":404},"detail":{"type":"string","example":"No workflow with id wf_ifWBbWfpug0n exists"},"instance":{"type":"string","example":"/workflows/definitions/wf_ifWBbWfpug0n"},"errors":{"type":"array","description":"Present on validation failures: one entry per offending field.","items":{"type":"object","properties":{"path":{"type":"string","example":"/steps/scan/config"},"message":{"type":"string","example":"must have required property 'code'"}}}}}}}}}}}
>

</StatusCodes>

