Understanding Survey123's custom URL Scheme

197922
359
07-29-2016 11:14 PM
IsmaelChivite
Esri Notable Contributor
60 359 197K

.Updated August 10, 2020 (Added reference to Arcade UrlEncode operation)

The purpose of a URL scheme is to provide a well-known protocol for apps to communicate with each other. Through a custom URL scheme you can remotely launch apps and invoke actions in them.  Specifically, the URL scheme in Survey123 allows you to:

  • Launch the Survey123 app
  • Open a survey
  • Prepopulate answers in the survey

A common practical scenario for using the Survey123 custom URL scheme is integrating Survey123 with other ArcGIS apps like Explorer, QuickCapture, Collector or even your own web mapping apps. Take for example a case where you want field users to use a map to identify a particular asset, and then use a smart form in Survey123 to capture information about that particular asset. Explorer, Collector or a plain Web Map can serve the first purpose.


In this post I will first describe the syntax of the Survey123 custom URL scheme, then how to execute a call with it and later how to integrate URL scheme calls into feature popups in ArcGIS Web Maps, so other ArcGIS Apps can leverage it.

About the Survey123 Custom URL Scheme syntax

A call to Survey123 through its URL Scheme looks something like this:

arcgis-survey123://?itemID=89bc8c7844e548e09baa3aad4695e78b&field:AssetID=FF34001&field:Status=Good&center=43.567,-117.380


Let’s break it down:


The first bit is pretty obvious: arcgis-survey123:// invokes the Survey123 mobile app. For this to work, the Survey123 app must be installed in the device in which the call is being made.


Everything after arcgis-survey123:// are optional parameters that you can pass if you want the app to do additional things. The list of parameters starts with a question mark (?).


Parameters are separated from each other through ampersands (&). Each parameter is actually made of two parts: the parameter name and the parameter value, which are separated by the equal (=) sign.  The rules for how to properly pass parameters are common to how you build query strings for the web.


The itemID parameter (itemID=89bc8c7844e548e09baa3aad4695e78b) refers to the survey you want to open. If the survey is not already in the device, the app will attempt to download it automatically. 

To obtain the proper itemID for a survey follow these instructions:

1.    In a web browser, login into survey123.arcgis.com
2.    Click on the survey for which you want the itemID
3.    Now get the ID of your Form from the location bar of your browser.

For example, if the URL of your survey looks like this:

  http://survey123.arcgis.com/surveys/3d02eec41a224902ab4c44e6d39319c8

, the itemID will be: 3d02eec41a224902ab4c44e6d39319c8

The app will automatically attempt to download the survey as specified in the itemID parameter.  If the survey is shared publicly, it will open right away.  If the survey is private, it will be downloaded using the currently logged-in user. If no user is logged-in, a dialog will prompt the user for credentials.


In the example above we use the field:AssetID and field:Status parameters to prepopulate questions in the survey.  If you want a survey to open and have some or all questions already answered, you will add as many field parameters as needed. Field parameters always are prefixed with the word field:  After that, you enter the name of the actual question for which you want to set the answer, then you add an equal sign and the answer. For example:

  • field:AssetID=FF34001 will populate the AssetID question in your survey with the value FF34001.

Here are some tips when passing field  parameters:

  • The value to insert immediately after field: is the value of the corresponding NAME question in your XLSForm. Do  not pass the Label!
  • The value to insert after the equal (=) sign is the actual value that will be stored in the feature service. If you are working with select_one type of  questions this is very relevant, since the value you must pass is that of the XLSForm Name of the choice, rather than its Label.
  • Passing field parameters for questions within a repeat or attachments is not supported at the moment.
  • If you would like to prepopulate a question, but do not want to user to change its value, flag the question in the XLSForm as read-only.


The last parameter we pass in the example above is center=43.567,-117.380.  This will set the location of geopoint questions in your survey at the provided coordinate pair. You must pass a latitude-longitude pair in decimal degrees separated by a comma as no other coordinate systems or formats are supported.


Invoking a Custom URL Scheme call: The Basics


If you would like to give this a quick try, I recommend that you use a web browser to experiment. Start by downloading the Survey123 app into your desktop. You can download it for Windows or for your Mac. Once you have the app, manually launch it and login to download a couple of surveys. Then get the itemID of one of them to start and use it to adjust the itemID parameter:  arcgis-survey123://?itemID=insert your own Form item ID here Then paste it into your web browser to launch Survey123 and open one of the surveys you downloaded. Continue experimenting by pre-populating survey questions.


