Process#

Create, modify, delete and run processes

Action#

When the action was performed, and details about the user who did it.

Properties#

Name

Type

Description

Restrictions

dateTime

string(date-time)

Date and time (in UTC) that the user performed the audited action.

user

User

Reference to a platform user.

Example#

{
  "dateTime": "2019-10-30T15:03:27Z",
  "user": {
    "id": "V1ZVd2VyFzU3NiQ1NDA4NjIzNzk2MjD"
  }
}

BatchUpdate#

A collection of updates to be done as a batch against the Process.

Properties#

Name

Type

Description

Restrictions

data

[BatchUpdateItem]

List of updates to apply to the Process as a batch.

required, Minimum items: 0, Maximum items: 3000

Example#

{
  "data": [
    {
      "id": "jobId123",
      "newName": "newJobTitle",
      "type": "jobName"
    },
    {
      "id": "groupId123",
      "newName": "newGroupTitle",
      "type": "groupName"
    }
  ]
}

BatchUpdateItem#

Represents a single batch update request contained in a larger overall batch update.

Properties#

Name

Type

Description

Restrictions

groupNameUpdate

ProcessGroupNameUpdate

A request to update a Group’s name.

jobNameUpdate

JobNameUpdate

A request to update a Job’s name.

type

string

The type of the update being requested.

required

Enumerated Values#

Property

Value

type

jobName

type

groupName

Example#

{
  "jobNameUpdate": {
    "id": "jobId123",
    "newName": "new job name"
  },
  "type": "jobName"
}

Error#

Standard error response returned by the API when a request fails. Provides detailed information about what went wrong including error codes, human-readable messages, and additional context to help diagnose and fix the issue.

Properties#

Name

Type

Description

Restrictions

code

string

One of a server-defined set of error codes.

required

details

[ErrorDetail]¦null

An array of details about the error.

documentationUrl

string¦null

Link to some documentation relevant to the issue or endpoint in use.

message

string

A human-readable representation of the error.

meta

object¦null

Contains additional metadata about the failure - ie “jobId”, “argumentName”,etc

meta.additionalProperties

string¦null

Contains additional metadata about the failure - ie “jobId”, “argumentName”,etc

target

string¦null

The target of the error.

Example#

{
  "code": "INVALID_ARGUMENT",
  "details": [
    {
      "code": "VALIDATION_ERROR",
      "message": "Field 'title' is required",
      "target": "title"
    }
  ],
  "documentationUrl": "https://developers.workiva.com/workiva-platform/reference/platform-authentication",
  "message": "The provided job id is invalid or does not exist",
  "meta": {
    "argumentName": "title",
    "jobId": "job-abc123"
  },
  "target": "jobId"
}

ErrorDetail#

Detailed error information for a specific validation or processing failure. Provides granular error context including error codes, messages, and the specific field or resource that caused the error. Typically used as part of an array of errors in an error response.

Properties#

Name

Type

Description

Restrictions

code

string

One of a server-defined set of error codes.

message

string

A human-readable representation of the error.

meta

object¦null

Contains additional metadata about the failure - ie “jobId”, “argumentName”,etc

meta.additionalProperties

string¦null

Contains additional metadata about the failure - ie “jobId”, “argumentName”,etc

target

string¦null

The target of the error.

Example#

{
  "code": "VALIDATION_ERROR",
  "message": "Field 'title' is required",
  "target": "title"
}

ProcessGroup#

Group of Jobs and other Groups in a Process.

Properties#

Name

Type

Description

Restrictions

children

[ProcessGroupChild]

The children of this group. Children can be a job or another group.

created

Action

When the action was performed, and details about the user who did it.

dueDate

string(date)

The due date of the group.

id

string

The Group’s unique identifier

modified

Action

When the action was performed, and details about the user who did it.

name

string

The name of the group.

ordinal

integer(int32)

The zero-based index representing the location of this group within its parent group

read-only

parallel

boolean

If true, execute jobs in this group in parallel. If false, serial.

required

parent

string¦null

The id of this child’s parent. Not present if the parent is the root group of the Process.

readOnly

boolean

Whether this Group is read-only.

required

revision

integer(int64)

The revision number of the current representation of the Group

read-only

triggerType

string

What triggers a group child to execute.

Enumerated Values#

Property

Value

triggerType

whenEligible

triggerType

manual

Example#

{
  "id": "root-group-123",
  "name": "Main Workflow",
  "parallel": false,
  "readOnly": false,
  "triggerType": "whenEligible"
}

ProcessGroupChild#

