To share an analysis result as a web tool, ensure that you have sufficient publishing permissions and that the versions of ArcGIS Pro and ArcGIS Enterprise are compatible. The role of a portal login account should be either Administrator or a custom role. If the role is custom, the minimum requirement is an existing default Publisher role with the Publish web tools option of the administrative privileges . To learn more about compatibility of ArcGIS Pro to ArcGIS Enterprise versions, see Web tool compatibility.
You can either share a web tool as a new web tool or overwrite an existing web tool. To overwrite an existing web tool, you must have ArcGIS Pro 2.6 or later. To share your web tool with either option, see Share your web tool. When either sharing as a new web tool or overwriting an existing tool, you must set multiple properties to define how users of the service can interact with the web tool.
Save as a service definition file
Starting with ArcGIS Pro 2.8, you can save the analysis result as a service definition file (.sd) first and publish it to ArcGIS Enterprise later. For more information, see Save a service definition for a web tool.
You cannot share a web tool to ArcGIS Online, but you can add the web tool URL published in ArcGIS Enterprise as a geoprocessing service item in ArcGIS Online. See Add items from web in the ArcGIS Online help for more information. You can only consume the added item from ArcGIS Pro, not from ArcGIS Online.
ArcGIS Enterprise on Kubernetes
Starting with ArcGIS Pro 2.9 and ArcGIS Enterprise 10.9.1, you can publish web tools to ArcGIS Enterprise on Kubernetes.
You can share a web tool to a federated server from ArcGIS Pro 1.4 and later using the Share as a web tool pane or Python. See Web tool compatibility and Publish web tools in a Python script. You can use ArcGIS Enterprise or Python to publish a geoprocessing service to a stand-alone server from ArcGIS Pro 2.3 or later.
Analyze a web tool
It is recommended that you analyze the web tool before publishing it. This process identifies issues that may prevent the tool from being published with error messages. Information regarding the data and tools that compose the service as well as potential solutions are provided. Some analyzer errors can only be resolved by modifying the tools or data that compose the tool. Other messages and warnings provide guidance and best practices. Once you address critical errors and configure the service settings, you can publish the web tool. To learn more, see Analyzer messages.
Add a tool
When sharing a web tool, the process starts with the result of a model or script tool. You can build a web tool using multiple results. Although any successful geoprocessing history item can be included in a web tool, the publishing process must be free of any error analyzer messages to successfully publish a web tool. Adding multiple tools is a good technique when grouping similar tools or tools that are part of a workflow.
A new tool cannot be added to an existing web tool. You must republish the existing tool and include the new tool in a new, single geoprocessing service (web tool).
By default, a web tool is only accessible by the account from which is was created. The web tool can be shared within the organization, with specific groups, or with everyone.
Use a federated server
When sharing a web tool to a local portal, the hosting server is the default server for the underlying geoprocessing service. Sharing many web tools to a hosting server where many feature services are also running may affect performance due to the lack of system resources. If you have multiple servers available and they are federated to your portal, it may be advantageous to separate the geoprocessing services from the default hosting server to their own federated server. Without multiple federated servers, geoprocessing services can be shared to the hosting server as long as good service and resource management by administrators and publishers is followed.
Publish or overwrite a web tool
See Share your web tool for detailed steps to publish or overwrite a web tool.