Once you feel comfortable with the syntax of your URL scheme links, try in your own device. Start by e-mailing the URL Scheme invocation to yourself, and using it from your device's web browser. You can also use Survey123 URL scheme strings to configure hyperlinks in an email, or include them as part of a web page.


Invoking a Custom URL Scheme call from a Web Map


Things get pretty interesting when Survey123 URL scheme links are used within an ArcGIS Web Map. This allows you to integrate Survey123 into other ArcGIS apps, by allowing users to launch Survey123 from the popup of a Web Map in Collector, Explorer or even a web application. This gets interesting for a couple of reasons:

  • First, you can use a map centric app to help the user find a particular asset or location, then easily launch Survey123 from that app to capture data using a smart form.
  • Second, you can use the existing attributes of a feature in the map and pass them into the form to prepopulate answers. This is extremely useful to ensure, for example, that the unique ID of an asset as identified in your map, is passed into Survey123.

To embed custom URL scheme calls within a Web Map, you will want to edit the popup of an existing layer. Choose the Configure Pop-up option in the layer’s menu.

Next, select the Custom Attribute display as shown in the next screenshot.
 


In a Custom Attribute display you can now embed your Custom URL scheme call as a hyperlink. You can ignore the warning indicating that the value is not valid.  If you prefer, you can also work directly using the source HTML view of the popup.
 


As shown below, you can reference attributes from the underlying feature in your Survey123 custom URL scheme by enclosing the name of the feature attribute within curly brackets.


 arcgis-survey123://?itemID=89bc8c7844e548e09baa3aad4695e78b&field:AssetID={assetid}


With this technique, you will be populating the AssetID survey question with whatever value is present in the assetid attribute of the feature’s popup. This will ensure that captured data in Survey123 can always be associated back into the feature selected in the map.

A few quick tips when creating popups:

  • When passing text attributes with spaces, you will want to use the urlencode ArcGIS Arcade function. Otherwise, your links may get cut off at the first space encountered.
  • Field names are case sensitive in iOS. Ensure  you reference your feature service fields with the exact capitalization used in the feature service.
  • If you want to pass lat/lon values from attributes in your feature, be aware that the default formatting rules for the double data type cut-off decimal values to two. You will want to adjust the formatting rule to pass all decimal values to Survey123.

   1) Open the 'Configure pop-up dialog of your feature layer's and then select 'Configure Attributes' .
   2) Now select the attributes with your latitude and longitude values and pick the number of decimals you want to include in the Format drop-down option in the right side of the dialog.

  • If you want to pass lat/lon values from the geometry in a feature, you can add an Attribute Expression to your popup do dynamically get the lat/lon values from the geometry of your feature.

   1) Open the 'Configure pop-up dialog of your feature layer's and then select 'Configure Attributes'.
   2) Add a new Attribute Expression.
   3) Look for Geometry under the Globals tab and fetch Geometry($feature).x
   4) Use the Edit link at the top to give your expression a friendly name
   5) Repeat steps 2 through 4 to create a second expression for the y coordinate.


Once your Web Map is ready, you can next use it within multiple applications such as ArcGIS Explorer, Collector as well as your own web mapping apps.

Tip: Check Announcing a handy tool to generate Survey123 URLs if you would like to automate the generation of Survey123 Custom URLs for us in popups.

Invoking a Custom URL Scheme programmatically


In a web app or website, simply create an HTML link:

<a href='arcgis-survey123://?itemID=89bc8c7844e548e09baa3aad4695e78b'>Launch Survey123</a>

In QML AppStudio for ArcGIS:

Qt.openUrlExternally('arcgis-survey123://?itemID=89bc8c7844e548e09baa3aad4695e78b')

In Java, using Android's Intent:

PackageManager manager = mContext.getPackageManager();

Intent i = manager.getLaunchIntentForPackage(
"com.esri.survey123");
i.setData(Uri.parse("arcgis-survey123://?itemID=89bc8c7844e548e09baa3aad4695e78b"));
startActivity(i);

[This post was updated on October 30, 2018]

359 Comments
by Anonymous User
Not applicable

Hi Joe,

By radio buttons I assume you mean select one questions. This can be done the same way as any other text field, use the same url scheme syntax and pass through the values from collector to the select one question, and provided the values exist in the choice list for the select one question it should work as you want.