Represents a child element within a Group in a process definition (build-time). A group child can be either a Job or another nested Group, creating a hierarchical structure for organizing work. The type field determines which specific child type is present.

Properties#

Name

Type

Description

Restrictions

group

ProcessGroup

Group of Jobs and other Groups in a Process.

job

ProcessJob

A build-time representation of work to be done.
The type of action the Job is dictates the type of arguments passed to it.
The arguments represent the input to the Job, describing the work to be done.
A Job can be built incrementally and only at the time it is attempted to be started,
or a call to the Process’ health-check endpoint will it and its arguments be validated.

type

string

The type of group child.
The corresponding job or group details will be provided below.

required

Enumerated Values#

Property

Value

type

group

type

job

Example#

{
  "job": {
    "id": "job-123",
    "triggerType": "whenEligible"
  },
  "type": "job"
}

ProcessGroupNameUpdate#

A request to update a Group’s name.

Properties#

Name

Type

Description

Restrictions

id

string

The id of the group whose name will be updated.

required, Minimum length: 1

newName

string

The new name for our group.

required, Minimum length: 1

Example#

{
  "id": "groupId2342342",
  "newName": "new group name"
}

ProcessJob#

A build-time representation of work to be done. The type of action the Job is dictates the type of arguments passed to it. The arguments represent the input to the Job, describing the work to be done. A Job can be built incrementally and only at the time it is attempted to be started, or a call to the Process’ health-check endpoint will it and its arguments be validated.

Properties#

Name

Type

Description

Restrictions

action

string

The type of action the Job is performing.
Dictates the type of arguments need to be passed to the Job.

arguments

ActionArguments

Container for action-specific arguments for a Job.
The type field indicates which specific arguments field contains the data.
Only one of the argument fields will be populated based on the action type.

created

Action

When the action was performed, and details about the user who did it.

generated

ProcessGroup

Group of Jobs and other Groups in a Process.

id

string

The Job’s unique identifier

modified

Action

When the action was performed, and details about the user who did it.

ordinal

integer(int32)

The zero-based index representing the location of this Job within its parent group

read-only

parent

string¦null

The id of this Job’s parent. Not present if the parent is the root group of the Process.

readOnly

boolean

Whether this Job is read-only.

read-only

revision

integer(int64)

The revision number of the current representation of the Job

read-only

tags

[TagLink]

The tag link, category, and value information associated with this Job.

read-only, unique

triggerType

string¦null

What triggers a group child to execute.

Enumerated Values#

Property

Value

action

sendTask

action

contentRequest

action

certificationApproverGenerated

action

certificationSignerGenerated

action

certificationConditionalApproverGenerated

action

certificationPhaseFinalizerGenerated

action

certification

triggerType

whenEligible

triggerType

manual

Example#

{
  "arguments": {
    "sendTaskArgs": {
      "title": "Complete audit review"
    },
    "type": "sendTask"
  },
  "id": "job-xyz789",
  "triggerType": "manual"
}

JobNameUpdate#

A request to update a Job’s name.

Properties#

Name

Type

Description

Restrictions

id

string

The id of the job whose name will be updated.

required, Minimum length: 1

newName

string

The new name for the targeted job.

required, Minimum length: 1

Example#

{
  "id": "jobId2342342",
  "newName": "new job name"
}

Process#

Build-time representation of a Process whose work is described by a collection of Jobs contained in its root Group.

Properties#

Name

Type

Description

Restrictions

autoClose

boolean

If this process is configured to automatically close once all actions are completed or canceled.

required

businessDateExclusions

[string]

Individual dates that are excluded as business days of this Process. Impacts relative date calculations.

unique

businessDateInclusions

[string]

Individual dates that are included as business days of this Process, regardless of exclusion rules.

unique

businessDaysOfWeek

[string]

The days of the week that are deemed “working days” for this Process. Impacts relative date calculations.

unique

businessEndDate

string(date)

The end date for the process.

businessStartDate

string(date)

Date for when the process should start for anchoring relative dates

calendars

[string]

A set of calendar ids associated with this process. The events of these calendars are displayed in calendar
ux components in Processes.

unique

certAutoApprove

boolean

If certification auto approval is turned on for certification actions on this process.

required

created

Action

When the action was performed, and details about the user who did it.

defaultCertApproverReminders

ReminderData

Configuration for reminder emails that will be sent to participants about incomplete tasks.
Supports multiple reminder modes including system defaults, process defaults, custom schedules, or no reminders.

defaultCertSignerReminders

ReminderData

