Projects

This endpoint manages workflow projects within the organization.

Overview

The Projects API allows you to create, update, and manage workflow projects. Projects serve as containers for work activities, providing structure and organization for tasks, deliverables, and team collaboration.

Key Features

Project Organization

Projects can be organized by:

Endpoints


get/api/v3/workflow/projects

Return a paginated list of workflow/projects

Input Schema

object
page?:
object
The page number, default to 1
number?: integer
The number of items per page, default to 1000
size?: integer
The sort order, comma separated list of fields. See sorting section for more details
sort?: string
Set to true to return the total number of items in the collection
count?: boolean
filter?:
object
id?: unknown
name?: unknown
enabled?: unknown
readonly?: unknown
organization_id?: unknown
organizational_unit?: unknown
created_at?: unknown
updated_at?: unknown
definition?: unknown
name__match?: unknown
organization?: unknown
organizational_unit?: unknown
enabled?: unknown
The related resources to include in the response. Allowed resources are:
- `members`
included?:
array
Elements: string
The fields to include in the response.
The key is the resource type and the value is an array of fields.
fields?:
dictionary
Values: array

Typescript

type InputSchema = {
  page?: {
    // The page number, default to 1
    number?: number;
    // The number of items per page, default to 1000
    size?: number;
  };
  // The sort order, comma separated list of fields. See sorting section for more details
  sort?: string;
  // Set to true to return the total number of items in the collection
  count?: boolean;
  filter?: {
    id?: any;
    name?: any;
    enabled?: any;
    readonly?: any;
    organization_id?: any;
    organizational_unit?: any;
    created_at?: any;
    updated_at?: any;
    definition?: any;
    name__match?: any;
    organization?: any;
    organizational_unit?: any;
    enabled?: any;
  };
  // The related resources to include in the response. Allowed resources are:
  // - `members`
  included?: Array<string>;
  // The fields to include in the response.
  // The key is the resource type and the value is an array of fields.
  fields?: { [key: string]: Array<any> };
};

Output Schema

object
data:
array
Elements:
object
type: string
id?: string
attributes?:
object
id?: integer
name?: string
enabled?: boolean
readonly?: boolean
organization_id?: integer
organizational_unit?: string
created_at?: datetime
updated_at?: datetime
definition?: open struct
relationships?: open struct
included?:
array
Elements: open struct

Typescript

type OutputSchema = {
  data: Array<{
    type: string;
    id?: string;
    attributes?: {
      id?: number;
      name?: string;
      enabled?: boolean;
      readonly?: boolean;
      organization_id?: number;
      organizational_unit?: string;
      created_at?: Date;
      updated_at?: Date;
      definition?: Record<string, any>;
    };
    relationships?: Record<string, any>;
  }>;
  included?: Array<Record<string, any>>;
};


post/api/v3/workflow/projects

Create a new project within the organization.

This endpoint allows you to create a new project within the organization. Projects serve as containers for work activities, providing structure and organization for tasks, deliverables, and team collaboration.

Behavior

Response

Returns the newly created project record with complete project data.

Input Schema

object
data:
object
type: string
attributes:
object
name: string
organization_id: integer
organizational_unit: string
definition: open struct or string
enabled?: boolean
readonly?: boolean

Typescript

type InputSchema = {
  data: {
    type: string;
    attributes: {
      name: string;
      organization_id: number;
      organizational_unit: string;
      definition: Record<string, any> | string;
      enabled?: boolean;
      readonly?: boolean;
    };
  };
};


post/api/v3/workflow/projects/:id/autoselect

Automatically select and assign an activity to the current user.

This endpoint finds the best available activity for the current user in the specified project and assigns it to them. Activities are selected based on priority criteria including:

The endpoint uses a locking mechanism to prevent race conditions when multiple users request activities simultaneously.

Behavior

Response

Returns the assigned activity record with node information included.

Errors

Input Schema

object
id: unknown

Typescript

type InputSchema = { id: any };


post/api/v3/workflow/projects/:id/duplicate

Create a duplicate copy of an existing project.

This endpoint allows you to create a complete copy of an existing project, including its structure, settings, and configurations. This is useful for creating new projects based on established templates or for creating similar projects without starting from scratch.

Behavior

Response

Returns the newly created project record with complete project data.

Input Schema

object
id: unknown

Typescript

type InputSchema = { id: any };


get/api/v3/workflow/projects/:resource_id

Show a specific workflow/projects

Input Schema

object
resource_id: integer
included?:
array
Elements: string
fields?:
dictionary
Values: array

Typescript

type InputSchema = {
  resource_id: number;
  included?: Array<string>;
  fields?: { [key: string]: Array<any> };
};

Output Schema

object
data:
object
type: string
id?: string
attributes?:
object
id?: integer
name?: string
enabled?: boolean
readonly?: boolean
organization_id?: integer
organizational_unit?: string
created_at?: datetime
updated_at?: datetime
definition?: open struct
relationships?: open struct
included?:
array
Elements: open struct

Typescript

type OutputSchema = {
  data: {
    type: string;
    id?: string;
    attributes?: {
      id?: number;
      name?: string;
      enabled?: boolean;
      readonly?: boolean;
      organization_id?: number;
      organizational_unit?: string;
      created_at?: Date;
      updated_at?: Date;
      definition?: Record<string, any>;
    };
    relationships?: Record<string, any>;
  };
  included?: Array<Record<string, any>>;
};


patch/api/v3/workflow/projects/:resource_id

Update a workflow/projects

Input Schema

object
resource_id: integer
data:
object
type: string
attributes:
object
id?: integer
name?: string
enabled?: boolean
readonly?: boolean
organization_id?: integer
organizational_unit?: string
created_at?: datetime
updated_at?: datetime
definition?: open struct

Typescript

type InputSchema = {
  resource_id: number;
  data: {
    type: string;
    attributes: {
      id?: number;
      name?: string;
      enabled?: boolean;
      readonly?: boolean;
      organization_id?: number;
      organizational_unit?: string;
      created_at?: Date;
      updated_at?: Date;
      definition?: Record<string, any>;
    };
  };
};