Select to view content in your preferred language

Run ArcGIS Notebook Server Task based on Feature Service Changes

485
2
01-25-2024 08:56 AM
ajohnson_wsb
New Contributor III

Does anyone know if it is possible to run a ArcGIS Notebook Task based on changes in a feature service? Our goal is to run a Notebook task when new features are created in a Feature Service. I know a Webhook can be created based off a Feature Service but I'm struggling to see if I can direct this Webhook to run a Notebook Task. The current documentation for creating Feature Service Webhooks requires a payload url to an external automation service like Power Automate or Make but I would rather keep this workflow internal and not rely on an external service to run a Notebook Task.

I also reviewed the Organization Webhooks that are available within ArcGIS Enterprise but I do not see where they can be based off of data changes within a Feature Service. Any help would be greatly appreciated.

Tags (2)
0 Kudos
2 Replies
RhettZufelt
MVP Notable Contributor

I have used this method before to detect changes in a hosted feature service.  Could probably be modified to fire off your notebook/python script instead of sending an email.

R_

0 Kudos
KevinHibma
Esri Regular Contributor

Hi - Unfortunately at this time, only the Organization webhooks can be sent directly to Notebook Server. Enhancing Enterprise Feature Service webhooks so they can direct payloads to Notebook Server is on our roadmap, however I cannot predict when we'll implement this functionality. 

You've identified the middle-ware workaround of sending to Power Automate or Make and having them send off the request to the notebook. Alternatively, if you've exposed your Notebook as a WebTool, you might be able to direct the webhook to this endpoint. I'm mostly confident that the webhook would trigger the tool (notebook), the problem becomes getting the payload contents which I don't believe can be handled. So if the notebook could go and do something without information from the payload, this might be a solution for you?