Phil.

RobBurnard
Emerging Contributor

I'm having the same problem with with Collector and passing data from a domain.

I'm using a custom URL to open Survey123 and pre-populate a couple of fields.  Using the web map in ArcGIS online I can call the Survey123 app and it pre-populates just fine but using Collector (desktop or IOS) and using the same url scheme I get different results.

The web map will open Survey123 and pass the code (from a domain) which is what is expected.

Collector will open Survey123 and pass the label and not the code which is a problem.

My workaround is to ensure the codes and labels are the same which is not desirable.

JustinConnerWR
Frequent Contributor

Is there any difference when you use a field w/ domain that is used to symbolize the layer vs. when it’s a field not used for symbols? Some other applications (such as the filter widget on WAB) no longer correctly show the label and are often failing to filter altogether.

MarkBennett
Regular Contributor

I found a solution to this issue if you do not want set the code/label the same:

1. suppose we have code/label pairs 1/A; 2/B; 3/C

2. add a hidden question in your survey and set the fieldType to "null";

3. In the url, pass the source data to this hidden question. It will pass the label, "A", "B", or "C" to the hidden question;

4. Put a "if(condition, true, false)" statement in the Calculation Column for the target question. The formula should looks like this:

         if(${Hidden}='A','1',if(${Hidden}='B','2',if(${Hidden}='C','3',null))) 

it will pre-select "A", "B", or "C" if a valid valve is passed to the hidden question, otherwise, it will select nothing.

This works for me!

Ming

RobBurnard
Emerging Contributor

That worked. Thank you.

It would still be nice to know if this is the intended behaviour of Collector.

MarkBennett
Regular Contributor

I think that this has something to do with the platform. I found that the value returned from the URL is different between for the desktop and the for Android system.

Ming

Get Outlook for Android<https://aka.ms/ghei36>

joerodmey
MVP Alum

Thanks Phil

RobBlash
Frequent Contributor

This is genius, thanks for the idea! In theory pulldata would also work if you didn't want to use a nested if statement.

If my memory is correct (rarely!), the limitation regarding collector passing the domain description (instead of the code) lies within Collector itself. This is something that should be resolved when Collector Aurora is released, using Arcade. I had a discussion about this somewhere but I can't seem to find it.

Edit: Found it

https://community.esri.com/message/767819-re-question-about-spaces-in-survey123-connect-name-fields-... 

G_A_Venhorst
Emerging Contributor
We have succeeded in opening the survey123 via the collector.
but instead of updating the object, a new object is placed in the data.
what am I doing wrong?


by Anonymous User
Not applicable

Hi Gerard,

Using the custom url scheme to launch Survey123 only supports adding new features, not editing existing features. We have an open enhancement request for this issue, and hope to support this in the future.

Phil.

SarahButler
Emerging Contributor

Hi Phil,

We have about 20 crews doing field work now, so I'm not sure what each crew did.  But I jumped from Survey123 version 2_5_44 to version 3_0_132. One of the crews still has version 2_6_7 on her computer, and that version still auto-populates correclty.  The PlotNumber field is the one that needs to be auto-populated.  It is a text field, and only auto-populates when WorkStatus has the value of "Field" or "In"

typenamelabelhintrequiredrequired_messageappearancedefaultreadonlyrelevantcalculationchoice_filterrepeat_countlabel::language1hint::language1media::audiomedia::imagebody::accuracyThresholdbind::esri:fieldTypebind::esri:fieldLengthbind::esri:fieldAliasbody::esri:inputMaskbind::esri:parametersbind::saveIncomplete
geopointGeoPtLocGeoPoint LocationFor travel checkout, place the pin near your final evening destination. For field checkout, the pin should be set at your plot point, and will auto-fill when linked from Collector.yesLocation is a required question.hide-input
select_one work_statusWorkStatusWork StatusyesWork Status is a required question.10
select_one plot_completePlotCompletePlot Complete?yesPlot Complete  is a required question.${WorkStatus}='In'10
textPlotNumberPlot NumberOR-001-00123yesPlot Number is a required question.0${WorkStatus}='Field' or ${WorkStatus}='In'20
by Anonymous User
Not applicable

Hi Sarah,

Do you have any relevant statements on those questions that are not displaying the passed in values? Are those questions not relevant when the form loads?

