Processes
Service for managing and executing UiPath Automation Processes.
Processes (also known as automations or workflows) are the core units of automation in UiPath, representing sequences of activities that perform specific business tasks. UiPath Processes Guide
Usage¶
Prerequisites: Initialize the SDK first - see Getting Started
import { Processes } from '@uipath/uipath-typescript/processes';
const processes = new Processes(sdk);
const allProcesses = await processes.getAll();
Methods¶
getAll()¶
getAll<
T>(options?:T):Promise<TextendsHasPaginationOptions<T> ?PaginatedResponse<ProcessGetResponse> :NonPaginatedResponse<ProcessGetResponse>>
Gets all processes across folders with optional filtering Returns a NonPaginatedResponse with data and totalCount when no pagination parameters are provided, or a PaginatedResponse when any pagination parameter is provided
Type Parameters¶
| Type Parameter | Default type |
|---|---|
T extends ProcessGetAllOptions |
ProcessGetAllOptions |
Parameters¶
| Parameter | Type | Description |
|---|---|---|
options? |
T |
Query options including optional folderId and pagination options |
Returns¶
Promise<T extends HasPaginationOptions<T> ? PaginatedResponse<ProcessGetResponse> : NonPaginatedResponse<ProcessGetResponse>>
Promise resolving to either an array of processes NonPaginatedResponse
Example¶
// Standard array return
const allProcesses = await processes.getAll();
// Get processes within a specific folder
const folderProcesses = await processes.getAll({
folderId: <folderId>
});
// Get processes with filtering
const filteredProcesses = await processes.getAll({
filter: "name eq 'MyProcess'"
});
// First page with pagination
const page1 = await processes.getAll({ pageSize: 10 });
// Navigate using cursor
if (page1.hasNextPage) {
const page2 = await processes.getAll({ cursor: page1.nextCursor });
}
// Jump to specific page
const page5 = await processes.getAll({
jumpToPage: 5,
pageSize: 10
});
getById()¶
getById(
id:number,folderId:number,options?:ProcessGetByIdOptions):Promise<ProcessGetResponse>
Gets a single process by ID
Parameters¶
| Parameter | Type | Description |
|---|---|---|
id |
number |
Process ID |
folderId |
number |
Required folder ID |
options? |
ProcessGetByIdOptions |
Optional query parameters |
Returns¶
Promise<ProcessGetResponse>
Promise resolving to a single process ProcessGetResponse
Example¶
getByName()¶
getByName(
name:string,options?:ProcessGetByNameOptions):Promise<ProcessGetResponse>
Retrieves a single process by name.
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
Process name to search for |
options? |
ProcessGetByNameOptions |
Folder scoping (folderId / folderKey / folderPath) and optional query parameters (expand, select) |
Returns¶
Promise<ProcessGetResponse>
Promise resolving to a single process ProcessGetResponse
Example¶
// By folder ID
await processes.getByName('MyProcess', { folderId: 123 });
// By folder key (GUID)
await processes.getByName('MyProcess', { folderKey: '5f6dadf1-3677-49dc-8aca-c2999dd4b3ba' });
// By folder path
await processes.getByName('MyProcess', { folderPath: 'Shared/Finance' });
// With expand
await processes.getByName('MyProcess', { folderPath: 'Shared/Finance', expand: 'entryPoints' });
start()¶
start(
processRef:ProcessRef,options?:ProcessStartRefOptions):Promise<ProcessStartResponse[]>
Starts a process. First fetch the process via processes.getAll() or
processes.getByName() to obtain a name or key to pass in processRef.
Folder context and every startInfo field (jobPriority, jobsCount, robotIds,
inputArguments, etc.) live in options. Runtime resource overrides apply on both
{ name } and { key } — a cross-folder redirect steers both the identity and the
folder scoping to the override target.
Parameters¶
| Parameter | Type | Description |
|---|---|---|
processRef |
ProcessRef |
Process identifier — see the variants for their folder-scope requirements |
options? |
ProcessStartRefOptions |
Folder scoping + startInfo fields + optional expand / select / filter / orderby |
Returns¶
Promise<ProcessStartResponse[]>
Promise resolving to an array of started process instances of ProcessStartResponse
Example¶
import { JobPriority } from '@uipath/uipath-typescript/processes';
// By process name + folder path
await processes.start({ name: 'InvoiceReview' }, { folderPath: 'Shared/Live' });
// By process key (GUID)
await processes.start({ key: '5f6dadf1-3677-49dc-8aca-c2999dd4b3ba' }, { folderKey: '<folderKey>' });
// With startInfo options
await processes.start(
{ name: 'InvoiceReview' },
{ folderPath: 'Shared/Live', jobPriority: JobPriority.High, jobsCount: 3 },
);
// With expand to include related entities
await processes.start(
{ name: 'InvoiceReview' },
{ folderPath: 'Shared/Live', expand: 'Robot,Machine' },
);