UiPath · AsyncAPI Specification
UiPath Orchestrator Webhook Events
Version 2024.10
The UiPath Orchestrator webhook system delivers real-time event notifications to registered HTTP endpoints when automation events occur within the platform. Webhooks cover events for jobs, robots, queues, queue items, processes, and triggers. Each event is delivered as an HTTP POST request with a JSON payload to the subscriber's configured URL. Payload authenticity can be verified using the HMAC-SHA256 signature included in the X-UiPath-Signature header, computed from the raw request body and the webhook's configured secret. Webhook subscriptions are managed via the Orchestrator REST API or the Orchestrator web interface.
View Spec
View on GitHub
AutomationRobotic Process AutomationRPAArtificial IntelligenceDocument ProcessingEnterprise AutomationOrchestrationTestingAsyncAPIWebhooksEvents
Channels
/{organizationName}/{tenantName}/orchestrator_/webhook
publish
receiveOrchestratorEventReceive an Orchestrator webhook event
The channel through which UiPath Orchestrator delivers event notifications to registered webhook subscribers. All event types are delivered to the same configured URL. The event type is identified by the Type field in the payload envelope.
Messages
✉
JobCreated
Job Created
A new automation job was created in Orchestrator
✉
JobStarted
Job Started
An automation job started executing
✉
JobCompleted
Job Completed
An automation job completed successfully
✉
JobFaulted
Job Faulted
An automation job encountered a fatal error
✉
JobStopped
Job Stopped
An automation job was stopped by a user or system
✉
RobotConnected
Robot Connected
A robot connected to Orchestrator
✉
RobotDisconnected
Robot Disconnected
A robot disconnected from Orchestrator
✉
RobotDeleted
Robot Deleted
A robot was deleted from Orchestrator
✉
QueueItemAdded
Queue Item Added
A new item was added to a queue
✉
QueueItemTransactionStarted
Queue Item Transaction Started
A robot began processing a queue transaction item
✉
QueueItemTransactionCompleted
Queue Item Transaction Completed
A queue transaction item was successfully processed
✉
QueueItemTransactionFailed
Queue Item Transaction Failed
A queue transaction item processing failed
✉
QueueItemTransactionAbandoned
Queue Item Transaction Abandoned
A queue transaction item was abandoned without processing
✉
ProcessCreated
Process Created
A new automation process was deployed to a folder
✉
ProcessUpdated
Process Updated
An automation process was updated
✉
ProcessDeleted
Process Deleted
An automation process was deleted
Servers
https
subscriberEndpoint
{webhookUrl}
The subscriber-configured HTTPS endpoint that receives webhook event POST requests from UiPath Orchestrator. The URL is specified when creating a webhook subscription via the Orchestrator API or interface.
AsyncAPI Specification
asyncapi: 2.6.0
info:
title: UiPath Orchestrator Webhook Events
description: >-
The UiPath Orchestrator webhook system delivers real-time event
notifications to registered HTTP endpoints when automation events occur
within the platform. Webhooks cover events for jobs, robots, queues,
queue items, processes, and triggers. Each event is delivered as an
HTTP POST request with a JSON payload to the subscriber's configured URL.
Payload authenticity can be verified using the HMAC-SHA256 signature
included in the X-UiPath-Signature header, computed from the raw request
body and the webhook's configured secret. Webhook subscriptions are
managed via the Orchestrator REST API or the Orchestrator web interface.
version: '2024.10'
contact:
name: UiPath Support
url: https://support.uipath.com
externalDocs:
description: UiPath Orchestrator Webhooks Documentation
url: https://docs.uipath.com/orchestrator/automation-cloud/latest/user-guide/about-webhooks
servers:
subscriberEndpoint:
url: '{webhookUrl}'
protocol: https
description: >-
The subscriber-configured HTTPS endpoint that receives webhook event
POST requests from UiPath Orchestrator. The URL is specified when
creating a webhook subscription via the Orchestrator API or interface.
variables:
webhookUrl:
description: The HTTPS URL of the webhook receiver endpoint
default: https://your-app.example.com/webhook
security:
- hmacSignature: []
channels:
/{organizationName}/{tenantName}/orchestrator_/webhook:
description: >-
The channel through which UiPath Orchestrator delivers event notifications
to registered webhook subscribers. All event types are delivered to the
same configured URL. The event type is identified by the Type field in
the payload envelope.
parameters:
organizationName:
description: The UiPath organization name
schema:
type: string
tenantName:
description: The UiPath tenant name
schema:
type: string
publish:
operationId: receiveOrchestratorEvent
summary: Receive an Orchestrator webhook event
description: >-
An HTTP POST request delivered by UiPath Orchestrator to the subscriber
URL whenever a subscribed event occurs. The payload contains a Type
field identifying the event, an EventId for idempotency, a Timestamp,
and event-specific data. The X-UiPath-Signature header contains the
HMAC-SHA256 signature for payload verification.
message:
oneOf:
- $ref: '#/components/messages/JobCreated'
- $ref: '#/components/messages/JobStarted'
- $ref: '#/components/messages/JobCompleted'
- $ref: '#/components/messages/JobFaulted'
- $ref: '#/components/messages/JobStopped'
- $ref: '#/components/messages/RobotConnected'
- $ref: '#/components/messages/RobotDisconnected'
- $ref: '#/components/messages/RobotDeleted'
- $ref: '#/components/messages/QueueItemAdded'
- $ref: '#/components/messages/QueueItemTransactionStarted'
- $ref: '#/components/messages/QueueItemTransactionCompleted'
- $ref: '#/components/messages/QueueItemTransactionFailed'
- $ref: '#/components/messages/QueueItemTransactionAbandoned'
- $ref: '#/components/messages/ProcessCreated'
- $ref: '#/components/messages/ProcessUpdated'
- $ref: '#/components/messages/ProcessDeleted'
components:
securitySchemes:
hmacSignature:
type: httpApiKey
name: X-UiPath-Signature
in: header
description: >-
HMAC-SHA256 signature of the raw request body, computed using the
webhook secret configured at subscription time. Verify this signature
to ensure the payload originated from UiPath Orchestrator and has
not been tampered with.
messages:
JobCreated:
name: job.created
title: Job Created
summary: A new automation job was created in Orchestrator
description: >-
Delivered when a new job is created and queued for execution. Contains
the job details including the process name, assigned robot, and initial
state. EventId provides a unique identifier for idempotent processing.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/JobEventPayload'
JobStarted:
name: job.started
title: Job Started
summary: An automation job started executing
description: >-
Delivered when a job transitions from the Pending state to the Running
state, indicating a robot has begun executing the automation process.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/JobEventPayload'
JobCompleted:
name: job.completed
title: Job Completed
summary: An automation job completed successfully
description: >-
Delivered when a job finishes execution with a Successful state.
The payload includes the job's output arguments if the process
returned any output parameters.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/JobEventPayload'
JobFaulted:
name: job.faulted
title: Job Faulted
summary: An automation job encountered a fatal error
description: >-
Delivered when a job terminates with a Faulted state due to an
unhandled exception or system error. The Info field in the job
payload contains the error message and stack trace details.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/JobEventPayload'
JobStopped:
name: job.stopped
title: Job Stopped
summary: An automation job was stopped by a user or system
description: >-
Delivered when a job is manually stopped or terminated by a Kill
command. The payload contains the final job state and stop time.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/JobEventPayload'
RobotConnected:
name: robot.connected
title: Robot Connected
summary: A robot connected to Orchestrator
description: >-
Delivered when a UiPath Robot establishes a connection to the
Orchestrator service and becomes available for job execution.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/RobotEventPayload'
RobotDisconnected:
name: robot.disconnected
title: Robot Disconnected
summary: A robot disconnected from Orchestrator
description: >-
Delivered when a UiPath Robot loses its connection to the Orchestrator
service, either due to a network interruption or a graceful shutdown.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/RobotEventPayload'
RobotDeleted:
name: robot.deleted
title: Robot Deleted
summary: A robot was deleted from Orchestrator
description: >-
Delivered when a robot registration is permanently removed from
Orchestrator. The payload contains the deleted robot's identifiers
and last known properties.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/RobotEventPayload'
QueueItemAdded:
name: queueItem.added
title: Queue Item Added
summary: A new item was added to a queue
description: >-
Delivered when a new transaction item is added to a queue, either
via the Orchestrator API or by a robot using the Add Queue Item
activity. Contains the queue item details and the target queue.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/QueueItemEventPayload'
QueueItemTransactionStarted:
name: queueItem.transactionStarted
title: Queue Item Transaction Started
summary: A robot began processing a queue transaction item
description: >-
Delivered when a robot picks up a queue item for processing,
transitioning the item status from New to InProgress.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/QueueItemEventPayload'
QueueItemTransactionCompleted:
name: queueItem.transactionCompleted
title: Queue Item Transaction Completed
summary: A queue transaction item was successfully processed
description: >-
Delivered when a robot successfully completes processing of a queue
item, setting its status to Successful. The payload includes the
robot, processing times, and any output written by the robot.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/QueueItemEventPayload'
QueueItemTransactionFailed:
name: queueItem.transactionFailed
title: Queue Item Transaction Failed
summary: A queue transaction item processing failed
description: >-
Delivered when a robot fails to process a queue item, setting its
status to Failed. The payload includes the error type, message,
and retry count. If retries are configured, the item may be
automatically re-queued.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/QueueItemEventPayload'
QueueItemTransactionAbandoned:
name: queueItem.transactionAbandoned
title: Queue Item Transaction Abandoned
summary: A queue transaction item was abandoned without processing
description: >-
Delivered when a queue item is abandoned, typically when the robot
processing it disconnects unexpectedly. The item may be automatically
returned to the queue for retry depending on queue configuration.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/QueueItemEventPayload'
ProcessCreated:
name: process.created
title: Process Created
summary: A new automation process was deployed to a folder
description: >-
Delivered when a new process (release) is created by deploying a
package to a folder in Orchestrator.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/ProcessEventPayload'
ProcessUpdated:
name: process.updated
title: Process Updated
summary: An automation process was updated
description: >-
Delivered when an existing process is updated, such as when a
newer package version is associated with the process definition.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/ProcessEventPayload'
ProcessDeleted:
name: process.deleted
title: Process Deleted
summary: An automation process was deleted
description: >-
Delivered when a process is permanently removed from Orchestrator.
Any jobs associated with this process that have not yet started
will be cancelled.
headers:
type: object
properties:
X-UiPath-Signature:
type: string
description: HMAC-SHA256 signature of the request body for payload verification
payload:
$ref: '#/components/schemas/ProcessEventPayload'
schemas:
WebhookEventEnvelope:
type: object
description: Common envelope fields present in all Orchestrator webhook event payloads
required:
- Type
- EventId
- Timestamp
properties:
Type:
type: string
description: >-
Machine-readable event type identifier (e.g., job.faulted,
queueItem.transactionCompleted). Use this field to route the
payload to the appropriate handler.
EventId:
type: string
format: uuid
description: Unique GUID identifier for this event delivery. Use for idempotent processing.
Timestamp:
type: string
format: date-time
description: ISO 8601 timestamp when the event occurred in Orchestrator
JobEventPayload:
allOf:
- $ref: '#/components/schemas/WebhookEventEnvelope'
- type: object
description: Webhook event payload for job lifecycle events
properties:
Job:
$ref: '#/components/schemas/WebhookJob'
WebhookJob:
type: object
description: Job data included in job lifecycle webhook events
properties:
Id:
type: integer
format: int64
description: Unique integer identifier of the job
Key:
type: string
format: uuid
description: Unique GUID key of the job
ReleaseName:
type: string
description: Name of the process that the job executes
ProcessVersion:
type: string
description: Package version used by the job
State:
type: string
enum: [Pending, Running, Stopping, Terminating, Faulted, Successful, Stopped, Suspended, Resumed]
description: Current execution state of the job
StartTime:
type: string
format: date-time
description: ISO 8601 timestamp when the job started
EndTime:
type: string
format: date-time
description: ISO 8601 timestamp when the job ended
Info:
type: string
description: Additional information or error message, especially relevant for Faulted state
Robot:
$ref: '#/components/schemas/WebhookRobotRef'
OrganizationUnitId:
type: integer
format: int64
description: Folder ID in which the job ran
OutputArguments:
type: string
description: JSON-serialized output arguments returned by the process on completion
WebhookRobotRef:
type: object
description: Robot reference included in job event payloads
properties:
Id:
type: integer
format: int64
description: Unique integer identifier of the robot
Name:
type: string
description: Display name of the robot
MachineName:
type: string
description: Hostname of the machine the robot executed on
MachineId:
type: integer
format: int64
description: Unique integer identifier of the machine
Version:
type: string
description: Version of the UiPath Robot software
Type:
type: string
description: Licensing type of the robot
HostingType:
type: string
enum: [Standard, Serverless, NonProduction]
description: Robot hosting classification
UserName:
type: string
description: Windows or Linux username the robot runs under
RobotEventPayload:
allOf:
- $ref: '#/components/schemas/WebhookEventEnvelope'
- type: object
description: Webhook event payload for robot lifecycle events
properties:
Robot:
$ref: '#/components/schemas/WebhookRobot'
WebhookRobot:
type: object
description: Robot data included in robot lifecycle webhook events
properties:
Id:
type: integer
format: int64
description: Unique integer identifier of the robot
Name:
type: string
description: Display name of the robot
MachineName:
type: string
description: Hostname of the machine this robot is registered on
MachineId:
type: integer
format: int64
description: Unique integer identifier of the machine
Type:
type: string
description: Licensing type of the robot
OrganizationUnitId:
type: integer
format: int64
description: Folder ID to which the robot is assigned
QueueItemEventPayload:
allOf:
- $ref: '#/components/schemas/WebhookEventEnvelope'
- type: object
description: Webhook event payload for queue item lifecycle events
properties:
QueueItem:
$ref: '#/components/schemas/WebhookQueueItem'
Queue:
$ref: '#/components/schemas/WebhookQueueRef'
WebhookQueueItem:
type: object
description: Queue item data included in queue item lifecycle webhook events
properties:
Id:
type: integer
format: int64
description: Unique integer identifier of the queue item
Key:
type: string
format: uuid
description: Unique GUID key of the queue item
QueueDefinitionId:
type: integer
format: int64
description: ID of the queue this item belongs to
Status:
type: string
enum: [New, InProgress, Failed, Successful, Abandoned, Retried, Deleted]
description: Processing status of the queue item at event time
ReviewStatus:
type: string
enum: [None, InReview, Verified, Retried]
description: Manual review status for failed items
Priority:
type: string
enum: [Low, Normal, High]
description: Processing priority of the queue item
CreationTime:
type: string
format: date-time
description: ISO 8601 timestamp when the item was added to the queue
StartProcessing:
type: string
format: date-time
description: ISO 8601 timestamp when processing began
EndProcessing:
type: string
format: date-time
description: ISO 8601 timestamp when processing ended
RetryNumber:
type: integer
description: Number of times this item has been retried
Robot:
$ref: '#/components/schemas/WebhookRobotRef'
SpecificContent:
type: object
additionalProperties: true
description: Custom key-value payload data for the queue item
Output:
type: object
additionalProperties: true
description: Output data written by the robot during processing
WebhookQueueRef:
type: object
description: Queue reference included in queue item event payloads
properties:
Id:
type: integer
format: int64
description: Unique integer identifier of the queue definition
Name:
type: string
description: Display name of the queue
Description:
type: string
description: Description of the queue
MaxNumberOfRetries:
type: integer
description: Maximum number of automatic retries configured for the queue
AcceptAutomaticallyRetry:
type: boolean
description: Whether failed items are automatically requeued for retry
EnforceUniqueReference:
type: boolean
description: Whether unique references are enforced on this queue
ProcessEventPayload:
allOf:
- $ref: '#/components/schemas/WebhookEventEnvelope'
- type: object
description: Webhook event payload for process lifecycle events
properties:
Process:
$ref: '#/components/schemas/WebhookProcess'
WebhookProcess:
type: object
description: Process data included in process lifecycle webhook events
properties:
Id:
type: integer
format: int64
description: Unique integer identifier of the process
Name:
type: string
description: Display name of the process
Key:
type: string
format: uuid
description: Unique GUID key of the process
ProcessVersion:
type: string
description: Version of the underlying package
OrganizationUnitId:
type: integer
format: int64
description: Folder ID in which the process is deployed