Can you share a copy of your survey so we can take a closer look.

Phil.

ShanaGail1
Frequent Contributor

Hi Philip,

We are really looking forward to editing existing features in our HFL using Survey123!  You mentioned that it was logged as enhancement, but do you know if it is in the Product Plan?

Thanks,

Shana

JamesTedrick
Esri Esteemed Contributor

Hi Shana,

Editing existing features was introduced in version 2.0 - see Prepare for editing existing survey data—Survey123 for ArcGIS | ArcGIS . 

Edit: Sorry, I missed the context about this being triggered by URL.  There is not a set timeline for implementing this feature at this time.

MarkBennett
Regular Contributor

Hi Ismael,

As you said in the writing, for center the survey to the feature geometry, we need to pass Lat/Lon in url. However, my data is in Web Mercator and "Geometry($feature)" function also returns the coordinates in Web Mercator. Is there another function to reproject it to Lat/Lon?

Thanks,

Ming

JamesTedrick
Esri Esteemed Contributor

Hi Ming,

Coordinates must be in WGS84 for Survey123 (as well as the other mobile apps).  Michael Kelly‌ has an example of an Arcade script that can do the translation into a calculated field:

https://community.esri.com/ideas/12948-add-x-y-coordinates-in-web-map-layer?commentID=62265#comment-... 

MarkBennett
Regular Contributor

Hi James,

Thanks for the reply and the tip! I have tried it and it worked and Not worked!

First, the Arcade function works on web map on a PC. Created the following function:

var Longitude, Latitude;

var x=Geometry($feature).x;

var y=Geometry($feature).y;

var sr=Geometry($feature).spatialReference.wkid;

if (sr == 102100) {

var rMajor = 6378137;

var shift = PI * rMajor;

Longitude = x / shift * 180.0;

Latitude = y / shift * 180.0;

Latitude = 180 / PI * (2 * Atan(Exp(Latitude * PI / 180.0)) - PI / 2.0);

}

return Text(Round(Latitude, 3)) + ", " + Text(Round(Longitude, 3));

It works beautifully in the pop-ups and calculated the url link on PC:

However, it seem that the Arcade function did not work on mobile Explorer. Therefore, did center the survey correctly:

I check the url link string in Explorer. It likes like this:

arcgis-survey123://?itemID=a675a608a0a844ae84bb19fccc5001ed&field:AccNumber=2051651400&center=

Could you please take a look of this and tell me what I have done wrong?

Thanks,

Ming

Sent from Mail<https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10

MichaelKelly
Frequent Contributor

Hi Ming,

Arcade expressions are not supported in the mobile apps just yet. But if you check out the latest Collector Aurora, Arcade is available within popups.

Mikie

CHRISJONES10
Emerging Contributor

Is there any way to center on a feature that does have lat. long. fields. I have line feature I want the survey to center on but it doesn't have lat. long. fields.

Thanks

Chris

MarkBennett
Regular Contributor

Hi Chris,

As indicated in my post above, I had the same problem. It seems that we can use Arcade expression to calculate the Lat/Lon in web map and included it in the url for invoking the survey. However, the mobile Explorer dose not support the Arcade expression at this moment. I have not find another other way to do this!

Could ESRI staff tell us is there any other way to achieve this? If not, do you have a time table to make Explorer supporting Arcade expression?

thanks,

ming

MichaelKelly
Frequent Contributor

Hi Ming/Chris,

You can get the Centroid of a line/polygon (which may not necessarily be on the line/polygon) using something like this via Arcade:

var PointGeometry = Centroid(Geometry($feature));

However this is not yet supported on mobile. There are ongoing efforts to make this happen and you should see it down the line. For example Collector Aurora which is available via the Early Adopter Program on iOS supports Arcade in popups. Given that Explorer uses the same underlying technology it is likely to make it's way there in due course.

At the moment, the only workaround is to add these values as attributes, after which you can build a URL via a custom popup. However these attributes do not update as the geometries are changed, nor are the available for new geometries. Python could be used to update these on a scheduled basis, but this would require some scripting/hosting of scripts.

Mikie

AurelieShapiro
Frequent Contributor

How can you use a survey123 custom URL in AppStudio? i.e. to create an app that will load a specific survey? Where you do you set it or input it? Is it in app settings or QTcreator?

BenVan_Kesteren1
Deactivated User

