Controlling license behavior in a Python toolbox

The isLicensed method is an optional method that can be used to check if a tool in a Python toolbox is licensed to execute. It can be used to restrict the tool from being run if the appropriate licenses and extensions required to run other geoprocessing tools used by the Python toolbox tool are not available.

If the isLicensed method returns False, the tool cannot be executed. If the method returns True or the method is not used, the tool can be executed.

def isLicensed(self):
    """Allow the tool to execute, only if the ArcGIS 3D Analyst extension 
    is available."""
    try:
        if arcpy.CheckExtension("3D") != "Available":
            raise Exception
    except Exception:
        return False  # tool cannot be executed

    return True  # tool can be executed

Related topics