Custom ArcGIS Maps SDK layers

If an organization is in the process of developing a web, desktop, or mobile app with one of the ArcGIS Maps SDKs, one pattern that may help with cross-system integration is to use custom layers built with an ArcGIS Maps SDK. This layer could be constructed through HTTP requests to a remote API, where a response can be either converted into suitable JSON structures or joined to existing features from an ArcGIS feature layer.

  • The ArcGIS Maps SDK for JavaScript includes some examples of custom layers in the documentation.
  • The ArcGIS Maps SDKs for Native Apps include various concepts that can support this pattern, such as a DynamicEntity in the Maps SDK for .NET Maui.
  • The ArcGIS Pro SDK includes the concept of a plugin data source, which can be used to add otherwise unsupported data types to an ArcGIS Pro project in a read-only pattern.

Each of these examples provides a method where an ad hoc data source from a remote system may be integrated into an ArcGIS-centric client experience or workflow.

Integration patterns in ArcGIS

ArcGIS Pro supports a custom layer pattern through the ArcGIS Pro SDK. Other SDK patterns may interact with ArcGIS Online, ArcGIS Enterprise or ArcGIS Location Platform but they do not independently support custom layer functionality. ArcGIS Enterprise supports concepts similar to custom layers through the custom data feed pattern.

Capability ArcGIS Online ArcGIS Enterprise ArcGIS Location Platform ArcGIS Pro
Custom Maps SDK layers N/A N/A N/A

Full support

Partial support


Best practices

  • Custom layers may need to negotiate separate authentication patterns from ArcGIS identity patterns. Carefully research and be sure to understand requirements for the remote APIs or URLs that will be queried, to reduce user confusion or potential interruption. Carefully review existing OS patterns for cache management, credential or key management, and offline access to datasets.

  • Consider the potential size of responses, and time taken for the remote API to return a response, as this will require a user to wait for the response to be returned.

  • Where possible, develop in a way that custom layers can interact with ArcGIS layers from other sources. The use of web maps for symbol definition, filtering, and popups, provides valuable efficiency in layer configuration.

Top