Licenses and extensions access in Python

Whenever a tool is run in a script, an ArcGIS license is required. Tools from ArcGIS extensions, such as the ArcGIS Spatial Analyst extension, require an additional license for that extension. If the necessary licenses are not available, a tool fails and returns error messages. For example, if you install with a Desktop Basic license, and you attempt to run a tool that requires a Desktop Standard or Desktop Advanced license, the tool fails.

Every tool checks to ensure it has the appropriate license. If it doesn't have what's required, it fails. To guard against the situation of running partially through and failing, you can perform a check at the top of your script and fail immediately. Use the CheckExtension function to evaluate if you are licensed for a particular extension, and use the CheckProduct function to evaluate if you are licensed for a particular product level.

The ArcGIS AllSource application is part of ArcGIS Desktop, which has three levels—Desktop Basic, Desktop Standard, and Desktop Advanced—with each level providing additional functionality. Only ArcGIS AllSource uses licensing through the organization. Other ArcGIS Desktop applications—ArcMap, ArcCatalog, ArcGlobe, and ArcScene—use the local ArcGIS Administrator application to set levels and extensions.

For more information on licensing in ArcGIS AllSource, see Licensing ArcGIS AllSource.

For more information on licensing outside of ArcGIS AllSource, see Authorize Python outside the application.

License:

When ArcGIS AllSource uses licensing through the organization, the available product level and extensions are set by your account and available automatically from arcpy. With a Concurrent Use license in ArcGIS AllSource and with other ArcGIS Desktop applications, specific functions (including CheckOutExtension and CheckInExtension) are required to access certain tools; with other types of licenses in ArcGIS AllSource, these functions have no effect.

For more information, see CheckInExtension and CheckOutExtension functions.

Related topics