Skip To Content ArcGIS for Developers Sign In Dashboard

What's new in version 1.6.1


  • Added new generalized_linear_regression() tool to arcgis.geoanalytics.analyze_patterns module
  • Added new forest_based_regression tool to arcgis.geoanalytics.analyze_patterns module
  • Adds new NotebookServer class for administration
  • Updates MapView to use the ArcGIS API for JavaScript v4.11
  • Addsarcgis.apps.tracker module
  • Adds arcgis.features.hydrology module
  • Adds location_loss_factor to the SingleShotDetector
  • Adds new class RFT & new function raster_collection_function() to arcgis.raster class.
  • Adds mAP (mean average precision) computation in arcgis.learn's SSD
  • Adds add_datepart() and process_df() to arcgis.learn
  • Adds optional parameter to perform credit estimation on Feature Analysis Tools
  • Adds mosaic rule for displaying ImageryLayers in a MapView
  • Adds license_types to assist creating users
  • Adds unet classifier for pixel classification
  • Adds shape type parameter in find_hot_spots()
  • Adds one_cycle parameter to arcgis.learn's fit() function


  • Fixes to clone_items()
    • Supports Web Tool mapping
    • Delete items created during syncronous clone if an error occured
    • Adds optional owner argument
  • Fixes BUG-000120098 in disable_users()
  • Fixes return type of arcgis.raster.interpolate_points()
  • Handle app integrations & properties in workforce projects during cloning
  • Changes parameter name in arcgis.raster's focal_stats()
  • Logging update to GIS("home")
  • fixes to filenames/data
  • Adds missing check for None for source_direction parameter in arcgis.raster's gbl
  • Fixes the Spatially Enabled Dataframe's plot() method to return a MapView's instance when not provided
  • Fixes BUG-000119057 for generate_report() of arcgis.apps.survey123
  • Fixes BUG-000120125 fail to access license attribute of arcgis.admin.System
  • Fixes featureset.sdf when a feature contains null geometries
  • Force MapView.take_screenshot() to output a .png
  • Added support for feature collection and feature sets in NetworkLayer.slove()
  • Provides functionality to rename ArcGIS Online content folders
  • Fixes various bugs in from_shapely()
  • Fixes assigning credits bug to new users
  • Fixes for arcgis.features.managers.SyncManager.create_replica_item()
  • Fixes Item.share() bug that ignores allow_members_to_edit argument
  • Fixes assign_to_items() on gis.groups.categories to fix the assigning of content categories to items
  • Updated GIS class to have a hub property
  • Updated create user method on the GIS class
  • Fixes verify_cert issues for PKI
  • Fixes for EMD in arcgis.learn

