GraphQLRepositoriesapprovalProcess
entities.approvalProcess
Read approval process records with the approvalProcess repository, and change them with the approval process mutations. Same records as the REST ApprovalProcesses entity.
Queries
Fields of entities { approvalProcess { … } }.
| Kind | Field | Returns |
|---|---|---|
| QUERY | getById(entityId: ID!)Returns the record with the given id, or null when there is none. Deleted records are returned as well. | ApprovalProcessEntity |
| QUERY | getByIds(entityIds: [ID!]!)Returns the records with the given ids; ids without a record are left out. Deleted records are returned as well. | [ApprovalProcessEntity!]! |
| QUERY | getAll(limit: Int, offset: Int, filter: ApprovalProcessFilterInput, orderBy: [ApprovalProcessOrderByInput!], includeDeleted: Boolean)Returns the records that match the filter, paged with limit and offset. | [ApprovalProcessEntity!]! |
| QUERY | getByCriteria(filter: ApprovalProcessFilterInput, orderBy: [ApprovalProcessOrderByInput!], includeDeleted: Boolean, before: String, after: String, first: Int, last: Int)Returns the records that match the filter as a cursor-paginated connection. | ApprovalProcessEntityConnection |
| QUERY | getChangedFieldsSinceRevision(id: UUID!, revision: Int!)Returns the ids of the fields of a record that changed after the given revision. Returns an empty list for entities without change tracking. | [UUID!]! |
| QUERY | getByApprovalProcessCriteria(listingOptions: ProcessTabDataGridViewOptionsParams!, filter: ApprovalProcessFilterInput, orderBy: [ApprovalProcessOrderByInput!], before: String, after: String, first: Int, last: Int)Returns a page of approval processes filtered by owner, enabled state and status, in addition to the regular filter. | ApprovalProcessEntityConnection |
| QUERY | getApprovalProcessesWithManualTrigger(limit: Int, offset: Int, filter: ApprovalProcessFilterInput, orderBy: [ApprovalProcessOrderByInput!])Returns approval processes with a manual trigger that the current user is allowed to start, according to each trigger's allowed users and units. | [ApprovalProcessEntity!]! |
Mutations
| Kind | Mutation | Does | Returns |
|---|---|---|---|
| MUTATION | createApprovalProcess(input: CreateApprovalProcessInput!, validationLevel: [ValidationLevel!]) | Create one record | CreateApprovalProcessPayload |
| MUTATION | updateApprovalProcess(input: UpdateApprovalProcessInput!, validationLevel: [ValidationLevel!], sessionIdToUpdate: String) | Update fields | UpdateApprovalProcessPayload |
| MUTATION | bulkUpdateApprovalProcess(input: [CreateOrUpdateApprovalProcessInput!]!, deleteInput: [DeleteApprovalProcessInput!], validationLevel: [ValidationLevel!], rollbackMethod: RollbackMethod, match: MatchingInput) | Create or update many; per-item results | BulkUpdateApprovalProcessPayload |
| MUTATION | deleteApprovalProcess(input: DeleteApprovalProcessInput!) | Soft-delete | DeleteApprovalProcessPayload |
Types
The types this repository uses, each with its fields and their descriptions. Types several repositories share, such as PageInfo and the filter fields, are in the types index.
ApprovalProcessEntity object 21 fields: isDeleteProtected, id, isDeleted, …
Approval rule that raises approval requests for records of an entity when its trigger conditions are met, and defines who approves them.
| Field | Type | Description |
|---|---|---|
isDeleteProtected | Boolean! | True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only. |
id | ID! | Unique identifier of entity. |
isDeleted | Boolean | Specifies if the entity is considered deleted. |
modified | DateTime | Last modification time. |
created | DateTime | Creation time. |
owner | ClientEntity | User who owns the approval process. |
description | String | Free-text description shown alongside the approval process. |
entityType | BaseEntityTypeEnum | Entity whose records the approval process is raised for, taken from the trigger in settings. Read-only. |
isEnabled | Boolean! | When true, the approval process actively raises approvals on matching record events; when false, the process is paused. |
lastSchemaChange | DateTime | Timestamp of the most recent change to settings. |
lastStatusChange | DateTime | Timestamp of the most recent change to isEnabled. |
name | String! | Name of the entity and its default text representation. |
ownerId | ID! | Id of the owning user. |
priority | Int | Position of this process among approval processes for the same record-trigger entity type; lower values are evaluated first. Read-only; managed via update_priority. Null for manual-trigger approval processes. |
settings | ApprovalProcessSchema | Approval process schema as a JSON object conforming to the ApprovalProcessSchema type — trigger, filter, approver settings, and approve/reject nodes. Validated on write. |
documents | [CloudObjectRelationEntity!] | Files attached to the approval process (e.g. process documentation). |
activityLogs | ApprovalEntityConnection (7 args) | Approvals (one per process run) raised by this approval process. |
triggerEntityName | EntityNameEnum | For record-change triggers, the entity whose records can raise an approval (e.g. "Quote"). Empty for manual triggers. |
status | ProcessStatusEnum | Overall status of the approval process, derived from the approvals it raised since it was last enabled or its settings changed: Ok, Warning or Error. Ok when there are none. |
triggerType | ApprovalProcessTriggerTypeEnum | How approvals are raised: Manual (a user must initiate) or RecordChange (automatically when a record matching the trigger condition is created or updated). |
instancePermissions | [EntityPermsEnum!]! (1 args) | Permissions the current user has on this record, out of the requested ones. |
ApprovalProcessEntityConnection object pageInfo: PageInfo!, edges: [ApprovalProcessEntityEdge]!, totalCount: Int
Paginated list of ApprovalProcess records.
| Field | Type | Description |
|---|---|---|
pageInfo | PageInfo! | Pagination data for this connection. |
edges | [ApprovalProcessEntityEdge]! | Contains the nodes in this connection. |
totalCount | Int | Total number of items in the connection. |
ApprovalProcessEntityEdge object node: ApprovalProcessEntity, cursor: String!
A Relay edge containing a ApprovalProcessEntity and its cursor.
| Field | Type | Description |
|---|---|---|
node | ApprovalProcessEntity | The item at the end of the edge |
cursor | String! | A cursor for use in pagination |
ApprovalProcessFilterInput input AND, OR, NOT, globalSearchQuery, one condition per field
Filter conditions for ApprovalProcess records. Conditions on different fields are combined with AND; use OR, AND and NOT for other combinations.
| Input field | Type | Description |
|---|---|---|
OR | [ApprovalProcessFilterInput!] | Matches records that meet at least one of the listed filters. |
AND | [ApprovalProcessFilterInput!] | Matches records that meet all of the listed filters. |
NOT | ApprovalProcessFilterInput | Matches records that do not meet this filter. |
globalSearchQuery | String | Search term matched against the fields that the global search covers for this entity. |
id | EntityFilterStringField | Unique identifier of entity. |
isDeleted | Boolean | Specifies if the entity is considered deleted. |
modified | EntityFilterDateTimeField | Last modification time. |
created | EntityFilterDateTimeField | Creation time. |
description | EntityFilterStringField | Free-text description shown alongside the approval process. |
entityType | BaseEntityTypeEnumFilterInput | Entity whose records the approval process is raised for, taken from the trigger in settings. Read-only. |
isEnabled | Boolean | When true, the approval process actively raises approvals on matching record events; when false, the process is paused. |
lastSchemaChange | EntityFilterDateTimeField | Timestamp of the most recent change to settings. |
lastStatusChange | EntityFilterDateTimeField | Timestamp of the most recent change to isEnabled. |
name | EntityFilterStringField | Name of the entity and its default text representation. |
ownerId | EntityFilterStringField | Id of the owning user. |
priority | EntityFilterNumberField | Position of this process among approval processes for the same record-trigger entity type; lower values are evaluated first. Read-only; managed via update_priority. Null for manual-trigger approval processes. |
triggerEntityName | EntityNameEnum | For record-change triggers, the entity whose records can raise an approval (e.g. "Quote"). Empty for manual triggers. |
status | ProcessStatusEnum | Overall status of the approval process, derived from the approvals it raised since it was last enabled or its settings changed: Ok, Warning or Error. Ok when there are none. |
triggerType | ApprovalProcessTriggerTypeEnum | How approvals are raised: Manual (a user must initiate) or RecordChange (automatically when a record matching the trigger condition is created or updated). |
owner | ClientFilterInput | User who owns the approval process. Matches records where a related record meets these conditions. |
documents | CloudObjectRelationFilterInput | Files attached to the approval process (e.g. process documentation). Matches records where a related record meets these conditions. |
activityLogs | ApprovalFilterInput | Approvals (one per process run) raised by this approval process. Matches records where a related record meets these conditions. |
ApprovalProcessOrderByInput input Asc or Desc per field
Sorting of ApprovalProcess records. Set exactly one field in each item; list several items to sort by more fields, in order of priority.
| Input field | Type | Description |
|---|---|---|
id | OrderByEnum | Unique identifier of entity. |
isDeleted | OrderByEnum | Specifies if the entity is considered deleted. |
modified | OrderByEnum | Last modification time. |
created | OrderByEnum | Creation time. |
owner | [ClientOrderByNestedInput!] | User who owns the approval process. Sorts by fields of the related record, listed in order of priority. |
description | OrderByEnum | Free-text description shown alongside the approval process. |
isEnabled | OrderByEnum | When true, the approval process actively raises approvals on matching record events; when false, the process is paused. |
lastSchemaChange | OrderByEnum | Timestamp of the most recent change to settings. |
lastStatusChange | OrderByEnum | Timestamp of the most recent change to isEnabled. |
name | OrderByEnum | Name of the entity and its default text representation. |
ownerId | OrderByEnum | Id of the owning user. |
priority | OrderByEnum | Position of this process among approval processes for the same record-trigger entity type; lower values are evaluated first. Read-only; managed via update_priority. Null for manual-trigger approval processes. |
triggerEntityName | OrderByEnum | For record-change triggers, the entity whose records can raise an approval (e.g. "Quote"). Empty for manual triggers. |
status | OrderByEnum | Overall status of the approval process, derived from the approvals it raised since it was last enabled or its settings changed: Ok, Warning or Error. Ok when there are none. |
triggerType | OrderByEnum | How approvals are raised: Manual (a user must initiate) or RecordChange (automatically when a record matching the trigger condition is created or updated). |
CreateApprovalProcessInput input name: String!, description: String, ownerId: UUID, settings: JSONString
Field values of a new ApprovalProcess record.
| Input field | Type | Description |
|---|---|---|
name | String! | Name of the approval process. |
description | String | Free-text description shown alongside the approval process. |
ownerId | UUID | Id of the user who owns the approval process. Defaults to the calling user. |
settings | JSONString | Approval process schema as a JSON object conforming to the ApprovalProcessSchema type: trigger, filter, approver settings and approve/reject nodes. Validated on write. The new approval process is created disabled. |
CreateOrUpdateApprovalProcessInput input 12 fields: clientMutationId, id, modified, …
Field values of an ApprovalProcess record to create, or to update when its id is set.
| Input field | Type | Description |
|---|---|---|
clientMutationId | String | Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention). |
id | ID | Unique identifier of entity. |
modified | DateTime | Last modification time. |
created | DateTime | Creation time. |
description | String | Free-text description shown alongside the approval process. |
isEnabled | Boolean | When true, the approval process actively raises approvals on matching record events; when false, the process is paused. |
lastSchemaChange | DateTime | Timestamp of the most recent change to settings. |
lastStatusChange | DateTime | Timestamp of the most recent change to isEnabled. |
name | String | Name of the entity and its default text representation. |
ownerId | ID | Id of the owning user. |
settings | JSONString | Approval process schema as a JSON object conforming to the ApprovalProcessSchema type — trigger, filter, approver settings, and approve/reject nodes. Validated on write. |
documents | [CreateCloudObjectRelationNoBackrefInput!] | Files attached to the approval process (e.g. process documentation). |
DeleteApprovalProcessInput input clientMutationId: String, id: ID!
Id of the ApprovalProcess record to delete.
| Input field | Type | Description |
|---|---|---|
clientMutationId | String | Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention). |
id | ID! | Unique identifier of entity. |
UpdateApprovalProcessInput input 12 fields: clientMutationId, id, modified, …
Id of an ApprovalProcess record and the field values to change.
| Input field | Type | Description |
|---|---|---|
clientMutationId | String | Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention). |
id | ID! | Unique identifier of entity. |
modified | DateTime | Last modification time. |
created | DateTime | Creation time. |
description | String | Free-text description shown alongside the approval process. |
isEnabled | Boolean | When true, the approval process actively raises approvals on matching record events; when false, the process is paused. |
lastSchemaChange | DateTime | Timestamp of the most recent change to settings. |
lastStatusChange | DateTime | Timestamp of the most recent change to isEnabled. |
name | String | Name of the entity and its default text representation. |
ownerId | ID | Id of the owning user. |
settings | JSONString | Approval process schema as a JSON object conforming to the ApprovalProcessSchema type — trigger, filter, approver settings, and approve/reject nodes. Validated on write. |
documents | [CreateCloudObjectRelationNoBackrefInput!] | Files attached to the approval process (e.g. process documentation). |
BulkUpdateApprovalProcessPayload object result: BulkUpdateResults!
Result of the bulkUpdateApprovalProcess mutation.
| Field | Type | Description |
|---|---|---|
result | BulkUpdateResults! | Ids of the created, updated and deleted records, and the items that failed. |
CreateApprovalProcessPayload object approvalProcess: ApprovalProcessEntity
Result of the createApprovalProcess mutation.
| Field | Type | Description |
|---|---|---|
approvalProcess | ApprovalProcessEntity | The created record. |
DeleteApprovalProcessPayload object approvalProcess: ApprovalProcessEntity, clientMutationId: String
Result of the deleteApprovalProcess mutation.
| Field | Type | Description |
|---|---|---|
approvalProcess | ApprovalProcessEntity | The deleted record. |
clientMutationId | String | Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention). |
UpdateApprovalProcessPayload object approvalProcess: ApprovalProcessEntity, clientMutationId: String
Result of the updateApprovalProcess mutation.
| Field | Type | Description |
|---|---|---|
approvalProcess | ApprovalProcessEntity | The updated record. |
clientMutationId | String | Optional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention). |
ApprovalProcessApprover object type: ApprovalProcessApproverType!, id: UUID
Approver of an approval process: a specific user, or a role resolved from the record, such as the managers of its sales unit.
| Field | Type | Description |
|---|---|---|
type | ApprovalProcessApproverType! | Kind of approver: a specific user (User), the managers of the record's sales unit (SalesUnitManager) or the record owner (Owner). |
id | UUID | Id of the approving user when type is User; empty for the other approver types. |
ApprovalProcessApproverType enum User, SalesUnitManager, Owner
Who is asked to approve a record in an approval process.
| Value | Description |
|---|---|
User | A specific user, given by id. |
SalesUnitManager | The managers of the record's sales unit. |
Owner | The owner of the record. |
ApprovalProcessExpirationResult enum Approve, Reject
Decision applied automatically when an approval request expires without a response.
| Value | Description |
|---|---|
Approve | The record is approved. |
Reject | The record is rejected. |
ApprovalProcessManualTrigger object 5 fields: actor, actorUnits, actorUsers, …
Trigger that lets users start an approval process manually on a record.
| Field | Type | Description |
|---|---|---|
actor | ProcessRecordTriggerActorEnum! | Which users are allowed to start the process: the process owner, selected users and sales units, any user, or applications only. |
actorUnits | [UUID!]! | Sales units whose members are allowed to start the process. Applies when the actor is restricted to selected units and users. |
actorUsers | [UUID!]! | Individual users allowed to start the process. Applies when the actor is restricted to selected units and users. |
entityType | EntityNameEnum! | Type of record whose changes start this process, such as Lead, Opportunity, Account or Contact. |
entityApiName | String | API name of the custom entity that starts this process. Set only when the trigger entity type is a custom entity. |
ApprovalProcessRecordLock enum ManagersCanEdit, ManagersAndApproversCanEdit
Who can still edit a record while its approval is pending or approved.
| Value | Description |
|---|---|
ManagersCanEdit | Only approval process managers can edit the record. |
ManagersAndApproversCanEdit | Approval process managers and the record's approvers can edit the record. |
ApprovalProcessRecordTrigger object 7 fields: actor, actorUnits, actorUsers, …
Trigger that starts an approval process when a record is created or updated.
| Field | Type | Description |
|---|---|---|
actor | ProcessRecordTriggerActorEnum! | Which users are allowed to start the process: the process owner, selected users and sales units, any user, or applications only. |
actorUnits | [UUID!]! | Sales units whose members are allowed to start the process. Applies when the actor is restricted to selected units and users. |
actorUsers | [UUID!]! | Individual users allowed to start the process. Applies when the actor is restricted to selected units and users. |
entityType | EntityNameEnum! | Type of record whose changes start this process, such as Lead, Opportunity, Account or Contact. |
entityApiName | String | API name of the custom entity that starts this process. Set only when the trigger entity type is a custom entity. |
applications | [UUID!]! | Applications whose actions are allowed to start the approval process. When empty, no application restriction is applied. |
event | ApprovalProcessRecordTriggerEventEnum! | Record change that starts the approval process: record created, updated, or created or updated. |
ApprovalProcessRecordTriggerEventEnum enum Create, CreateOrUpdate, Update
Record event that starts an approval process automatically.
| Value | Description |
|---|---|
Create | A record is created. |
CreateOrUpdate | A record is created or updated. |
Update | A record is updated. |
ApprovalProcessSchema object 5 fields: trigger, filter, settings, …
Definition of an approval process: what starts it, which records it applies to, who approves and what happens on approval or rejection.
| Field | Type | Description |
|---|---|---|
trigger | ApprovalProcessTrigger! | What starts the approval — a record event or a manual launch. |
filter | ProcessFilterNode! | Condition deciding which records the approval applies to. |
settings | ApprovalProcessSettings! | Approver list and approval behaviour. |
approveNodes | [ProcessNodeInterface!]! | Actions run when the approval is approved. |
rejectNodes | [ProcessNodeInterface!]! | Actions run when the approval is rejected. |
ApprovalProcessSettings object 8 fields: approvers, allApprove, canDelegate, …
Approvers of an approval process and how the approval is decided, delegated and expired.
| Field | Type | Description |
|---|---|---|
approvers | [ApprovalProcessApprover!]! | Ordered list of approvers who must act on the approval. |
allApprove | Boolean! | When true, every approver must approve; when false, a single approval suffices. |
canDelegate | Boolean! | When true, an approver may delegate their decision to another user. |
recordLock | ApprovalProcessRecordLock! | Who may still edit the record while approval is pending — managers, or managers and approvers. |
expiration | Boolean! | When true, the approval auto-resolves after expirationDays without a decision. |
expirationDays | Int! | Days before an unanswered approval expires; at least 1 when expiration is true. |
expirationResult | ApprovalProcessExpirationResult! | Outcome applied when the approval expires — Approve or Reject. |
salesProcessDependency | Boolean! | When true, the approval is tied to the sales step of the record being approved. |
ApprovalProcessTrigger union ApprovalProcessManualTrigger | ApprovalProcessRecordTrigger
What starts an approval process: a change of a record or a manual start.
ApprovalProcessTriggerTypeEnum enum Manual, RecordChange
How approval requests of an approval process are raised.
| Value | Description |
|---|---|
Manual | A user submits the record for approval. |
RecordChange | Raised automatically when a record matching the trigger condition is created or updated. |
ProcessActorInterface interface actor: ProcessRecordTriggerActorEnum!, actorUnits: [UUID!]!, actorUsers: [UUID!]!
Users who are allowed to start a process or an approval process.
| Field | Type | Description |
|---|---|---|
actor | ProcessRecordTriggerActorEnum! | Which users are allowed to start the process: the process owner, selected users and sales units, any user, or applications only. |
actorUnits | [UUID!]! | Sales units whose members are allowed to start the process. Applies when the actor is restricted to selected units and users. |
actorUsers | [UUID!]! | Individual users allowed to start the process. Applies when the actor is restricted to selected units and users. |
ProcessArchiveRecordNode object 6 fields: id, parentId, name, …
A node which archives the record: a lead, opportunity, quote, account or contact.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
entity | ProcessEntityTemplate | Field values and operations applied to the record this node creates or updates. |
completeRelatedActivities | Boolean! | When true, mark all activities related to the archived record as completed. |
ProcessChangeOwnershipAssigneeType enum Client, SalesUnit
Where a change-ownership action picks the new owner from.
| Value | Description |
|---|---|
Client | From a list of specific users. |
SalesUnit | From the members of the selected sales units. |
ProcessChangeOwnershipNode object 7 fields: id, parentId, name, …
Process action that assigns a new owner to the record, rotating among users or the members of sales units.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
assigneeType | ProcessChangeOwnershipAssigneeType! | Whether the new owner is picked from a list of specific users or from the members of selected sales units. |
clientIds | [ID!]! | Users among whom ownership is rotated in round-robin order. Used when the assignee type is a list of users. |
salesUnitIds | [ID!]! | Sales units whose members ownership is rotated among in round-robin order. Used when the assignee type is sales unit. |
ProcessCopyRecordNode object 7 fields: id, parentId, name, …
Process action that creates a copy of the triggered record.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
entity | ProcessEntityTemplate | Field values and operations applied to the record this node creates or updates. |
triggerProcess | Boolean! | When true, the records affected by this node also start another process. |
triggerProcessId | UUID | Process that the affected records start when triggering another process is enabled. |
ProcessCreateRecordNode object 9 fields: id, parentId, name, …
A node which creates a new record that is not linked to the triggering record.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
entity | ProcessEntityTemplate | Field values and operations applied to the record this node creates or updates. |
triggerProcess | Boolean! | When true, the records affected by this node also start another process. |
triggerProcessId | UUID | Process that the affected records start when triggering another process is enabled. |
entityType | EntityNameEnum! | Type of record this node creates, such as Lead, Opportunity, Account, Contact, Task or Appointment. |
entityApiName | String | API name of the custom entity this node creates. Set only when the created record type is a custom entity. |
ProcessCreateRelatedRecordNode object 10 fields: id, parentId, name, …
A node which creates entity with relation to the triggered entity
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
relation | ProcessRecordNodeRelationEnum! | Relationship from the triggered record to the related records this node acts on, such as a standard relation, a primary account or contact, a parent account, or a lookup field relation. |
relationLookupFieldId | String | Lookup field that defines the relation. Required when the relation is a lookup, and must be empty otherwise. |
entityApiName | String | API name of the related custom entity. Set only when the related record type is a custom entity. |
entity | ProcessEntityTemplate | Field values and operations applied to the record this node creates or updates. |
triggerProcess | Boolean! | When true, the records affected by this node also start another process. |
triggerProcessId | UUID | Process that the affected records start when triggering another process is enabled. |
ProcessEnrollEmailSequenceNode object 5 fields: id, parentId, name, …
Automation step that enrolls the triggered record into an email sequence.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
emailSequenceId | UUID! | Email sequence the triggered record is enrolled into. |
ProcessFilterNode object 8 fields: id, parentId, name, …
Process node holding filter conditions; only the records that match them continue through the process.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
isEnabled | Boolean! | Whether the filter is applied. When false, the filter conditions are ignored. |
filterMainBox | MainFilterBox! | Primary group of filter conditions evaluated on the main record type. |
filterSiblingBoxes | [FilterBox!]! | Additional groups of filter conditions evaluated on related record types. |
operator | FilterGroupOperator! | How the filter conditions are combined: all must match, any may match, or a custom expression. |
formula | String | Custom boolean expression combining the numbered filter conditions. Used when the operator is a custom expression. |
ProcessLinkRecordNode object 14 fields: id, parentId, name, …
Process action that links the triggered record to existing related records.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
triggerProcess | Boolean! | When true, the records linked by this node also start another process. |
triggerProcessId | UUID | Process that the linked records start when triggering another process is enabled. |
relation | ProcessRecordNodeRelationEnum! | Relationship from the triggered record to the related records this node acts on, such as a standard relation, a primary account or contact, a parent account, or a lookup field relation. |
relationLookupFieldId | String | Lookup field that defines the relation. Required when the relation is a lookup, and must be empty otherwise. |
entityApiName | String | API name of the related custom entity. Set only when the related record type is a custom entity. |
recordIdentificationType | ProcessRecordIdentificationType! | How the records to link are found: by a filter condition, or by matching a field value against a field on the triggered record. |
recordFilter | FieldFilter | Condition that selects the records to link. Used when records are identified by filter. |
triggeredRecordFieldId | UUID | Field on the triggered record whose value is matched to find records to link. Used when records are identified by field. |
recordFieldId | UUID | Field on the candidate records that must match the triggered record value. Used when records are identified by field. |
linkAll | Boolean! | When true, link every matching record; when false, link only the best single match. |
ProcessManualTrigger object 5 fields: actor, actorUnits, actorUsers, …
Trigger that lets users start a process manually on a record.
| Field | Type | Description |
|---|---|---|
actor | ProcessRecordTriggerActorEnum! | Which users are allowed to start the process: the process owner, selected users and sales units, any user, or applications only. |
actorUnits | [UUID!]! | Sales units whose members are allowed to start the process. Applies when the actor is restricted to selected units and users. |
actorUsers | [UUID!]! | Individual users allowed to start the process. Applies when the actor is restricted to selected units and users. |
entityType | EntityNameEnum! | Type of record whose changes start this process, such as Lead, Opportunity, Account or Contact. |
entityApiName | String | API name of the custom entity that starts this process. Set only when the trigger entity type is a custom entity. |
ProcessNodeInterface interface id: ID!, parentId: ID, name: String!
Node of a process: a condition or an action in the process tree.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
ProcessNodeSchedule object offset: Int!, offsetUnit: ProcessNodeScheduleUnitEnum!, offsetFieldId: UUID, date: DateTime
Delay of a process action: an offset from the trigger time or from a date field, or a fixed date.
| Field | Type | Description |
|---|---|---|
offset | Int! | Delay before the action runs, expressed in the chosen unit. Positive values schedule after the reference point, negative values before it. |
offsetUnit | ProcessNodeScheduleUnitEnum! | Unit of the offset: minutes, hours, days, working days, weeks or months. |
offsetFieldId | UUID | Date field on the triggered record that the offset is measured from. When omitted, the offset is measured from the time the action is reached. |
date | DateTime | Fixed date and time at which the action runs, used instead of an offset. |
ProcessNodeScheduleUnitEnum enum Minute, Hour, Day, WorkingDay, Week, Month
Time unit of a scheduling offset in a process.
| Value | Description |
|---|---|
Minute | Offset measured in minutes. |
Hour | Offset measured in hours. |
Day | Offset measured in calendar days. |
WorkingDay | Days that count only the space's working days. |
Week | Offset measured in weeks. |
Month | Offset measured in months. |
ProcessQualifyRecordNode object 5 fields: id, parentId, name, …
Automation step that qualifies the lead that triggered the automation into an opportunity.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
entity | ProcessEntityTemplate | Field values and operations applied to the record this node creates or updates. |
ProcessRecordIdentificationType enum Filter, Field
How a link-record action finds the records to link.
| Value | Description |
|---|---|
Filter | Records matching a filter condition. |
Field | Records whose field value matches a field on the triggered record. |
ProcessRecordTrigger object 9 fields: actor, actorUnits, actorUsers, …
Trigger that starts a process on a change of a record, such as its creation, update or deletion.
| Field | Type | Description |
|---|---|---|
actor | ProcessRecordTriggerActorEnum! | Which users are allowed to start the process: the process owner, selected users and sales units, any user, or applications only. |
actorUnits | [UUID!]! | Sales units whose members are allowed to start the process. Applies when the actor is restricted to selected units and users. |
actorUsers | [UUID!]! | Individual users allowed to start the process. Applies when the actor is restricted to selected units and users. |
entityType | EntityNameEnum! | Type of record whose changes start this process, such as Lead, Opportunity, Account or Contact. |
entityApiName | String | API name of the custom entity that starts this process. Set only when the trigger entity type is a custom entity. |
event | ProcessRecordTriggerEventEnum! | Record change that starts the process: record created, updated, created or updated, deleted, or an email sent or received. |
changedFields | [UUID!] | Fields whose change starts the process. When empty, a change to any field qualifies. Applies to the update event. |
applications | [UUID!] | Applications whose actions are allowed to start the process. When empty, no application restriction is applied. |
parentEntityType | EntityNameEnum | Parent record type used when the trigger entity is a product line item, identifying whether the parent is an opportunity or a quote. |
ProcessRecordTriggerActorEnum enum ProcessOwner, SelectedUnitsAndUsers, AnyUser, ApplicationsOnly
Whose actions start a process: the process owner, selected users and sales units, any user, or only selected applications.
| Value | Description |
|---|---|
ProcessOwner | Only actions of the process owner; always used by personal processes. |
SelectedUnitsAndUsers | Actions of the selected users and members of the selected sales units. |
AnyUser | Actions of any user. |
ApplicationsOnly | Only changes made through the selected applications; not available for manual triggers. |
ProcessScheduleInterface interface schedule: ProcessNodeSchedule
Process action whose run can be delayed by a schedule.
| Field | Type | Description |
|---|---|---|
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
ProcessSendEmailNode object 6 fields: id, parentId, name, …
Automation step that sends an email, either to each recipient individually or as one mass email.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
isMass | Boolean! | Whether the email is sent as a single mass mailing to all recipients rather than as individual messages. |
email | ProcessNodeEmail! | Email message this node sends. |
ProcessSendWebhookNode object 5 fields: id, parentId, name, …
Process action that sends an HTTP request to an external URL.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
webhook | ProcessWebhook! | Webhook request this node sends. |
ProcessTriggerProcessNode object 10 fields: id, parentId, name, …
Process action that starts another process for the triggered record or its related records.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
triggerRelation | ProcessRecordNodeRelationEnum | Relation from the triggered record to the records the process is started for; null starts it for the triggered record itself. |
triggerRelationEntityApiName | String | API name of the related custom entity to start the process for. Set only when the relation targets a custom entity. |
triggerRelationSender | Boolean | When true, the related records are passed to the started process as the records that triggered it. |
relationLookupFieldId | String | Lookup field that defines the relation. Required when the relation is a lookup, and must be empty otherwise. |
processId | UUID! | Process that this node starts. |
filter | FieldFilter | Optional condition that narrows which related records the started process runs for. |
ProcessUnarchiveRecordNode object 5 fields: id, parentId, name, …
A node which takes an archived lead, opportunity, quote, account or contact out of the archive.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
newClosingDate | Date | Closing date set on the record when it is unarchived. Required when unarchiving an opportunity or quote. |
ProcessUnenrollEmailSequenceNode object 5 fields: id, parentId, name, …
Automation step that removes the triggered record from an email sequence.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
emailSequenceId | UUID! | Email sequence the triggered record is removed from. |
ProcessUpdateAiFieldsNode object 10 fields: id, parentId, name, …
Automatizer action node that triggers AI Smart Field value updates.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
triggerProcess | Boolean! | When true, the records affected by this node also start another process. |
triggerProcessId | UUID | Process that the affected records start when triggering another process is enabled. |
smartAiFieldIds | [UUID!]! | AI smart fields whose values are recalculated when this node runs. |
relation | ProcessRecordNodeRelationEnum | Relationship from the triggered record to the records whose AI fields are updated. When null, the triggered record itself is updated. |
relationLookupFieldId | String | Lookup field that defines the relation. Required when the relation is a lookup, and must be empty otherwise. |
entityApiName | String | API name of the related custom entity whose AI fields are updated. Set only when the related record type is a custom entity. |
ProcessUpdateRecordNode object 7 fields: id, parentId, name, …
Automation step that updates the record that triggered the automation.
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
entity | ProcessEntityTemplate | Field values and operations applied to the record this node creates or updates. |
triggerProcess | Boolean! | When true, the records affected by this node also start another process. |
triggerProcessId | UUID | Process that the affected records start when triggering another process is enabled. |
ProcessUpdateRelatedRecordNode object 11 fields: id, parentId, name, …
A node which updates related entities of triggered entity
| Field | Type | Description |
|---|---|---|
id | ID! | Unique identifier of this node within the process node tree. |
parentId | ID | Identifier of the node that precedes this one in the process node tree. Null for nodes attached directly to the trigger. |
name | String! | Display name of the node shown in the process builder. |
schedule | ProcessNodeSchedule | Optional schedule that delays this action to a later time. When null, the action runs immediately when reached. |
relation | ProcessRecordNodeRelationEnum! | Relationship from the triggered record to the related records this node acts on, such as a standard relation, a primary account or contact, a parent account, or a lookup field relation. |
relationLookupFieldId | String | Lookup field that defines the relation. Required when the relation is a lookup, and must be empty otherwise. |
entityApiName | String | API name of the related custom entity. Set only when the related record type is a custom entity. |
entity | ProcessEntityTemplate | Field values and operations applied to the record this node creates or updates. |
triggerProcess | Boolean! | When true, the records affected by this node also start another process. |
triggerProcessId | UUID | Process that the affected records start when triggering another process is enabled. |
filter | FieldFilter | Optional condition that narrows which related records are updated. When omitted, all related records are updated. |
ProcessWebhook object 8 fields: requestType, url, requestFormat, …
HTTP request a process sends: method, URL, body, authentication and headers.
| Field | Type | Description |
|---|---|---|
requestType | ProcessWebhookRequestType! | HTTP method the webhook request is sent with: POST, GET, PUT, PATCH or DELETE. |
url | String! | Target URL the webhook request is sent to. Must be an https address and may contain personalization tags. |
requestFormat | ProcessWebhookRequestFormat! | Format of the request body: plain text, JSON or XML. |
simpleContent | [String!] | Fields to include in the request body, given as field identifiers or personalization markers. Mutually exclusive with advanced content. |
advancedContent | String | Free-form request body template with personalization tags. Mutually exclusive with simple content. |
timeFormat | ProcessWebhookTimeFormat! | How date and time values in the request body are formatted: a Unix timestamp or an ISO 8601 string. |
basicAuth | ProcessWebhookBasicAuth | Optional HTTP basic authentication credentials sent with the request. |
headers | [ProcessWebhookHeader!] | Custom HTTP headers sent with the webhook request. |
ProcessWebhookBasicAuth object username: String, password: String
HTTP basic authentication credentials sent with a process webhook request.
| Field | Type | Description |
|---|---|---|
username | String | Username sent with the webhook request using HTTP basic authentication. |
password | String | Password sent with the webhook request using HTTP basic authentication. Returned masked. |
ProcessWebhookHeader object key: String, value: String, encrypted: Boolean
Custom HTTP header sent with a process webhook request.
| Field | Type | Description |
|---|---|---|
key | String | Name of the HTTP header sent with the webhook request. |
value | String | Value of the HTTP header. Returned masked when the header is marked as encrypted. |
encrypted | Boolean | When true, the header value is stored encrypted and hidden in responses. |
ProcessWebhookRequestFormat enum Text, JSON, XML
Format of the body of a webhook request.
| Value | Description |
|---|---|
Text | Plain text (text/plain). |
JSON | JSON (application/json). |
XML | XML (text/xml). |
ProcessWebhookRequestType enum POST, GET, PUT, PATCH, DELETE
HTTP method a webhook action uses for its request.
| Value | Description |
|---|---|
POST | Sends the request with the HTTP POST method. |
GET | Sends the request with the HTTP GET method. |
PUT | Sends the request with the HTTP PUT method. |
PATCH | Sends the request with the HTTP PATCH method. |
DELETE | Sends the request with the HTTP DELETE method. |
ProcessWebhookTimeFormat enum Timestamp, ISO8601
How dates and times are written in a webhook request body.
| Value | Description |
|---|---|
Timestamp | Unix timestamp in seconds. |
ISO8601 | ISO 8601 string. |