- Getting Started
- Requirements
- Best Practices
- Installation
- Updating
- Identity Server
- Troubleshooting startup errors
Webhooks AppSettings.json
appsetting.json
file (C:\Program Files (x86)\UiPath\Orchestrator\Webhooks
) contains the out-of-the-box settings for the Webhooks Service. It is recommended to configure your custom settings in the
appsetting.Production.json
. This file overrides any pre-existing settings within appsetting.json
after each installation process.
appsetting.Production.json
settings under any
circumstances.
Parameters that are not documented in this page should not be changed.
All parameters are case sensitive.
Settings can be configured in multiple places. Here are the priorities used by Webhooks Service when determining the value of a setting, listed from high (1) to low (3):
- Value within the
appsettings.Production.json
file - Value within the
appsettings.json
file - Default value setting within the code. Used only if a specific setting can't be found within
appsettings.Production.json
orappsettings.json
.
appsettings.json
file has an internal structure composed of multiple json sections separated by a comma.
"OrchestratorSqlClientSettings": {
"ConnectionString": "<OrchestratorConnectionString>",
"Enabled": true
},
"OrchestratorSqlClientSettings": {
"ConnectionString": "<OrchestratorConnectionString>",
"Enabled": true
},
ConnectionString
The connection string as generated by the Orchestrator instance you want to connect to.
"WebhookServiceConfig": {
"MaxWorkerCount": 10,
"HttpClientUserAgent": "UiPath-WebhookService/Webhooks",
"RequestTimeout": "0.00:01:00",
"RetryAfter": [
"0.00:00:0",
"0.00:00:45",
"0.00:02:30",
"0.00:05:00"
],
"MaxRetryRequests": 2
"SubscriberCircuitBreakerExpirationSeconds": 600
},
"WebhookServiceConfig": {
"MaxWorkerCount": 10,
"HttpClientUserAgent": "UiPath-WebhookService/Webhooks",
"RequestTimeout": "0.00:01:00",
"RetryAfter": [
"0.00:00:0",
"0.00:00:45",
"0.00:02:30",
"0.00:05:00"
],
"MaxRetryRequests": 2
"SubscriberCircuitBreakerExpirationSeconds": 600
},
RequestsTimeout
RetryAfter
value. By default, the timeout time is set to 1 minute.
RetryAfter
The amount of time, in seconds, after each failed request is retried. By default, there are four retries defined as follows:
- The first retry request is executed immediately after the first attempt failed.
- The second retry is executed 45 seconds after the first retry fails.
- The third retry is executed 2 minutes and 30 seconds after the second one fails.
-
The fourth retry is executed 5 minutes after the third one fails.
You can change the number of delays, if you list fewer entries or if you set the value ofMaxRetryRequests
to a smaller value. We recommend that you always set the first retry to 0, and never set time amounts greater than 300 seconds (5 minutes) in between retries.
MaxRetryRequests
The maximum number of retries to be performed on a failed request.
MaxWorkerCount
The maximum number of webhooks that can be enabled per tenant. By default, it is set to 10.
SubscriberCircuitBreakerExpirationSeconds
The amount of time, in seconds, during which webhooks stops sending messages to the subscriber that reported a failure. By default, the value is set to 600. If the value of the parameter is set to 0, this feature is disabled and failures are ignored. More information about how this pattern works can be found here.
"LedgerConfiguration": {
"Enabled": true,
"Subscribers": [
{
"LedgerComponentType": 0,
"ComponentId": "WebhookSubscriber",
"Topics": null,
"ConnectionString": "<OrchestratorConnectionString>",
"EstablishNewConnection": false,
"LedgerSubscriberDeliveryType": 1,
"LedgerSubscriberReliability": 1,
"Enabled": true,
"LedgerComponentClassType": 2,
"Context": "{\"BatchSize\": 500, \"DeliveriesBatchSize\": 500}"
}
]
},
"LedgerConfiguration": {
"Enabled": true,
"Subscribers": [
{
"LedgerComponentType": 0,
"ComponentId": "WebhookSubscriber",
"Topics": null,
"ConnectionString": "<OrchestratorConnectionString>",
"EstablishNewConnection": false,
"LedgerSubscriberDeliveryType": 1,
"LedgerSubscriberReliability": 1,
"Enabled": true,
"LedgerComponentClassType": 2,
"Context": "{\"BatchSize\": 500, \"DeliveriesBatchSize\": 500}"
}
]
},
ConnectionString
The connection string as generated by the Orchestrator instance you want to connect to.
"ApplicationInsights": {
"InstrumentationKey": "<AI_InstrumentationKey>"
},
"ApplicationInsights": {
"InstrumentationKey": "<AI_InstrumentationKey>"
},
InstrumentationKey
Required if you're using Application Insights.
Click here for the official Application Insights documentation.