What's new in version 1.6



  • Deprecated Group.invite_by_email() function
  • Fixed error when creating GIS object in an enviroment where API for Python was installed with no dependencies
  • Fixed issue when creating spatially enabled dataframe from an empty feature layer
  • Fixed issue when spatially enabled dataframe treated NaN values as 0
  • Fixed issue on share() method when everyone=True that org=True
  • Fixed issue to ensure a query() with no results returns correct empty object type
  • Fixed issue when text used for file_type parameter on [analyze(]
  • Ensured role and role_id are always set for connected user
  • Fixed issues with zoom functionality on map
  • Fixed issue when ImageryLayer.service property returned incorrect value
  • Fixed create_viewhshed() to accept above_ground_level_output_name parameter
  • Fixed flow_direction() to properly read output_name parameter
  • Updated apps module documentation to clarify acceptable item types for various parameters
  • Fixed Table.fromitem() function to correctly create table objects from items containing tables
  • Updated default parameter type for spatial index
  • Fixed issue when chaining raster functions and global functions
  • Fixed raster analytics functions to properly work with Feature Layer inputs
  • Fixed issue with optimum_travel_cost_network() function
  • Fixed issue with collaboration.create() function
  • Fixed issue where get_datastores() returned incomplete results when same server functioned as raster analytics and geoanalytics server
  • Fixed FeatureSet.to_geojson to properly convert linestrings
  • Fixed issue on calling Enterprise utility services when connected using web-tier authentication
  • Fixed issue on register() function to return properly formatted response
  • Fixed issue with indexing on the band_ids parameter of extract_band()
  • Fixed BUG-000119016 - issue where exporting a spatially enabled dataframe to a feature class converted Feature Service Null values date field(s) to a specific date(‘1/1/2001’)
  • Fixed issue with gis.users.invite() improperly formatting email request

What's new in version 1.5.3


  • Fixed BUG 000119265: gis.users.create() returns error using API for Python 1.5.2

What's new in version 1.5.2



  • Fixed the Item.usage() to correctly process 6M and 1Y input date ranges
  • Fixed map widget so default basemap draws if gis has not been set
  • Fixed method for when gis is ArcGIS Enterprise
  • Improved various features.analysis tools to accept lists of FeatureLayers as inputs
  • Fixed add_layer() to properly render layers with definition expressions
  • Fixed issue with geometry.filters incorrectly processing various geometry types
  • Fixed ServerManager.list() function to improve reading of returned servers
  • Fixed Spatially Enabled DataFrame from_layer() function to better read date input
  • Fixed issue with clear_graphics() function not removing layers when run consecutively
  • Fixed issue with Item thumbnails not rendring properly under specific circumstances in Jupyter notebooks
  • Fixed import_data() function to publish Spatially Enabled DataFrames as Feature Layers
  • Improved handling of date fields in the query() method

What's new in version 1.5.1


  • Added a legend property to the map widget
  • Added documentation for create_symbol
  • Added support for Survey123 to the apps module
  • Added capability to delete certificates in the arcgis.server module
  • Added capability to to view the server Services Directory properties
  • Added support for True Curves in Geometry module
  • Updated documentation for Spatially Enabled DataFrame
  • Reduced overhead on certificate searches in gis.server.admin.SSLCertificates
  • Added ability to set the map widget extent to that of a loaded Spatially Enabled DataFrame
  • Added from_shapely() method to Geometry class
  • Added a homepage property to the User and Group class
  • Added support for scheduling to create() map areas
  • Added as_df parameter to FeatureLayer.query() method to return DataFrame instead of FeatureSet
  • Added SVG support for Geometry objects
  • Added tables property and add_table() method to WebMap class
  • Added validate() and calculate_volume() methods to Imagery Layer objects
  • Added list_datastore_content() method to
  • Added support for unique domains and field aliases when using clone_items() on Feature Layer Views
  • Added Find_Point_Clusters tool to arcgis.geoanalytics.analyze_patterns module
  • Added ability to read a list of strings for the out_fields parameter of FeatureLayer.query()
  • Added functionality to preserve layer id values when using cloning


  • Fixed issue where user notifications were not returned
  • Fixed issue with incomplete Geometry checks in the map widget
  • Fixed BUG 000115800 when subsequent imports of an imported certificate failed to import certificate
  • Fixed issue where curvePaths and curveRings do not return proper extents
  • Numerous fixes and enhancements to the map widget
    • Added a compass to 2D mode to re-orient north
    • Fixed bug where custom symbology was not properly displaying
    • Fixed issue when map.layers returned incorrect data type for layers
    • Fixed issue for an exported map widget not honoring the extent
    • Fixed ability to use portal basemaps with map widget
  • Improved warning messages when required modules are not present
  • Improved messaging on Datastore Manager.add_cloudstore() method
  • Improved documentation for edit_control_points and match_control_points
  • Enhanced performance to
  • Fixed load performance for objects
  • Fixed bug when using FeatureLayerManager.overwrite() to updated Feature Layer with a zipped shapefile with identical schema
  • Numerous performance improvements on Spatially Enabled DataFrame to_featureclass() and from_featureclass() methods
  • Fixed error when using import_toolbox() an an Enterprise GIS
  • Fixed BUG 000110695 when connecting with Pro would not return proper licenses for user
  • Fixed issue where ImageryLayer extent was not honored on analytics jobs unless explicitly set
  • Fixed parameter issue with arithmetic() raster function
  • Fixed issue where Item.export() function read parameter incorrectly
  • Fixed a longitude check in arcgis.raster.orthomapping.compute_spatial_reference_factory_code()
  • Fixed issue where user.folders would not return folders if a user object was obtained using a query parameter on
  • Improved performance with the GIS constructor
  • Fixed issue with how the tools handles tokens
  • Improved error handling with clone_items()
  • Improvements to apps.workforce reducing steps to create various objects
  • Fixed the to_features() and save() methods on ImageryLayers to use appropriate extents
  • Fixed conversion issue with tiled MapImageLayers which caused map.add_layer() to fail
  • Fixed issue when using clone_items() on MapImageLayers between Enterprise portals
  • Fixed issue handling reserved words when using clone_items() on MapImageLayers
  • Added hillshade_type parameter to raster.functions.hillshade() function

What's new in version 1.5


  • Updated the Map Widget to use the ArcGIS API for JavaScript 4x release
    • Broader support for authoring and rendering WebScenes
    • Full support for JupyterLab. See JupyterLab Guide.
    • Support for specifying autocast JavaScript renderers from Python code
    • Support for exporting Map Widgets to standalone HTML pages
    • Support for using an external ArcGIS API for JavaScript CDN for disconnected environments
    • Miscellaneous bug fixes
  • Added the new Spatially Enabled Dataframe to eventually replace the SpatialDataFrame() class
    • New implementation: Accessor-based spatial namespace accessible as the sdf property on a Pandas dataframe
    • Improvements to rendering, projections and support for Arcade expressions
  • Added usage property on Item class to inspect individual statistics
  • Added attribute checks for geometries in environments where ArcPy is not available
  • Added summary property to arcgis.admin.ux to add description of Portal or ArcGIS Online Organization instance
  • Added support for using server raster functions in raster analytics jobs using apply()
  • Enhancements to support for mosaic_rules on ImageryLayers, incdluding when using save() and identity()
  • Added AssignmentIntegrationManager class to Workforce module as the integrations property on a Project
  • Added url builder functions to the apps module
  • Enhanced numerous Global Raster functions with parameter validation checks, including cost_distance(), cost_allocation(), flow_distance(), zonal_statistics() and others
  • Added cost_backlink(), euclidean_direction(), cost_path(), kernel_density(), and calculate_travel_cost() to Global Raster Functions and optimum_travel_cost_network() to Raster Analytics
  • Added category_filters parameter to improve search() capabilities
  • Added find_centroids function to arcgis.features.find_locations submodule


What's new in version 1.4.2



  • Fixed BUG-000110440 corrected misspelled suppress_email parameter that caused gis.admin.license.revoke() to fail
  • Fixed BUG-000110659 added missing text parameter on item.update() item_properties dictionary
  • Fixed error when writing geojson files to shapefiles using the SpatialDataFrame
  • Fixed erroneous documentation stating that overwrite preserves symbology
  • Fixed issue with SpatialDataFrame where null geometries were not converted to empty geometries in Shapefiles and Geodatabase feature classes
  • Fixed issue where plot() method failed with certain number of features
  • Fixed issue where GIS profile parameter would not create new profile in clean environment
  • Fixed bug when importing arcgis.geoenrichment

What's new in version 1.4.1



What's new in version 1.4



  • Group.add_user method will accept user objects or a string representing username as input.
  • Updated date handling and integer types available on the Spatial DataFrame
  • Fixed issue where mixed-content layers were failing when using the map widget
  • Fixed issue where FeatureSet.df was not properly setting the spatial reference
  • Detailed warnings issued exporting layer with global function in the function chain
  • Fixed issue where PNG files referenced in thumbnail parameter on user.update() method raised an exception
  • Fixed error when drawing FeatureCollections with datetime fields
  • Fixed bug where ContentManager.import_data() returned error if Pandas dataframe did not contain addresses
  • Fixed bug when using SpatialDataFrame.to_featurelayer() method for environments lacking ArcPy site-package
  • Fixed issue where time-enabled hosted feature layers failed to clone to portal items
  • Fixed projection issue when using SpatialDataFrame.to_featureclass() method when ArcPy site-package not present
  • Fixed problem with Geoenrichment.Country.subgeographies queries not returning results
  • Fixed handling of NoneType responses for Geoprocessing service requests
  • Fixed bug where user.update_level() method was not changing level of user
  • Added missing parameters to raster.classify function
  • Fixed errors when writing dates to feature attributes

What's new in version 1.3


  • Added support to render and work with Vector Tile Layers in arcgis.mapping module with a new VectorTileLayer class.
  • Added ability to add text and archives as resource files to Items.
  • Added a find_outliers task to the arcgis.features.analysis module to locate features and clusters that differ significantly
  • Added support for Living Atlas Content
  • Added ability to select layers to add when creating new feature service from FeatureLayerCollection item
  • Added detect_track_incidents tool to the arcgis.geoanalytics.find_locations module
  • Added support for unfederated ArcGIS Server instances from the arcgis.gis.server module
  • Added ability to cancel Geoprocessing jobs with keyboard
  • Added ability to publish map services from Geoanalytics results for visualizing large spatiotemporal feature services
  • Added ability to login with a public account to ArcGIS Online
  • Added support for Dynamic Map Image Layers
  • Enhanced search capabilities to look for specific categories
  • Added ability to create Features from and convert features to geojson
  • Improved spatial refernce support when using arcgis.features.SpatialDataFrame
  • Improved function to export SpatialDataFrame by checking for required modules
  • Improved performance when creating Imagery Layers
  • Added new functions to raster.functions module. See here for function details
    • complex - computes magnitude from an input raster with complex pixel types
    • colormap_to_rgb - converts a single-band raster with a colormap to three-band raster
    • statistics_histogram - defines the statistics and histogram of a raster to help render output
    • tasseled_cap - analyzes certain multispectral datasets and calculates new bands useful to map vegetation and urban developmet changes
    • identity - default function required in a mosaic dataset if there is no other function
    • colorspace_converstion - converts the color model of a three-band unsigned 8-bit images from HSV or RGB, or vice versa
    • grayscale - converts a multi-band image into a single-band grayscale image
    • pansharpen - enhances spatial resolution of a multi-band image by fusing with higher-resolution panchromatic image
    • spectral_conversion - applies a matrix to affect the spectral values output by a multi-band image
    • raster_calculator - allows you to call all existing math functions for building expressions
    • speckle - filters a speckled radar dataset to smooth out noise
  • Added a new GeoEnrichment module
  • Added ability to set and configure the identity provider for managing user credentials
  • Added support for passing geometry columns into PySal functions
  • Added a new esri_access property to User objects so Esri training materials could be accessed
  • Added support for feeding SpatialDataFrame objects to GeoProcessing tools
  • A new SpatialDataFrame.plot() method to do bar, line and scatterplots
  • Added support for multi-part Polygon geometries in FeatureSet objects
  • Added support for creating Hosted Feature Layer Views
  • Added support for cloning items directly from the ContentManager
  • Added ability to directly read, write and author Web Maps from arcgis.mapping.WebMap objects
  • Added support for High Performance on geocoding and geoanalytics
  • Added geocode_locations tool in arcgis.geoanalytics.find_locations module
  • Added functionality to the ReconstructTracks and JoinFeatures in the arcgis.geoanalytics.summarize_data module
  • Added support for setting content status on Item objects


  • BUG-00010973 Using the "services.list()" function fails with Traceback error
  • BUG-000105897 When iterating over items from a non-existent folder, the Python API iterates over the ArcGIS Online root folder
  • BUG-000105969 When creating replicas, a json data format replica was not being created in the output directory
  • BUG-000109342 Errow when importing premium toolboxes using geoprocessing.import_toolbox function
  • Fixed FeatureSet issue so geometry type is set properly
  • Fixed issue where new datastores were not being returned from the servers.datastores.list() method
  • Fixed issue where querying a FeatureLayer with returnIDsOnly, returnCountOnly, and returnIdsOnly were not returning all records
  • Fixed issue where publishing from service definition files was not placing service items in folders
  • Fixed issue where no error was reported when creating a big data file share using an invalid path
  • Fixed issue when using the defaults for the arcgis.admin.System.reindex function
  • Fixed issue where publish_sd() function to publish from service definition files was not available
  • Fixed issue where Python API tried to use ArcGIS Online basemaps in a disconnected environment
  • Improved ability to save Features in non-English data
  • Fixed issue where creating a SpatialDataFrame from a feature class was not importing spatial reference correctly
  • Improved security on anonymous connections to ArcGIS Online
  • Fixed security issue using NTLM and Kerberos works with Python 3.6.1
  • Improved performance for download of Python API
  • Fixed issue where geometry extents were not properly returned which affected some projecting operations
  • Fixed issue where fields over 255 characters in length were not properly created
  • Fixed issue when updating the large thumbnail on an item the image was not updating to the proper type

What's new in version 1.2.4

A number of quality improvements were made in versions 1.2.3 and 1.2.4. Below is the list of bugs reported to Technical Support that were fixed:

  • BUG-000108063 ArcGIS Python API is unable to connect to Portal for ArcGIS with Integrated Windows Authentication configured.
  • BUG-000107899 In the ArcGIS Python API, cannot update the ArcGIS Online organization banner using the set_banner method when using a custom html string.
  • Added support for using the API behind proxy servers

What's new in version 1.2.2

Version 1.2.2 ensures the map widget in Jupyter notebooks continues to work with newer installs of the API.

What's new in version 1.2.1

Version 1.2.1 is a primarily a bug fix and documentation update release. Below is a non exhaustive list of bug fixes that were fixed:

  • Fix to ensure DataStoreManager.list() is updated when user adds, modifies or updates data stores.
  • BUG-000104664 ArcGIS API for Python fails to return the groupProviderName value
  • BUG-000105897 When iterating through items in a nonexistent folder using the ArcGIS Python API, items from the ArcGIS Online root folder are returned.
  • BUG-000105969 In ArcGIS Python API, using replicas.create() and data_format = 'json' is not able to create output in local directory when out_path is defined.
  • ENH-000106710 Automate the creation of Enterprise groups in ArcGIS Online and Portal using the ArcGIS API for Python.
  • Support for Living Atlas on ArcGIS Enterprise
  • Better error messages
  • BUG-000104664 ArcGIS API for Python fails to return the groupProviderName value.
  • BUG-000105270 returnAttachments is an invalid parameter and is repeated multiple times in the arcgis.features.managers module reference page for the Python API
  • Support for find_outliers tool
  • Support to add Item resources as text, URL and archive
  • Geocoding results can be returned as FeatureSet objects.
  • Support for publishing hosted tile layers from feature layers
  • Documentation for administering your GIS, administering your ArcGIS servers, building a distributed GIS, customizing your GIS look and feel are added.

What's new in version 1.2.0

Version 1.2 brings with it a slew of new capabilities. Below is a non exhaustive list of enhancements

  • A new arcgis.gis.admin sub module -- expands your admin capabilities, manage credits, create gis collaborations to build a distributed GIS, modify the user experience of the portal website
  • A new arcgis.gis.server sub module -- allows you to manage servers federated with your ArcGIS Enterprise
  • A new arcgis.raster.functions sub module for raster functions -- express raster functions as Python functions, chain them together and perform raster algebra using regular Python arithmetic operators
  • A new SpatialDataFrame class which extends your regular Pandas DataFrame with spatial capabilities and ability to work with local datasets
  • Feature layer improvements -- overwrite feature layers, better support for attachments
  • Map widget enhancements -- disable zoom when scrolling the notebook
  • oAuth login using app id, secret
  • A new GeoAnalytics tool to create space-time cubes

What's new in version 1.0.1

Version 1.0.1 is a bug fix release. Following are some of the bugs that were resolved:

  • BUG-000101507 returns incorrect results if the User is an owner of more than 100 groups.
  • Enabled building initial cache when publishing vector tile packages
  • Fixed bug in creating new users on ArcGIS Online or Portal for ArcGIS 10.5 or newer
  • Fix to ignore values like size of -1 when initializing item objects
  • Reorder batch geocoding results to match input array

What's new in version 1.0.0

Ever since we released the public beta versions, your response to this API has been phenomenal. Since the last release of beta 3, the API went through a redesign phase. We took a critical look at the previous design and evaluated it against the ease of use, extensibility and our original goal of developing a Pythonic API for GIS. The result is this new design, a design that simply does not contour to the implementation logic, but efficiently abstracts it, ensuring the simplicity and beauty of the programming language prevails.

API design changes

The following are some of the high level changes you would notice in the version 1.0 of the API. You might have to update your notebooks and scripts and we apologize for this inconvenience.

  • Various layer types in arcgis.lyr module are now in their own separate modules such as arcgis.features, arcgis.raster, etc.
  • arcgis.viz is now arcgis.mapping with additional support for vector tiles, map image layers
  • Tools in are accessible as functions in the corresponding layer modules. This allows a better grouping and presentation of tools making them available right alongside the layer types they process. For instance, the feature analysis tools available earlier as is now arcgis.features.analyze_patterns, arcgis.features.enrich_data etc.
  • Big data analysis tools available earlier as is now in a separate module arcgis.geoanalytics.

Enhancements and new features

This is by no means an exhaustive list. Below are some major enhancements you may notice in version 1.0 of the API

  • ability to work with replicas for feature layers
  • ability to manage user roles
  • support for multiple outputs in GP tools
  • support for stream layers
  • added more big data analysis tools in the arcgis.geoanalytics module
  • extended support for web tools
  • smart mapping improvements
  • extended ability to publish package items such as vector tile, scene, tile
  • enhanced support for login using ArcGIS Pro

Feedback on this topic?