GenuineAIGenuineAI
For usersFor developers
  • Overview
  • Guides
  • How-to
  • API reference
Documentation
  • Quickstart
  • Authentication
  • Errors
  • Rate limits
  • API reference
Platform
  • Platform overview
  • Solutions
  • Pricing
  • Sign in
Company
  • Status
  • Trust Center
  • Contact
  • Terms of Service
  • Privacy Policy

© 2026 GenuineAI Ventures LLC

support@genuinehq.com
Overview
Core
Media library
AI
Documents
Knowledge
Creative
Website & content
Automation
    Workflows
      List workflowsgetCreate a workflowpostGet a workflowgetDelete a workflowdeleteUpdate a workflowpatchCompile a workflowpostDeploy a workflowpostList instancesgetStart an instancepostDelete a stepdeleteUpdate a steppatchList functionsgetList next statesgetComplete a manual steppost
    Workflow instances
    Tasks
    Scheduled jobs
    Integrations
    Extensions
Customer channels
Administration
Schemas
GenuineAI API
GenuineAI API

Workflows

Multi-step processes: authored, compiled, deployed, then run.


List workflows

GET
https://api.genuineai.app/api/v1
/workflows

Returns the workspace's workflows. The compiled definition is not included — read one workflow to get it.

List workflows › query Parameters

cursor
​string · maxLength: 512 · pattern: ^[A-Za-z0-9_-]+$
limit
​integer
offset
​integer · min: 0
sort
​string · minLength: 1 · maxLength: 64 · pattern: ^-?[a-z0-9_]+$
wf_active
​boolean
wf_id
​string · uuid
wf_title
​string

List workflows › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

List workflows › Responses

Success

​Workflow[] · required
has_more
​boolean · required

Whether more rows exist past this page.

next_cursor
​string | null · required

Pass back as cursor for the next page. Null on the last page.

GET/workflows
curl https://api.genuineai.app/api/v1/workflows \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
{ "data": [ { "wf_id": "00000000-0000-0000-0000-000000000000", "wf_name": "wf_name", "wf_title": "wf_title", "wf_description": "wf_description", "wf_version": "wf_version", "wf_trigger": "wf_trigger", "wf_status": "wf_status", "wf_provider": "wf_provider", "wf_managed_by": "wf_managed_by", "wf_active": true, "wf_created": "2024-08-25T15:00:00Z", "wf_updated": "2024-08-25T15:00:00Z" } ], "has_more": true, "next_cursor": "next_cursor" }
json
application/json

Create a workflow

POST
https://api.genuineai.app/api/v1
/workflows

Creates a workflow. It is authored here, then compiled and deployed before anything can run it.

Create a workflow › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Create a workflow › Request Body

wf_title
​string · required
wf_description
​string

Create a workflow › Responses

Created

A multi-step process: what it does, what starts it, and whether it is deployed.
Workflow
wf_id
​string · uuid
wf_name
​string
wf_title
​string
wf_description
​string
wf_version
​string
wf_trigger
​string
wf_status
​string
wf_provider
​string
wf_managed_by
​string
wf_active
​boolean
wf_created
​string · date-time
wf_updated
​string · date-time
POST/workflows
curl https://api.genuineai.app/api/v1/workflows \ --request POST \ --header 'Content-Type: application/json' \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>' \ --data '{ "wf_title": "wf_title", "wf_description": "wf_description" }'
Example Request Body
{ "wf_title": "wf_title", "wf_description": "wf_description" }
json
Example Responses
{ "wf_id": "00000000-0000-0000-0000-000000000000", "wf_name": "wf_name", "wf_title": "wf_title", "wf_description": "wf_description", "wf_version": "wf_version", "wf_trigger": "wf_trigger", "wf_status": "wf_status", "wf_provider": "wf_provider", "wf_managed_by": "wf_managed_by", "wf_active": true, "wf_created": "2024-08-25T15:00:00Z", "wf_updated": "2024-08-25T15:00:00Z" }
json
application/json

