LogicGate Workflow API

A [Workflow](https://help.logicgate.com/hc/en-us/articles/4402683108756-Create-a-new-Workflow) is a combination of Steps, Paths, Fields, and routing logic that combine to form a system in an Application

OpenAPI Specification

logicgate-workflow-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Risk Cloud Access Audit Workflow API
  description: 'Welcome to the Risk Cloud API v2! This is a collection of new API-first and RESTful API endpoints to streamline the creation of custom integrations with the Risk Cloud.


    For the API documentation of our legacy API v1 endpoints, reference [Risk Cloud API v1](https://docs.logicgate.com/v1/index.html).'
  contact:
    name: developer-relations@logicgate.com
    email: developer-relations@logicgate.com
  version: v2026.7.0
servers:
- url: https://{env}.logicgate.com
  description: The LogicGate API application.
  variables:
    env:
      default: qa
security:
- API Token: []
- basic: []
tags:
- name: Workflow
  description: A [Workflow](https://help.logicgate.com/hc/en-us/articles/4402683108756-Create-a-new-Workflow) is a combination of Steps, Paths, Fields, and routing logic that combine to form a system in an Application
paths:
  /api/v2/workflows:
    get:
      tags:
      - Workflow
      summary: Retrieve workflows
      description: '**Permissions:** [Build Access](https://help.logicgate.com/hc/en-us/articles/4402683190164-Control-Build-Access-for-Applications)


        Retrieve a page of all workflows that the current user has [Build Access to parent application](https://help.logicgate.com/hc/en-us/articles/4402683190164-Control-Build-Access-for-Applications) to.'
      operationId: readAllWorkflows
      parameters:
      - name: application-id
        in: query
        description: The unique ID of a parent application where, if provided, the response will only contain workflows from the identified application
        required: false
        schema:
          type: string
        example: a1b2c3d4
      - name: include-jira-workflows
        in: query
        description: Whether [Jira workflows](https://help.logicgate.com/hc/en-us) are to be included in the response in addition to regular workflows (defaults to true)
        required: false
        schema:
          type: boolean
          default: true
        example: false
      - name: page
        in: query
        description: The zero-indexed page number (must not be less than 0, defaults to 0)
        required: false
        schema:
          type: integer
          format: int32
          minimum: 0
        example: 0
      - name: size
        in: query
        description: The size of the page and maximum number of items to be returned (must not be less than 1, defaults to 20)
        required: false
        schema:
          type: integer
          format: int32
          minimum: 1
        example: 20
      - name: Authorization
        in: header
        description: 'A bearer authorization header containing a Risk Cloud API access token in the format `Authorization: Bearer {TOKEN}`.


          To obtain a Risk Cloud API access token, refer to [Obtain an API Access Token](https://www.logicgate.com/developer/risk-cloud-api-authentication/) in the [LogicGate Help Center](https://help.logicgate.com/hc/en-us).'
        required: true
        schema:
          type: string
        example: Bearer {TOKEN}
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageModelOutWorkflowApiOut'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppStatusResponse'
      x-beta: 'true'
    post:
      tags:
      - Workflow
      summary: Create a workflow
      description: '**Permissions:** [Build Access to parent application](https://help.logicgate.com/hc/en-us/articles/4402683190164-Control-Build-Access-for-Applications)


        Create a workflow from a JSON request body. The workflow will contain a Default Origin step and a Default End step.'
      operationId: createWorkflow
      parameters:
      - name: Authorization
        in: header
        description: 'A bearer authorization header containing a Risk Cloud API access token in the format `Authorization: Bearer {TOKEN}`.


          To obtain a Risk Cloud API access token, refer to [Obtain an API Access Token](https://www.logicgate.com/developer/risk-cloud-api-authentication/) in the [LogicGate Help Center](https://help.logicgate.com/hc/en-us).'
        required: true
        schema:
          type: string
        example: Bearer {TOKEN}
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkflowApiCreateIn'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowApiOut'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppBadRequestResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppBadRequestResponse'
      x-beta: 'true'
  /api/v2/workflows/{id}:
    get:
      tags:
      - Workflow
      summary: Retrieve a workflow
      description: '**Permissions:** [Build Access to parent application](https://help.logicgate.com/hc/en-us/articles/4402683190164-Control-Build-Access-for-Applications)


        Retrieve a workflow specified by the ID in the URL path.'
      operationId: readWorkflow
      parameters:
      - name: id
        in: path
        description: The unique ID of the workflow
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'A bearer authorization header containing a Risk Cloud API access token in the format `Authorization: Bearer {TOKEN}`.


          To obtain a Risk Cloud API access token, refer to [Obtain an API Access Token](https://www.logicgate.com/developer/risk-cloud-api-authentication/) in the [LogicGate Help Center](https://help.logicgate.com/hc/en-us).'
        required: true
        schema:
          type: string
        example: Bearer {TOKEN}
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowApiOut'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppBadRequestResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppStatusResponse'
      x-beta: 'true'
    delete:
      tags:
      - Workflow
      summary: Delete a workflow
      description: '**Permissions:** [Build Access to parent application](https://help.logicgate.com/hc/en-us/articles/4402683190164-Control-Build-Access-for-Applications)


        Delete a workflow specified by the ID in the URL path.'
      operationId: deleteWorkflow
      parameters:
      - name: id
        in: path
        description: The unique ID of the workflow
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'A bearer authorization header containing a Risk Cloud API access token in the format `Authorization: Bearer {TOKEN}`.


          To obtain a Risk Cloud API access token, refer to [Obtain an API Access Token](https://www.logicgate.com/developer/risk-cloud-api-authentication/) in the [LogicGate Help Center](https://help.logicgate.com/hc/en-us).'
        required: true
        schema:
          type: string
        example: Bearer {TOKEN}
      responses:
        '204':
          description: No Content
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppBadRequestResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppStatusResponse'
    patch:
      tags:
      - Workflow
      summary: Update a workflow
      description: '**Permissions:** [Build Access to parent application](https://help.logicgate.com/hc/en-us/articles/4402683190164-Control-Build-Access-for-Applications)


        Update a workflow specified by the ID in the URL path from a JSON request body. Only present properties with non-empty values are updated.'
      operationId: updateWorkflow
      parameters:
      - name: id
        in: path
        description: The unique ID of the workflow
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'A bearer authorization header containing a Risk Cloud API access token in the format `Authorization: Bearer {TOKEN}`.


          To obtain a Risk Cloud API access token, refer to [Obtain an API Access Token](https://www.logicgate.com/developer/risk-cloud-api-authentication/) in the [LogicGate Help Center](https://help.logicgate.com/hc/en-us).'
        required: true
        schema:
          type: string
        example: Bearer {TOKEN}
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkflowApiUpdateIn'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowApiOut'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppBadRequestResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppBadRequestResponse'
components:
  schemas:
    PageLinksOut:
      type: object
      properties:
        first:
          type: string
          description: A URL path to the first page of requested data
          example: /api/v2/resource?page=0&size=20
        prev:
          type: string
          description: A URL path to the next page of requested data or `null` if currently on first page
          example: /api/v2/resource?page=2&size=20
        self:
          type: string
          description: A URL path to the current page of requested data
          example: /api/v2/resource?page=3&size=20
        next:
          type: string
          description: A URL link to the next page of requested data or `null` if currently on last page
          example: /api/v2/resource?page=4&size=20
        last:
          type: string
          description: A URL link to the last page of requested data
          example: /api/v2/resource?page=6&size=20
      title: Page Links
    WorkflowApiCreateIn:
      type: object
      description: Workflow (Create)
      properties:
        name:
          type: string
          description: The name of the workflow
          example: Risk Assessments
          minLength: 1
        description:
          type: string
          description: The description of the workflow
          example: Risk Assessment Description Text
        recordPrefix:
          type: string
          description: The prefix to be used in the name of every record created from this workflow
          example: Assessment
          minLength: 1
        applicationId:
          type: string
          description: The unique ID of the parent application of the workflow
          example: a1b2c3d4
          minLength: 1
        xpos:
          type: integer
          format: int32
          description: The x-coordinate of the workflow in the application builder (must not be less than 0, defaults to 0)
          example: 20
          minimum: 0
        ypos:
          type: integer
          format: int32
          description: The y-coordinate of the workflow in the application builder (must not be less than 0, defaults to 0)
          example: 20
          minimum: 0
      required:
      - applicationId
      - name
      - recordPrefix
      title: Workflow (Create)
    PageInfoOut:
      type: object
      properties:
        size:
          type: integer
          format: int64
          description: The size of the page and maximum number of items to be returned (must not be less than 1, defaults to 20)
          example: 20
        totalElements:
          type: integer
          format: int64
          description: The total number of items available
          example: 50
        totalPages:
          type: integer
          format: int64
          description: The total number of pages available based on the size
          example: 3
        number:
          type: integer
          format: int64
          description: The zero-indexed page number (must not be less than 0, defaults to 0)
          example: 0
      title: Page Info
    WorkflowApiUpdateIn:
      type: object
      description: Workflow (Update)
      properties:
        name:
          type: string
          description: The name of the workflow
          example: Risk Assessments
        description:
          type: string
          description: The description of the workflow
          example: Risk Assessment Description Text
        recordPrefix:
          type: string
          description: The prefix to be used in the name of every record created from this workflow
          example: Assessment
        xpos:
          type: integer
          format: int32
          description: The x-coordinate of the workflow in the application builder (must not be less than 0)
          example: 20
          minimum: 0
        ypos:
          type: integer
          format: int32
          description: The y-coordinate of the workflow in the application builder (must not be less than 0)
          example: 20
          minimum: 0
      title: Workflow (Update)
    AppBadRequestResponse:
      type: object
      properties:
        property:
          type: string
        value:
          type: string
        message:
          type: string
    PageModelOutWorkflowApiOut:
      type: object
      properties:
        content:
          type: array
          description: A array of returned items
          items:
            $ref: '#/components/schemas/WorkflowApiOut'
        links:
          $ref: '#/components/schemas/PageLinksOut'
          description: A collection of page URL links for navigation and iteration
        page:
          $ref: '#/components/schemas/PageInfoOut'
          description: A collection page metadata
      title: Page (Response)
    WorkflowApiOut:
      type: object
      properties:
        id:
          type: string
          description: The unique ID of this Risk Cloud resource
          example: a1b2c3d4
        name:
          type: string
          description: The name of the workflow
          example: Risk Assessments
        description:
          type: string
          description: The description of the workflow
          example: Risk Assessment Description Text
        recordPrefix:
          type: string
          description: The prefix to be used in the name of every record created from this workflow
          example: Assessment
        applicationId:
          type: string
          description: The unique ID of the parent application of the workflow
          example: a1b2c3d4
        xpos:
          type: integer
          format: int32
          description: The x-coordinate of the workflow in the application builder
          example: 20
        ypos:
          type: integer
          format: int32
          description: The y-coordinate of the workflow in the application builder
          example: 20
        type:
          type: string
          description: The type of workflow
          enum:
          - WORKFLOW
          - JIRA_WORKFLOW
          - CONTROL_WORKFLOW
          - ANALYSIS_WORKFLOW
          example: WORKFLOW
        object:
          type: string
          description: Identifies the type of object this data represents
          example: workflow
      title: Workflow (Response)
    AppStatusResponse:
      type: object
      properties:
        status:
          type: string
        message:
          type: string
  securitySchemes:
    API Token:
      type: http
      name: Authorization
      in: header
      scheme: bearer
      bearerFormat: API Token
    basic:
      type: http
      name: Authorization
      in: header
      scheme: basic
      bearerFormat: basic
externalDocs:
  description: Developer Portal
  url: https://www.logicgate.com/developer/