- URL:
- https://<root>/notebooks/webhookReceivers/create
- Methods:
POST
- Required Capability:
- Administrator
- Version Introduced:
- 11.4
Description
The create
operation enables administrators to create a service webhook receiver within ArcGIS Notebook services. Webhooks, including those for asynchronous geoprocessing services, feature services, or any webhook created outside of ArcGIS Enterprise, can initiate a notebook run in response to specific events. This is accomplished by sending a request to the webhook receiver URL:
https://organization.domain.com/context/admin/notebooks/webhookReceivers/<webhook_receiver_id>
To ensure security, the webhook event request must include a signature header that was predefined for the webhook receiver. Additionally, it should contain a secret value represented as a Hash Message Authentication Code (HMAC), generated using the SHA-256 hashing function and encoded in Base64 format.
Request parameters
Parameter | Details |
---|---|
(Required) | The name of the webhook receiver (string). |
(Required) | The portal item ID of the notebook you want to execute using webhook receiver. |
(Required) | A secret key used to encrypt webhook payload. It has to be 32 characters long. |
(Required) | A comma separated list of headers which will be checked for encrypted payload. Example
|
(Required) | The app token with privileges to access the notebook item, the |
| Parameter json to be injected directly into the notebook as input parameters. |
| The response format. The default is Values: |
Example usage
The following is a sample POST request for the create
operation:
POST /<context>/admin/notebooks/webhookReceivers/create
Host: organization.example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: [ ]
name=demo&itemId=923dc118f035463f84d90660909cef50&secret=demodemodemodemodemodemodemodemo&signatureHeaders=x-esrihook-signature,x-hub-signature-256&apiToken=¶meters={"num":1,"name":"esri","loop":false}&f=pjson
JSON Response syntax
{
"webhookReceiver": {
"itemId": <item_id>,
"signatureHeaders": <comma separated list of headers>,
"apiToken": "",
"name": <webhook receiver name>,
"disabled": true|false,
"id": <webhook_receiver_id>,
"secret": <secret_key>,
"username": <user_name>,
"url": "<URL for sending request to the webhook receiver>"
},
"status": "success"
}
JSON Response example
{
"webhookReceiver": {
"itemId": "e045a267621441f5a27ddd36e94890aa",
"signatureHeaders": "x-esrihook-signature,x-hub-signature-256,
"apiToken": "",
"name": "test",
"disabled": false,
"id": "b50dec7a-e271-4235-8a04-7785c91eaa6d",
"secret": "9f8b47c2e4a748d3b58e2a17ad8f2e4b",
"username": "portaladmin",
"url": "https://mymachine.esri.com/notebooks/rest/events/webhooks/b50dec7a-e271-4235-8a04-7785c91eaa6d"
},
"status": "success"
}