Skip to content
URL:
https://<root>/notebooks/webhookReceivers/create
Methods:
POST
Version Introduced:
11.4

Access requirements

Required privileges

The Enterprise Administrator API requires privilege-based access. An administrator must be assigned a specific user privilege, or role, to access any given endpoint. Listed below are the user privileges or roles an administrator can be assigned that provides access to this endpoint. If multiple privileges are listed, only one needs to be assigned to gain access.



To access notebook-related endpoints, administrators must be assigned a custom role that includes any of the privileges listed above as well as the Create and edit notebooks privilege.

Tokens

This API requires token-based authentication. A token is automatically generated for administrators who sign in to the Enterprise Administrator API directory's HTML interface. Tokens generated in this way are stored for the entirety of the session.

Those accessing the API directory outside of the HTML interface will need to acquire a session token from the generateToken operation in the Enterprise Directory API. For security reasons, all POST requests made to the Enterprise Administrator API must include a token in the request body.


Learn how to generate a token

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:

Use dark colors for code blocksCopy
1
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

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.

Example
Use dark colors for code blocksCopy
1
2

signatureHeaders=x-esrihook-signature, x-hub-signature-256

apiToken

(Required)

The app token with privileges to access the notebook item, the createNotebook or 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

Example usage

The following is a sample POST request for the create operation:

Use dark colors for code blocksCopy
1
2
3
4
5
6
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=&parameters={"num":1,"name":"esri","loop":false}&f=pjson

JSON Response syntax

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