Brittney Gibbons‌ did you ever work out how to pass the coordinates through from Collector (existing point location) to survey123? Can you please provide an example of your pop-up configuration, and what settings you have in Survey123 to store these coordinates?

Cheers

erica_poisson
Frequent Contributor

You can pass coordinates between Collector & Survey123 using a custom URL formatted in a similar way to this example -

arcgis-survey123://?itemID=[enter item ID here]&center={Y},{X}

Just be sure to drop the brackets around "enter item ID here" when you add that in. Also, make sure you point layer has Lat/Long written to the attributes.

BenVan_Kesteren1
Deactivated User

Hi Erica, thanks for that info.

When I complete a survey and submit it using Survey123 it automatically creates a point feature, not just attributes table. What I am really trying to do here is force the survey to use the lat/long from the collector map for the geolocation of the survey point, as this will mean the collected survey point will be in the exact same location as the original point feature in collector. 

Is this idea possible? Or is it only possible to store Lat/Long in a separate field all together?

Cheers

erica_poisson
Frequent Contributor

The URL schema that I previously sent should accomplish this for you. In my use case, I am launching Survey123 from an existing waypoint in Collector. My URL passes through a variety of attributes, but it also passes the XY coordinates into my Geopoint question.

AliciaRitzenthaler
Occasional Contributor

Hi Ben (and possibly others), 

I haven't found a way to do exactly what you're referring to but what we do is to have Survey 123 submit/record data to a related table instead of a new point feature. This way, I can created my feature in collector (point/line/or polygon) or select and existing one, launch Survey 123, and have my responses populated attributes directly associated with those features in Collector. Features are exactly where you want them and you don't have to mess with the potential confusion of having multiple sets of coordinates between Collector and Survey123.

TonyViveiros1
Regular Contributor

Is it possible to use Collector to create a point, then edit that same point with S123 called from a Collector URL? Collector and S123 are using the same hosted feature layer, however, I'm finding that S123 drops another point after being called from the Collector URL. The workflow I'm looking to implement involves using Collector to record tree locations and a few basic attributes about the tree but also call S123 to collect additional tree attributes and perform subsequent tree inspections. 

BenVan_Kesteren1
Deactivated User

Hey Alicia Ritzenthaler‌, 

yeah this is my current setup, I am passing a globalID from my collector map, to my survey form, and that survey form can be linked straight back to the original collector point quite easily. The main reason I would like my survey123 points to be better geolocated is because when we carry out multiple surveys on the same point, we get points all over the place and the map gets untidy. I cannot filter off these points as we need to be able to select the survey to see the details. Here is an example of a point with a couple of surveys (shown in purple) done on them:

I just find this untidy, and would love the points to be 'on top' of one another.

Cheers

RobBlash
Frequent Contributor

I second Alicia's suggestion of publishing your surveys to a related table.

With the relationship in place you can easily pull up all previous surveys

through the asset's popup window. We are using this work flow for hydrant

and valve inspections and it works quite well.

This blog post, while long, goes into great detail regarding how to get

this done. In the end it's not hard at all, you just need to pay attention

to a few additional details.

https://community.esri.com/groups/survey123/blog/2017/09/25/working-with-existing-feature-services-in-survey123-for-arcgis

BenVan_Kesteren1
Deactivated User

Thanks Rob, ill check that blog out.

mingster
Occasional Contributor

How do you configure the pop-up to have the link to Survey123 AND to show a list of the field attributes? I would like to launch the survey from Explorer, but still allow users to see the attributes of the feature they select on the map.

RobBlash
Frequent Contributor

You need to configure a custom popup. See this blog post for the basics:

Crafting custom attribute displays in pop-ups 