Configuration for reminder emails that will be sent to participants about incomplete tasks.
Supports multiple reminder modes including system defaults, process defaults, custom schedules, or no reminders.

dueDate

string(date)

When the Process is due.

id

string

The Process’ unique identifier.

Maximum length: 32, Minimum length: 1

modified

Action

When the action was performed, and details about the user who did it.

name

string

The name of the Process.

processTemplate

string

The id of the ProcessTemplate that this Process was created from.

read-only, Maximum length: 32

relativeDates

boolean

If relative dates are enabled for this process. Enables automatic shifting of dates based on the
Process start date and business days configuration.

required

revision

integer(int64)

The revision number of the current representation of the Process

read-only

root

ProcessGroup

Group of Jobs and other Groups in a Process.

sourceProcessRun

string

The id of ProcessRun that this Process was copied from.

read-only, Maximum length: 32

Example#

{
  "autoClose": true,
  "businessDateExclusions": [
    "2024-12-25",
    "2024-01-01"
  ],
  "businessDateInclusions": [
    "2024-12-28"
  ],
  "businessDaysOfWeek": [
    "monday",
    "tuesday",
    "wednesday",
    "thursday",
    "friday"
  ],
  "businessEndDate": "2024-12-31",
  "businessStartDate": "2024-01-01",
  "calendars": [
    "calendar-123",
    "calendar-456"
  ],
  "certAutoApprove": true,
  "created": {
    "dateTime": "2019-10-30T15:03:27Z",
    "user": {
      "id": "V1ZVd2VyFzU3NiQ1NDA4NjIzNzk2MjD"
    }
  },
  "defaultCertApproverReminders": {
    "mode": "default"
  },
  "defaultCertSignerReminders": {
    "mode": "default"
  },
  "dueDate": "2026-01-01",
  "id": "e7b9920095e342889190b4d7eaeca6fa",
  "modified": {
    "dateTime": "2019-10-30T15:03:27Z",
    "user": {
      "id": "V1ZVd2VyFzU3NiQ1NDA4NjIzNzk2MjD"
    }
  },
  "name": "Q4 2024 Financial Close Process",
  "processTemplate": "9e20a5aeaaf84d5ba676233938ac4222",
  "relativeDates": false,
  "revision": 3,
  "root": {
    "id": "root-group-123",
    "name": "Main Workflow",
    "parallel": false,
    "readOnly": false,
    "triggerType": "whenEligible"
  },
  "sourceProcessRun": "9e20a5aeaaf84d5ba676233938ac4222"
}

ProcessJSONPatchDocument#

A JSON Patch document as defined by RFC 6902. An array of patch operations. Valid “path” and operation (“op”) combinations below:

  • /dueDate : “remove” and “replace”
  • /businessStartDate : “remove” and “replace”
  • /businessEndDate : “remove” and “replace”
  • /businessDaysOfWeek : “remove” and “replace”
  • /businessDateExclusions : “remove” and “replace”
  • /businessDateInclusions : “remove” and “replace”
  • /calendarIds : “remove” and “replace”
  • /name : “replace”
  • /autoClose : “replace”
  • /ipmBetaEnabled : “replace”
  • /iwmOptOut : “replace”
  • /relativeDates : “replace”
  • /root/parallel : “replace”
  • /root/triggerType : “replace”
  • /certAutoApprove : “replace”
  • /defaultCertSignerReminders : “remove” and “replace”
  • /defaultCertApproverReminders : “remove” and “replace”

Properties#

Name

Type

Description

Restrictions

op

string

The JSON Patch operation to perform.

required

path

string

JSON Pointer to the target location.

required

value

any

The value to replace the target with.

Enumerated Values#

Property

Value

op

remove

op

replace

Example#

[
  {
    "op": "remove",
    "path": "/dueDate"
  },
  {
    "op": "replace",
    "path": "/autoClose",
    "value": true
  }
]

ProcessValidationResults#

Process validation result

Properties#

Name

Type

Description

Restrictions

errors

[Error]

Set of validation errors found in the process definition.

unique

Example#

{
  "errors": [
    {
      "code": "MISSING_REQUIRED_FIELD",
      "message": "Job is missing required 'action' field",
      "meta": {
        "field": "action",
        "jobId": "job-abc123"
      },
      "target": "job-abc123"
    }
  ]
}

User#

Reference to a platform user.

Properties#

Name

Type

Description

Restrictions

id

string

The unique identifier of the user

Maximum length: 36

Example#

{
  "id": "V1ZVd2VyFzU3NiQ1NDA4NjIzNzk2MjD"
}