Skip To Content

Webhook

  • URL: https://[root]/services/[ServiceName].[ServiceType]/webhooks/[webhookID]
  • Operations:Edit, Delete
  • Child Resources:Notification Status
  • Required Capability:Default administrator role | Feature layer | Geoprocessing
    Note:

    Users assigned the Geoprocessing privilege will also require the Publish server-based layers privilege to be added to their custom role.

  • Version Introduced:11.1

Description

An individual webhook resource returns the configuration information of a specific webhook for either a geoprocessing service or a feature service. From this resource, administrators can edit the webhook's configuration, or delete the individual webhook rather than deleting all webhooks for a geoprocessing or feature service.

Note:

ArcGIS Enterprise supports organization, feature service, and geoprocessing webhooks. The ArcGIS Portal Directory allows for the creation and management of organization webhooks, whereas the ArcGIS Server Administrative API Directory supports the creation and management of geoprocessing and feature service webhooks. For more information on organization webhooks in ArcGIS Enterprise, see either the ArcGIS Portal Directory API webhook documentation or the Manage webhooks in ArcGIS Enterprise administrative documentation. ArcGIS Online also supports feature service webhooks, which are managed in the ArcGIS Online Administrative Services Directory. To learn more about ArcGIS Online feature service webhooks, see the Web Hooks API documentation.

Request parameters

ParameterDetails
f

The response format. The default format is html.

Values: html | json | pjson

Example usage

The following is a sample request URL used to access an individual geoprocessing service webhook resource:

https://machine.domain.com/webadaptor/admin/services/myService.GPServer/webhooks/a6a89a71-2cb1-47ff-89d4-46e6425e2908?f=pjson

The following is a sample request URL used to access an individual feature service webhook resource:

https://machine.domain.com/webadaptor/admin/services/myService.FeatureServer/webhooks/a6a89a71-2cb1-47ff-89d4-46e6425e2908?f=pjson

JSON Response syntax


{
  "id": "<webhook ID>",
  "folderName": "<the service's root folder name>",
  "serviceName": "<the service name>",
  "serviceType": "<the service type>",
  "name": "<webhook name>",
  "changeTypes": ["event triggers"],
  "signatureKey": "<signature key>",
  "hookUrl": "<payload URL>",
  "active": <true | false>,
  "contentType": "<application/json | application/x-www-form-urlencoded",
  "scheduleInfo": { //The following object is only returned for feature service webhooks, as scheduling info is not applicable to geoprocessing webhooks
    "name": "<user provided schedule name>",
    "state": "enabled",
    "startAt": <time in Epoch>,
    "recurrenceInfo": {
      "interval": <integer value>,
      "frequency": "second"
    }
  },
  "payloadFormat": "<json | pjson>",
  "created": <time in Epoch when the webhook was created>,
  "modified": <time in Epoch when the webhook was last modified>,
  "ownerId": "<username of the webhook's owner>",
  "modifiedId": "<username of the user to last modify the webhook>"
}

JSON Response example

The following is a sample JSON Response for a geoprocessing service webhook resource:


{
  "id": "8674b8f4-1588-42bf-a529-9923266cb9ed",
  "folderName": "System",
  "serviceName": "CachingControllers",
  "serviceType": "GPServer",
  "name": "TestWebhook",
  "changeTypes": ["*"],
  "signatureKey": "12345ABCDEF",
  "hookUrl": "https://app.logic.azure.com:443/workflows/...",
  "active": true,
  "contentType": "application/json",
  "scheduleInfo": {},
  "payloadFormat": "json",
  "created": 1670618091416,
  "modified": 1670618091416,
  "ownerId": "webhookAdmin",
  "modifiedId": "webhookAdmin"
}

The following is a sample JSON Response for a feature service webhook resource:


{
  "id": "e394baf5-287c-4ea3-a0b0-ad40c3de6ac3",
  "folderName": "Hosted",
  "serviceName": "Test",
  "serviceType": "FeatureServer",
  "name": "TestWebhook",
  "changeTypes": ["*"],
  "signatureKey": "12345ABCDEF",
  "hookUrl": "https://app.logic.azure.com:443/workflows/...",
  "active": true,
  "contentType": "application/json",
  "scheduleInfo": {
    "name": "Every20Seconds",
    "state": "enabled",
    "startAt": 1670617721049,
    "recurrenceInfo": {
      "interval": 20,
      "frequency": "second"
    }
  },
  "payloadFormat": "json",
  "created": 1670617745208,
  "modified": 1670617745208,
  "ownerId": "webhookAdmin",
  "modifiedId": "webhookAdmin"
}