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.

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

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

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.

You can no longer sign into this site. Go to your ArcGIS portal or the ArcGIS Location Platform dashboard to perform management tasks.

Your ArcGIS portal

Create, manage, and access API keys and OAuth 2.0 developer credentials, hosted layers, and data services.

Your ArcGIS Location Platform dashboard

Manage billing, monitor service usage, and access additional resources.

Learn more about these changes in the What's new in Esri Developers June 2024 blog post.

Close