Integrate with other apps

ArcGIS Survey123 can be integrated with other apps by using links to open the Survey123 web app or field app, Survey123 Connect, or another app. For example, you can create app links to launch and open the Survey123 field app from another Esri app, a web map pop-up, or a simple hyperlink in an email or website. You can use a URL to automatically download and open a survey for editing in Survey123 Connect. You can also link to other apps from Survey123, such as ArcGIS QuickCapture and ArcGIS Field Maps.

Use the URL patterns in the table to create links for access from a web browser or another app.

What to launchWhere to link fromURL pattern to use

Web app

Web browser

Survey form by ID:

https://survey123.arcgis.com/share/ID

Field app

Android and iOS

Survey123 app link:

https://survey123.arcgis.app

Windows, Android, a select group of apps on iOS

Custom URL scheme:

arcgis-survey123://

Survey123 Connect

Windows

Custom URL scheme:

arcgis-survey123connect://

Another app

Survey form

Link from Survey123: Varies by app

The following examples show how to open a specific survey using these URL patterns:

  • https://survey123.arcgis.com/share/36ff9e8c13e042a58cfce4ad87f55d19
  • https://survey123.arcgis.app?itemID=36ff9e8c13e042a58cfce4ad87f55d19
  • arcgis-survey123://?itemID=36ff9e8c13e042a58cfce4ad87f55d19
  • arcgis-survey123connect://?portalUrl=https://www.arcgis.com&itemID=36ff9e8c13e042a58cfce4ad87f55d19

Survey123 app links conform to requirements set by the App Store and Google Play, enable linking to more apps, and support shortened links that are easier to share.

Custom URL scheme links cannot be shortened and can be difficult to open on Android. Consider presenting custom URL scheme links in the form of hyperlinks, similar to the following:

<a href="arcgis-survey123://?itemID=36ff9e8c13e042a58cfce4ad87f55d19">Open survey</a>

URL parameters

You can add URL parameters to the end of the links to further customize how the app opens. For example, you can set the default location for a geopoint question or populate a text question.

URL parameters begin with the character ?, and are separated by the character &. The following example shows a custom URL scheme, with the first parameter (itemID) beginning with the character ?, and each of the subsequent field parameters (color_1 and color_2) separated with the character &.

arcgis-survey123://?itemID=36ff9e8c13e042a58cfce4ad87f55d19&field:color_1=red&field:color_2=blue

For more example URLs and supported URL parameters, refer to Launch the web app, Launch the field app, Launch Survey123 Connect, and Launch another app from Survey123.

Note:

Before using a link that contains parameters to launch a survey in the field app, it is recommended that the app already be installed on the device. For more information, see Install the Survey123 field app.

URL encoding

Although URL parameters that are not encoded work in some environments, it is recommended that you encode URL parameters. Encoding replaces invalid characters with the percent sign (%) followed by their hex equivalent.

For example, the following is a Survey123 link that uses a callback to return to a specific project in QuickCapture with parameters that are not encoded:

https://survey123.arcgis.app?itemID=36ff9e8c13e042a58cfce4ad87f55d19&callback=https://quickcapture.arcgis.app?itemID=867895a71a1840399476fc717e76bb43

The following is the same URL with encoded parameters:

https://survey123.arcgis.app?itemID=36ff9e8c13e042a58cfce4ad87f55d19&callback=https%3A%2F%2Fquickcapture.arcgis.app%3FitemID=867895a71a1840399476fc717e76bb43

An equal sign that specifies a break between a key and its value should not be encoded.

Tip:

One way to create encoded parameters is to use ArcGIS Arcade. The UrlEncode function allows you to define a collection of key value pairs that represent each parameter and produce a URL with appropriate encoding.

A survey author may also want to obscure URL parameters so that sensitive data is not visible in the URL. In this case, when you create a URL to use in the web app, include encodeUrlParams=true. For more information, see URL parameters for opening the web app.