Get a workflow

GET
https://api.genuineai.app/api/v1
/workflows/{id}

Returns the workflow with its steps, its trigger and whether it is deployed.

Get a workflow › path Parameters

id
​string · uuid · required

Get a workflow › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Get a workflow › Responses

Success

A multi-step process: what it does, what starts it, and whether it is deployed.
Workflow
wf_id
​string · uuid
wf_name
​string
wf_title
​string
wf_description
​string
wf_version
​string
wf_trigger
​string
wf_status
​string
wf_provider
​string
wf_managed_by
​string
wf_active
​boolean
wf_created
​string · date-time
wf_updated
​string · date-time
GET/workflows/{id}
curl https://api.genuineai.app/api/v1/workflows/:id \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
{ "wf_id": "00000000-0000-0000-0000-000000000000", "wf_name": "wf_name", "wf_title": "wf_title", "wf_description": "wf_description", "wf_version": "wf_version", "wf_trigger": "wf_trigger", "wf_status": "wf_status", "wf_provider": "wf_provider", "wf_managed_by": "wf_managed_by", "wf_active": true, "wf_created": "2024-08-25T15:00:00Z", "wf_updated": "2024-08-25T15:00:00Z" }
json
application/json

Delete a workflow

DELETE
https://api.genuineai.app/api/v1
/workflows/{id}

Deactivates the workflow. Instances that already ran keep their record.

Delete a workflow › path Parameters

id
​string · uuid · required

Delete a workflow › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Delete a workflow › Responses

Success

No data returned
DELETE/workflows/{id}
curl https://api.genuineai.app/api/v1/workflows/:id \ --request DELETE \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

Update a workflow

PATCH
https://api.genuineai.app/api/v1
/workflows/{id}

Applies the wf_-prefixed fields present in the body. Editing a deployed workflow does not redeploy it — compile and deploy again for the change to take effect.

Update a workflow › path Parameters

id
​string · uuid · required

Update a workflow › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Update a workflow › Responses

Success

A multi-step process: what it does, what starts it, and whether it is deployed.
Workflow
wf_id
​string · uuid
wf_name
​string
wf_title
​string
wf_description
​string
wf_version
​string
wf_trigger
​string
wf_status
​string
wf_provider
​string
wf_managed_by
​string
wf_active
​boolean
wf_created
​string · date-time
wf_updated
​string · date-time
PATCH/workflows/{id}
curl https://api.genuineai.app/api/v1/workflows/:id \ --request PATCH \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
{ "wf_id": "00000000-0000-0000-0000-000000000000", "wf_name": "wf_name", "wf_title": "wf_title", "wf_description": "wf_description", "wf_version": "wf_version", "wf_trigger": "wf_trigger", "wf_status": "wf_status", "wf_provider": "wf_provider", "wf_managed_by": "wf_managed_by", "wf_active": true, "wf_created": "2024-08-25T15:00:00Z", "wf_updated": "2024-08-25T15:00:00Z" }
json
application/json

Compile a workflow

POST
https://api.genuineai.app/api/v1
/workflows/{id}/compile

Turns the authored steps into the definition the engine runs, and reports what does not compile. Nothing is deployed — this is the check before deploying.

Compile a workflow › path Parameters

id
​string · uuid · required

Compile a workflow › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Compile a workflow › Responses

Success

No data returned
POST/workflows/{id}/compile
curl https://api.genuineai.app/api/v1/workflows/:id/compile \ --request POST \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

Deploy a workflow

POST
https://api.genuineai.app/api/v1
/workflows/{id}/deploy

Publishes the compiled definition to the execution engine. Until this runs, edits are invisible to anything executing.

Deploy a workflow › path Parameters

id
​string · uuid · required

Deploy a workflow › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Deploy a workflow › Responses

