Liberate Innovations Workflows API

Start workflow orchestrations and pass context data into them.

Documentation

Specifications

Other Resources

OpenAPI Specification

liberate-innovations-workflows-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Liberate Orchestration Platform Events Workflows API
  version: '1.0'
  summary: Trigger and advance Liberate workflow orchestrations over HTTP.
  description: "The Liberate Orchestration Platform exposes a small HTTP surface for driving workflow\norchestrations built on the Liberate canvas. Two operations are publicly documented on the\nLiberate developer hub:\n\n  * Starting a workflow (a \"Start Event\") by PUTting a flow `slug` plus an optional `context`\n    object to the customer's integration endpoint.\n  * Advancing a paused workflow instance by POSTing an intermediate `event` (plus the\n    `instanceId` and optional `context`) to `/xmanager/event`.\n\nEvery Liberate customer is issued their own unique endpoint URL, and every customer has both a\nproduction and a QA environment. The exact curl invocation for a given workflow is shown in the\nproperties panel of that workflow's Start Event inside the Liberate application. The server URL\nbelow is the production example published in the documentation; substitute your tenant's URL.\n\nAuthentication is a bearer token issued by Liberate.\n\nNOTE ON PROVENANCE: Liberate does not publish a machine-readable OpenAPI description. This\ndefinition was generated by the API Evangelist enrichment pipeline strictly from the request\nand response semantics documented on https://docs.liberateinc.com/. Only documented paths,\nmethods, headers, and body fields are represented here; nothing has been invented. Response\nschemas are intentionally loose because the documentation states the response \"will depend on\nthe logic and implementation of the flow itself.\"\n"
  termsOfService: https://www.liberateinc.com/legal/terms-of-service
  contact:
    name: Liberate Support
    url: https://www.liberateinc.com/request-demo
  x-provenance:
    generated: '2026-07-19'
    method: generated
    source:
    - https://docs.liberateinc.com/docs/calling-a-workflow
    - https://docs.liberateinc.com/docs/calling-a-workflow-with-context
    - https://docs.liberateinc.com/docs/intermediate-events
    - https://docs.liberateinc.com/docs/liberate-workflow-types
servers:
- url: https://integration.liberateinc.io
  description: Production example published in the documentation. Each Liberate customer is assigned their own unique endpoint URL; find yours in the Start Event curl example for your workflow.
  x-environment: production
  x-per-tenant: true
security:
- bearerAuth: []
tags:
- name: Workflows
  description: Start workflow orchestrations and pass context data into them.
paths:
  /:
    put:
      operationId: startWorkflow
      summary: Start a workflow
      description: 'Triggers a Liberate flow. The request body carries the flow `slug` (the workflow identifier)

        and a `context` object holding any initial data the workflow should start with. Context data

        supplied here is automatically written into the workflow context and becomes available to

        every downstream component.


        Synchronous flows respond immediately with a status code and instance ID and continue to run

        to completion, returning the end output of the flow as the response. Asynchronous flows also

        respond immediately with a status code and instance ID, then continue running in the

        background — potentially for minutes, hours, or days — while awaiting intermediate events or

        human interaction.

        '
      tags:
      - Workflows
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StartWorkflowRequest'
            examples:
              minimal:
                summary: Start a flow with no initial context
                value:
                  slug: simple-flow-d9379aa1-2508-49a2-b7be-7537013535f0
                  context: {}
              withContext:
                summary: Start a first-notice-of-loss flow with collected session data
                value:
                  slug: simple-flow-d9379aa1-2508-49a2-b7be-7537013535f0
                  context:
                    session:
                      hubRadio: file_a_claim
                      propertyFnolLob: home
                      propertyLocation: elm
                      propertyFnolLossType: weather
                      propertyFnolLossCause: hurricane
                      aleRadio: 'no'
                      propertyFnolLossDescriptionInput: long description.......
      responses:
        '200':
          description: The workflow was accepted. Synchronous flows return the end output of the flow; asynchronous flows return a status and the instance ID of the newly created session. The concrete shape depends on the logic of the triggered flow.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowAcknowledgement'
        '401':
          description: Missing or invalid bearer token.
components:
  schemas:
    WorkflowAcknowledgement:
      type: object
      additionalProperties: true
      description: Loosely typed because the documentation states the response depends on the logic and implementation of the triggered flow. Both synchronous and asynchronous flows are documented as responding with a status code and an instance ID.
      properties:
        instanceId:
          type: string
          description: Unique identifier for this workflow session. Used to correlate reporting and to target the workflow with intermediate events.
        correlationId:
          type: string
          description: Identifier of the parent workflow acting as orchestrator, grouping related workflow instances invoked through Workflow Instance Tasks.
    Context:
      type: object
      additionalProperties: true
      description: Free-form JSON carrying the state of the automation process. Context is initialized at the start of a workflow and written to during execution by tasks, events, decision tables, and intermediate events. Values are addressed downstream with JSONata expressions such as `$.actionName.{jsonobject}`.
    StartWorkflowRequest:
      type: object
      required:
      - slug
      properties:
        slug:
          type: string
          description: The flow's slug or identifier. Found in the Start Event properties of the workflow on the Liberate canvas.
          examples:
          - simple-flow-d9379aa1-2508-49a2-b7be-7537013535f0
        context:
          $ref: '#/components/schemas/Context'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'A unique bearer token obtained from Liberate, sent in the Authorization header as `Authorization: Bearer <token>`. Tokens are issued per customer and per environment (production and QA).'
externalDocs:
  description: Liberate Orchestration Platform developer hub
  url: https://docs.liberateinc.com/