To make the attributes look nice you can instert an html table. Beware that only basic HTML attributes are supported (for example, class is not supported for <td> or <tr> so you need to style inline.

Example:

<table style="vertical-align:middle;">
<tbody>
<tr><td style="color: #888888;font-family: Arial;padding: .25em;">AssetID</td><td style="color: #333333;font-family: Arial;padding: .25em;">{AssetID}</td></tr>
</tbody>
</table>‍‍‍
by Anonymous User
Not applicable

Is it possible to launch a survey from another survey this way?
If you already have the forms downloaded will the url work offline?

Our survey is extremely long with multiple sections that could potentially be individual forms - e.g. you go out to do a general river inspection at a site but while there you also do a water quality inspection and a gauging. All three inspections are linked so opening each form individually would require repopulating a number of fields but including all possible 'extra' inspections makes for a lot of scrolling or hiding/unhiding sections.

JamesTedrick
Esri Esteemed Contributor

It is possible to have a link in a form to open another form; that being said, you would need to be aware of the behavior of Survey123 - it will directly open the new form without further saving or moving to drafts the initial form.  Once the new form is submitted or placed in the Outbox, the initial form will be re-displayed.  This may present an increased risk of data loss in the first form.

erica_poisson
Frequent Contributor

Will it ever be possible to have two surveys open simultaneously?

JamesTedrick
Esri Esteemed Contributor

Hi Erica,

Can you describe the scenario you are envisioning?  By open simultaneously, are you meaning both forms displayed at the same time or switching from one form to another 'live'?

BenVan_Kesteren1
Deactivated User

Hi Erica Tefft‌ et. al.

I have had a look at your suggestion regarding passing the X,Y coordinates to a survey. I note in your example you have provided the below, which I have a couple of questions.

arcgis-survey123://?itemID=[enter item ID here]&center={Y},{X}

Is 'center' a field you have setup in your survey? Or is this a reserved work for accepting coordinates? I am unsure how to setup my survey to be in a position to accept the {Y},{X} values.

I have a geopoint field in my survey, is this all I need?

typenamelabel
geopointpoint_locationGeolocation

Also when I simply add the bracketed {Y},{X} to my popup URL I think I need to configure my web map to know what to pass through in place, if I simply drop in &center={Y},{X} the web map doesnt know what to pass through, so it leaves it blank like this:

arcgis-survey123://?itemID=[myID]&center=,‍

Can you expand further please?

erica_poisson
Frequent Contributor

Hi Ben,

Center is not a field within my survey, it is similar to “field” within the custom URL and just providing a description of what parameters come next. I’m sure I’m not explaining that properly, and someone could do a better job than me! Basically, it’s just prepping your link to pass X,Y coordinates.

As for X, and Y, these are two fields that have been added to the dataset I’m using to launch Survey123. My survey only has a geopoint question, and the X,Y coordinates from a feature (usually in Collector) are passed from there into Survey123.

So, as an example:
I have a point feature layer representing existing waypoints. I want to be able to complete a survey at these waypoints using their exact X,Y coordinates. I set up my existing waypoints file to have an X,Y field which I have calculated in ArcGIS Pro using Calculate Geometry (the coordinates need to be in WGS84). Separately, I’ve created a survey that allows the user to take multiple photos and fill out location and photo descriptions. This survey has a geopoint field. In AGOL I create my web map containing my existing waypoints feature layer. I give this a custom pop-up with the URL scheme above to launch Survey123. The XY from my existing waypoints is passed from that FL to my Survey123 geopoint question. When I fill out the survey, I just check to make sure the coordinates come in and then move on to complete the survey.

Hope this helps!

erica_poisson
Frequent Contributor

Hi James,

I’m envisioning the ability to complete two surveys simultaneously, so I guess switching between two surveys “live”? I’m not really sure what it would look like I guess. I just want the ability to have two open at once and to go back and forth between them without loosing information.

Here is my scenario:
We already have an established survey for conservation restriction monitoring waypoint photos. This survey allows us to describe the location and then take multiple photos and fill in photo descriptions. We also want to move our monitoring report into Survey123 as it is currently all paper-based, however because we are already using Survey123 for our photo survey we’re unsure of our next steps. We’ve looked into potentially using another software (e.g. GeoJot) but feel like it’s silly to pay for something we already have with S123. Survey123 is ideal for both of these workflows because of the ability to export to the report template. Since we currently can’t fill out two surveys simultaneously, and don’t want to invest in other software, we’re thinking of using a fillable PDF that can be completed on an iPad  in the field. Not ideal, but something that could work for now.

I know we’d love to hear that this capability might appear down the road.

JamesTedrick
Esri Esteemed Contributor

Hi Erica,

In the situation you describe, you can switch between forms by saving the first form to Drafts (click the 'X' button and then select the 'Save this survey in Drafts' option) and then opening the second form.  You could then either place the second survey into drafts to switch back or submit/send to the Outbox.

RobBlash
Frequent Contributor

Why not create a new survey combining the two? Assuming you used survey123 connect to build the existing survey it would be pretty simple to add all of the existing questions to a new survey.

erica_poisson
Frequent Contributor

Hi James,

I guess I was thinking more of having the ability to switch between them in a similar way you can switch between applications on an iPhone. But yes - I did know that it was possible to switch between surveys in the way you've described.

erica_poisson
Frequent Contributor

Hi Rob,

Unfortunately, that isn't possible because of the way in which our monitoring protocols are designed. There is one monitoring report created per property (e.g. one survey), but one property can have multiple waypoints and photos. Our monitoring photo survey is set up so that within the main table you describe the property, date, geopoint, and location at which you're standing, and then within a relate you can take multiple photos and answer questions about the content of each photo. So, one survey response could have anywhere from 1-4 photos for a single waypoint, but that survey could be completed 1-xx times per property.

AurelieShapiro
Frequent Contributor

You can create loops or recurring (being_repeat) questions in Survey123 to add multiple waypoints to one location:

https://doc.arcgis.com/en/survey123/desktop/create-surveys/quickreferencecreatesurveys.htm

otherwise, an option is to have all your locations as a feature service, load them in collector, and edit them individually using a custom URL in the popup. So say you are in the field and want to add something to this particular feature.

-aurélie

****************************

Aurélie Shapiro

WWF-Germany

mobile: +49 15118854814

aurelie.shapiro@wwf.de<mailto:aurelie.shapiro@wwf.de>

****************************

Von: Erica Tefft

Gesendet: Mittwoch, 17. Oktober 2018 13:45

An: Shapiro, Aurelie

Betreff: Re: - Understanding Survey123's custom URL Scheme

GeoNet <https://community.esri.com/?et=blogs.comment.created>

Understanding Survey123's custom URL Scheme

new comment by Erica Tefft<https://community.esri.com/people/DCRW_erica.tefft?et=blogs.comment.created> - View all comments on this blog post<https://community.esri.com/groups/survey123/blog/2016/07/30/understanding-survey123s-custom-url-scheme?commentID=66581&et=blogs.comment.created#comment-66581>

erica_poisson
Frequent Contributor

Hi Aurelie,

The idea of geopoints within repeats has crossed my mind, but I've been unsure of what the end data would look like that I haven't given much though. I did quickly create a copy of my existing survey and add in nested repeats this morning. Although the output data itself might take a bit for our Monitoring staff to get used to, it exported very nicely to a custom reporting template - which is ultimately the most important component.

As far as launching from Collector via the custom URL - we already do this for established waypoints, but in some instances we also collect new ones. This is the only problem I see with the nested repeat method. When I used a custom URL to pass coordinates from Collector into Survey123, the coordinates are automatically associated with the point created automatically when the survey is submitted, and not with the first nested repeat geopoint. Which makes sense, and could mean that we can just alter our workflow to collect all new waypoints, and then append them to an "existing" dataset at the end of each monitoring season.

Thank you for the suggestion!

JamesTedrick
Esri Esteemed Contributor

Hi Erica,

Thanks for describing through the workflow.  We'll keep this in mind in examining the needs of multiple survey workflows.

usuarioredes
Occasional Contributor

Estimado Ismael, junto con saludar, me dirijo a usted para realizar la siguiente pregunta:  Resulta que tengo vinculado Survey 123 con Collector for ArcGIS por medio de una URL desde la ventana emergente del Mapa Web de ArcGIS , donde luego lo compartí para visualizarlo en Collector. no he tenido problemas para abril el formulario desde mi teléfono pero lo que necesito es que al momento de enviar la encuesta el activo visualizado en Collector cambie de color para diferenciar el trabajo realizado con lo faltante, me seria me mucha ayuda su opinión.

 

 

Atentamente se despide Cristian Fuentes.

SimonJackson
Frequent Contributor

As a user, I would like to use a URL to open a survey in the Web Form, and open a specific record, so that I can share the record with someone else to edit.

I have created a simple Survey using the Web Designer.

I have published and made public for testing: https://survey123.arcgis.com/share/4f591c3575e94ceb9e605f1a74ca9704 

I was hoping one of the URL params would allow me to open a specific record into the Survey, so I could continue finishing in the additional Questions at another time.

CHRISJONES10
Emerging Contributor

I have map setup with custom attributes for the pop windows and want to use this map in collector so that I can take it offline. When I take the map offline it doesn't allow me to click the features and see the attributes. Have I missed something somewhere?