Success

No data returned
POST/workflows/{id}/deploy
curl https://api.genuineai.app/api/v1/workflows/:id/deploy \ --request POST \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

List instances

GET
https://api.genuineai.app/api/v1
/workflows/{id}/instances

The same collection as GET /workflow-instances, narrowed to this workflow.

List instances › path Parameters

id
​string · uuid · required

List instances › query Parameters

cursor
​string · maxLength: 512 · pattern: ^[A-Za-z0-9_-]+$
limit
​integer
offset
​integer · min: 0
sort
​string · minLength: 1 · maxLength: 64 · pattern: ^-?[a-z0-9_]+$
wi_created
​array
wi_id
​string · uuid
wi_initiated_by
​string · uuid
wi_status
​string
wi_updated
​array
wi_workflow
​string · uuid

List instances › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

List instances › Responses

Success

No data returned
GET/workflows/{id}/instances
curl https://api.genuineai.app/api/v1/workflows/:id/instances \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

Start an instance

POST
https://api.genuineai.app/api/v1
/workflows/{id}/instances

Starts an instance of the deployed definition. Answers 202 with the instance to follow the progress by — Location points at it under /workflow-instances.

Start an instance › path Parameters

id
​string · uuid · required

Start an instance › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Start an instance › Responses

Success

No data returned
POST/workflows/{id}/instances
curl https://api.genuineai.app/api/v1/workflows/:id/instances \ --request POST \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

Delete a step

DELETE
https://api.genuineai.app/api/v1
/workflows/{id}/steps/{step_id}

Removes one step. Steps that pointed at it need repointing before the workflow will compile.

Delete a step › path Parameters

id
​string · uuid · required
step_id
​string · uuid · required

Delete a step › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Delete a step › Responses

Success. No content.

No data returned
DELETE/workflows/{id}/steps/{step_id}
curl https://api.genuineai.app/api/v1/workflows/:id/steps/:step_id \ --request DELETE \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

Update a step

PATCH
https://api.genuineai.app/api/v1
/workflows/{id}/steps/{step_id}

Changes one step of a workflow. The workflow has to be compiled again before the change reaches anything running.

Update a step › path Parameters

id
​string · uuid · required
step_id
​string · uuid · required

Update a step › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Update a step › Responses

Success

No data returned
PATCH/workflows/{id}/steps/{step_id}
curl https://api.genuineai.app/api/v1/workflows/:id/steps/:step_id \ --request PATCH \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

List functions

GET
https://api.genuineai.app/api/v1
/workflows/functions

The registry a step is built against. Static — it describes the platform, not the workspace.

List functions › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

List functions › Responses

Success

No data returned
GET/workflows/functions
curl https://api.genuineai.app/api/v1/workflows/functions \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

List next states

GET
https://api.genuineai.app/api/v1
/workflows/next-states

Where the caller may move something next, given its current state and their permissions.

List next states › query Parameters

state
​string · minLength: 1 · required
workflow
​string · minLength: 1 · required

List next states › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

List next states › Responses

Success

No data returned
GET/workflows/next-states
curl 'https://api.genuineai.app/api/v1/workflows/next-states?state=<string>&workflow=<string>' \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

Complete a manual step

POST
https://api.genuineai.app/api/v1
/workflows/tasks/{id}/complete

A workflow can pause for a human decision. This supplies it and lets the instance continue.

Complete a manual step › path Parameters

id
​string · uuid · required

Complete a manual step › Headers

X-Tenant-Id
​string · uuid · required

The workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.

Complete a manual step › Responses

Success

No data returned
POST/workflows/tasks/{id}/complete
curl https://api.genuineai.app/api/v1/workflows/tasks/:id/complete \ --request POST \ --header 'X-Tenant-Id: <string>' \ --header 'X-Api-Key: <api-key>'
Example Responses
No example specified for this content type

SocialWorkflow instances