Create a Webhook Receiver

URL:
https://<root>/notebooks/webhookReceivers/create
Methods:
POST
Required Capability:
Administrator
Version Introduced:
11.4

Description

The create webhook receiver operation enables administrators to create a service webhook receiver within ArcGIS Notebook Server. Webhooks, including those for asynchronous geoprocessing services, feature services, or any generic webhook, can initiate a notebook run in response to specific events. This is accomplished by sending a request to the webhook receiver URL:

https://<notebookserver.domain.com>/<notebooks_webcontext>/rest/events/webhooks/<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

ParameterDetails

name

(Required)

The name of the webhook receiver (string).

itemId

(Required)

The portal item ID of the notebook you want to execute using webhook receiver.

secret

(Required)

A secret key used to encrypt webhook payload. It has to be 32 characters long.

signatureHeaders

(Required)

A comma separated list of headers which will be checked for encrypted payload.

Use dark colors for code blocksCopy
1
Example: x-esrihook-signature, x-hub-signature-256

apiToken

(Required)

The app token with privileges to access the notebook item and createNotebook/createAdvancedNotebook privileges, and any other GIS capabilities in the notebook.

parameters

Parameter json to be injected directly into the notebook as input parameters.

f

The response format. The default is html.

Values: html | json | pjson


JSON Response syntax

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
    "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

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
    "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"
}

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.