I created a geoprocessing REST service on our ArcGIS server. That service has a number of tasks that I expose to users as ArcGIS Online Web Experience Builder custom tools. It all works great. I recently added an additional task to the existing REST service and would like to add an associated custom tool in Web Experience Builder but I can't figure out how to get Web Experience Builder to recognize that a new task exists, so I can't configure it. How can I do this (without deleting the existing custom tasks or manually editing the JSON in ArcGIS Online Assistant)?
Solved! Go to Solution.
Oh so let me see if I have this.
You have somewhere on server
Custom GPTool
-Task1
- Task2
If you go to the rest service at Custom GPTool you see 2 tasks correct?
So It may be you can't execute the top level tool, but the task. Each Task has a unique URL to submit to also I believe. So unless I'm misunderstanding here. Try the Task Url for each Task.
The only trick though, is if they are needed to be run in sequence automatically, I'm not sure if the Analysis Tool does that. (In a Custom Call I would call one tool/task, then pipe its output to the second tool/task, but it sounds like you are trying to make use only of out of the box Analysis widget if I understand you correctly.)
(btw funny whatever word I used to describe calling the tool got **bleeped* out for some reason, I've no idea what I typed that was the offending word. So Hopefuly it is okay with execute)
Are you referring to a restful api pprocess? (where you have a url you can too?)
Or are you referring to not knowing how to add it as a Utility?
We ran into an issue with a Task (ExportWebMap) publishing to the portal, but not getting a URL, and it didn't appear it was able to be called until we did some backend changes through the Admin panel for the portal. I don't know if that's necessary for every GP tool you might want to deploy though.
Most of the docs I read suggested going to the gear icon in the editor and add utility:
But I know if you don't have a url for the GP Tool this kind of goes nowhere 😕
I'm using the Analysis widget to add Custom Web Tools. I do have a URL and I can add the tools associated with my geoprocessing REST service that runs on our ArcGIS server. The problem is when I add a new task to the REST service, I can't figure out how to add a new custom web tool Web Experience Builder that references that REST service task. My Web Experience Builder is on ArcGIS Online so I don't think there are any portal settings involved.
Oh so let me see if I have this.
You have somewhere on server
Custom GPTool
-Task1
- Task2
If you go to the rest service at Custom GPTool you see 2 tasks correct?
So It may be you can't execute the top level tool, but the task. Each Task has a unique URL to submit to also I believe. So unless I'm misunderstanding here. Try the Task Url for each Task.
The only trick though, is if they are needed to be run in sequence automatically, I'm not sure if the Analysis Tool does that. (In a Custom Call I would call one tool/task, then pipe its output to the second tool/task, but it sounds like you are trying to make use only of out of the box Analysis widget if I understand you correctly.)
(btw funny whatever word I used to describe calling the tool got **bleeped* out for some reason, I've no idea what I typed that was the offending word. So Hopefuly it is okay with execute)
Yes - you are correct and this helped me figure it out. When I added my first set of 6 custom tools. I specified the shorter URL of the service which seemed smart at the time because Web Experience Builder recognized that there were multiple tasks and added them all to my list of tools. I ended up with this:
However when I added a new task to the service (Task7) I couldn't get it to refresh the list and let me configure Task7. I think what I should have done is from the beginning, add each of the 6 original tasks separately their full task URLs - in other words never use the shorter service URL if you might add tasks to the service. Then later on I hopefully can add Task7 with its full task URL. I'll try to test this in the next couple of days to verify.
I'm glad that suggestion could help. A less technical user though, likely won't realize that being able to drill down in say a a map, which seems so natural, may look similar for these tools, but not work the same.
I confirmed this morning that if I add each task as a separate custom web tool utility (instead of adding the REST service as the utility) then I can easily add future tasks. This is what it now looks like: