Geoprocessing is a fundamental part of GIS operations. Geoprocessing provides data analysis, data management, and data conversion tools. A web tool or a geoprocessing service is a collection of geoprocessing tools published to perform tasks necessary for manipulating and analyzing geographic information across a wide range of disciplines. Data is stored and processing occurs on the server, rather than on your machine. This allows multiple client applications to run analysis using the same web tool or geoprocessing service, even concurrently. Web tools and geoprocessing services allow you to share your analysis with others in your ArcGIS Enterprise portal or anyone with access to your ArcGIS Server.
A web tool refers to the web tool items in Portal for ArcGIS, which is part of ArcGIS Enterprise. Like any other items on your Portal, a web tool item controls who can access the item. All web tool items have a single geoprocessing service associated with them, and this geoprocessing service is on a federated server to your Portal for ArcGIS, including the hosting server. This server processes the input, runs your tools on the server, and sends back the result to a client like ArcGIS Pro.
A geoprocessing service usually refers to the service on a stand-alone ArcGIS Server, but it can also refer to a geoprocessing service on a federated server. Often, web tools and geoprocessing services can be thought of interchangeably. However, understanding the difference between an Enterprise environment and a stand-alone server environment is critical.
There can be a geoprocessing service item in your Portal or ArcGIS Online organization. Similar to a web tool item, the geoprocessing service item controls who can access the item. A geoprocessing service item always has a geoprocessing service outside ArcGIS Online or any of the federated servers of your Portal. In most cases, that geoprocessing service is on a stand-alone ArcGIS Server or a federated server outside of your current Portal. The only exceptions are a few system geoprocessing service items that you can see on your Portal.
A web tool or a geoprocessing service can contain one or more tools that use input data entered in a client application, process the data, and return output in the form of features, maps, reports, or files. These tools are first authored and run in ArcGIS Pro, typically as custom model or script tools, and then shared to a Portal or an ArcGIS Server. Because a web tool or a geoprocessing service can reference any geoprocessing tool, the possibilities are infinite. For example, a web tool can do any of the following:
- Calculate the probable evacuation area for a hazardous chemical spill
- Calculate the predicted track and strength of a hurricane
- Generate a report of land cover and soils within a specified watershed
- Produce a parcel map with historical details of ownership
- Geocode an address and feed into a permitting application for a home renovation system
Any user connected to the ArcGIS Enterprise portal may be able to access and use the web tool. A web tool represents a geoprocessing service that is running on an ArcGIS server. You can make a connection to the portal's federated server and access and use the service directly through REST.
Starting at ArcGIS Pro 2.9 and ArcGIS Enterprise on Kubernetes 10.9.1, you can publish web tools to ArcGIS Enterprise on Kubernetes.
Sharing web tools requires administrative or web tool publisher permissions. Configure fine-grain publishing roles so that anyone in a group can share a web tool to federated servers. Alternatively, set the server allowGPAndExtensionPublishingToPublishers property to allow publishers to share a web tool to the server.
Learn more about web tool compatibility between ArcGIS Pro and ArcGIS Enterprise
Author, publish, and use web tools and geoprocessing services
The following sections describe the process for authoring, publishing, and using a web tool or a geoprocessing service.
Author
To author a web tool or a geoprocessing service, you typically create and document a geoprocessing tool using ModelBuilder or Python. You do not have to create your own tool—you can use one of the many tools included in ArcGIS Pro.
Learn more about authoring web tools and geoprocessing services
Publish
Once you've authored a tool, you must next run it in ArcGIS Pro, and the tool must complete successfully. This is to ensure you do not publish any errant tools on the server, which consumes system resources even when they are not running. When the tool is finished running, it can be published. Sharing creates the web tool item in the Portal and the back-end service on a federated ArcGIS Server with the Portal. Publishing to a stand-alone ArcGIS Server will create a geoprocessing service only. You can add multiple tools that you've run to the same web tool or geoprocessing service during publishing.
Learn more about publishing web tools and geoprocessing services
Use
After publishing the web tool or geoprocessing service, it can be used in any client app that connects to the portal. In ArcGIS Pro, you can find and use the web tool from the Portal tab of the Catalog pane. You will find and use geoprocessing services from a server connection in the Catalog pane, on the Project tab.
You can also connect directly to the federated server through REST to use the geoprocessing service from other client apps, such as a web app you've created or with Web AppBuilder, Map Viewer, or Experience Builder.