HOW TO

Concatenate reverse geocoding results from a geopoint question in Survey123 Connect using the pulldata() expression

First Published: October 3, 2026
Last Published: October 3, 2026

Summary

This article describes how to use the pulldata() expression in Survey123 Connect to concatenate multiple reverse geocoding results from a single geopoint question into a single value. While reverse geocoding is often used to return an individual address component such as a street name, city, or postal code, some workflows require a more complete location description. By combining multiple reverse geocoding fields, authors can create custom address strings that better meet their organization's reporting, display, or data collection needs. This article provides an example workflow for retrieving and concatenating multiple address attributes from a geopoint location.

Cause

The pulldata("@geopoint") expression is used to retrieve information from a geopoint question in a Survey123 form. When a user captures a location, Survey123 can perform reverse geocoding and return various address-related attributes associated with that location, such as the street address, city, region, postal code, and place name.

Procedure

The expression uses the concat() function to combine multiple reverse geocoding results returned by pulldata("@geopoint") into a single text string.

Example:

concat(
    pulldata("@geopoint", ${GeopointQuestionName}, "reversegeocode.address.Address"),
    ', ',
    pulldata("@geopoint", ${GeopointQuestionName}, "reversegeocode.address.City"),
    ', ',
    pulldata("@geopoint", ${GeopointQuestionName}, "reversegeocode.address.RegionAbbr"),
    ' ',
    pulldata("@geopoint", ${GeopointQuestionName}, "reversegeocode.address.Postal")
)

Where:

  • concat() combines text values into a single string.
  • @geopoint specifies that the pulldata() function should retrieve information from a geopoint question.
  • ${GeopointQuestionName} is the name of the geopoint question from which the reverse geocoding results will be retrieved. This will need to be changed to the actual name of the geopoint question.
  • "reversegeocode.address.Address" returns the street address.
  • "reversegeocode.address.City" returns the city name.
  • "reversegeocode.address.RegionAbbr" returns the abbreviated state, province, or region.
  • "reversegeocode.address.Postal" returns the postal or ZIP code.
  • ', ' and ' ' are literal text values used to insert commas and spaces between the returned address components.

For example, if the reverse geocoding results return:

  • Address = 380 New York St
  • City = Redlands
  • RegionAbbr = CA
  • Postal = 92373

the expression returns: 380 New York St, Redlands, CA 92373

The table below provides the available reverse geocoding return fields that can be used with the pulldata() and concat() functions to customize reverse geocoding results.

Return FieldDescription
reversegeocode.address.Match_addrFull matched address returned by the geocoder
reversegeocode.address.LongLabelComplete formatted address with all components
reversegeocode.address.ShortLabelAbbreviated formatted address
reversegeocode.address.Addr_typeType of location match (POI, Street Address, Point Address, etc.)
reversegeocode.address.TypePlace category or feature type
reversegeocode.address.PlaceNameName of the matched place or point of interest
reversegeocode.address.AddNumStreet number
reversegeocode.address.AddressStreet address without city, state, or postal code
reversegeocode.address.BlockBlock information, if available
reversegeocode.address.SectorSector information, if available
reversegeocode.address.NeighborhoodNeighborhood name
reversegeocode.address.DistrictDistrict name
reversegeocode.address.CityCity name
reversegeocode.address.MetroAreaMetropolitan area
reversegeocode.address.SubregionSubregion or county
reversegeocode.address.RegionState, province, or region name
reversegeocode.address.RegionAbbrAbbreviated state, province, or region
reversegeocode.address.TerritoryTerritory name
reversegeocode.address.PostalPostal or ZIP code
reversegeocode.address.PostalExtPostal code extension
reversegeocode.address.CntryNameCountry name
reversegeocode.address.CountryCodeCountry code
reversegeocode.address.XX-coordinate of the matched location
reversegeocode.address.YY-coordinate of the matched location
reversegeocode.address.InputXX-coordinate of the input geopoint
reversegeocode.address.InputYY-coordinate of the input geopoint

This approach provides greater control over the formatting of reverse geocoding results and allows specific address components to be included or excluded as needed.

Article ID: 000043907

Software:
  • ArcGIS Survey123 Connect

Get support with AI

Resolve your issue quickly with the Esri Support AI Chatbot.

Start chatting now

Related Information

Discover more on this topic

Get help from ArcGIS experts

Contact technical support

Start chatting now

Go to download options