Crowdsource Reporter can be configured in ArcGIS Online or ArcGIS Enterprise portal using the app configuration panel. To access the app configuration panel, complete the following steps:
- Create one or more maps to display in your Crowdsource Reporter application. Each map must contain one or more editable feature layers. Share these maps with a group.
- Create an app using this group and the Crowdsource Reporter configurable application template.
- Review and update the configuration parameter values. To save and review the changes, click SAVE. When you are done, click LAUNCH to open the app, or CLOSE to return to the item details page for your new app.
Although the minimum requirements for the application (a group with at least one map containing at least one editable layer) provide all you need to get started with an application for collecting features with some attributes, the application is highly configurable. The following sections contain steps for configuring a branded application and exposing additional functionality to support a wide variety of workflows:
- General Settings
- Colors and Logos
- Sign In Options
- Report Categories: Maps and Layers
- Reference Layers
- Search Settings
- Submission Form
- Report Details
- Votes and Comments
- Basemap Toggle and Legend
- Share Application View
These application settings can be defined on the General tab of the application configuration:
- Select the group containing the maps to display in the application. The group must contain at least one map with at least one editable feature layer.
- Provide a title for the application. This title displays on the splash page and along the top of the application after the splash page is dismissed. The title area will display a maximum of 34 characters. The exact number of characters depends on which characters are used and the width of the screen used to display the application.
- Provide a subtitle for the application. This text displays on the splash page under the title. The subtitle area will display a maximum of approximately 36 characters. Like the title, the length of the displayed text depends on the characters in the text and the screen size used to view the application.
- Provide a message to display when no maps are accessible through the application by the current user. For example, this is the message that will display if the maps are not shared with everyone and the application is opened using the Guest option.
Colors and Logos
Further brand your application using the parameters on the Themes tab of the application configuration. For new apps in portals and organizations with shared theme properties, many of these parameters will be populated with the shared theme values.
Configure the application to use your logo and colors.
- Choose colors for the background and text of the application header, body, and buttons.
- Provide the URL to a logo that will display in the application header. If no logo is specified, the default application icon will be used.
- Provide the URL to a favicon to display in browser tabs where your application is loaded. If no URL is specified, the default application logo will be used.
- See the section on Sign In Options for how to configure the text, colors, and graphics used on the sign in page.
Sign In Options
Crowdsource Reporter applications initially load with a splash screen that contains options for how users can access the application. These options can be configured to include Guest (anonymous) access or using an account from the organization or portal hosting the application.
Users who authenticate with ArcGIS account have access to a list of all the reports they have submitted, including those which aren't publicly visible elsewhere in the application, through the menu under their username. The application can also be configured to allow authenticated users to edit and delete their own submissions. This is accomplished by stamping all reports created by an authenticated users with either a GUID or username associated with their account. No personal information is retrieved or stored from the account used to authenticate with the app.
Configure this sign in page using the options on the Access tab of the application configuration.
- Choose which sign in options are presented on the page. Turn off all options to hide the sign in page completely. Even if you eventually want to hide the ArcGIS button, you may want to leave it enabled while you are configuring the application as ArcGIS access is the only way to view content that has not been shared with everyone.
- Provide the URL to an image you would like to use as the background of this sign in page. You may want to test the application on screens of different sizes to see how it will display. If necessary, you can also adjust the colors of the text and sign in buttons so that they are visible over your graphic.
- To allow users access to a list of their reports or to enable editing and deleting, your report layers must have a field that can store the ID of the account used to create the feature. This should be a text field with a length of at least 20 characters, and the field must have the same name in all the layers where you'd like these capabilities to be available. If you'd like to exclude a layer, simply don't add a field of this name. Provide this field name in the Field for storing the ID of authenticated users parameter.
Configure the structure and content of these panels on the General tab of the application configuration.
- Choose to enable or disable the help panel.
- Specify the text for the link displayed on the sign in page from which this content will be accessible.
- Provide a title for the panel.
- Provide the content that will be displayed in the panel. This can include links and images, and can be formatted using HTML.
- Optionally, choose to separate the content accessible from the sign in page and the content accessible in the app and provide the content for the panel that will display from the sign in page.
Report Categories: Maps and Layers
When the group contains multiple maps with at least one editable layer, the app will present users with a list of categories (maps) to choose from when submitting their reports. When the group contains only one map with one layer, this category selection view is skipped and the application opens to show the previously submitted reports.
Configure which categories and subcategories will be presented to the users of your application.
- Add categories to the application by sharing additional maps with the group; Remove categories by unsharing the maps.
- Customize the appearance of categories by changing the map thumbnail and name.
- Create subcategories by adding additional editable layers to a map that is shared with the group. The name shown in the application for a subcategory is the name of the layer in the map Contents pane.
- The categories are sorted using the sort order for the maps in the group. Define this sort order on the Settings tab of the group's Details page.
- Various map properties can be displayed in the application by clicking the info button beside the map name. Choose which properties of the map should be displayed in this space on the Options tab of the application configuration, or disable all the properties to hide the button in the application.
By default, Crowdsource Reporter will show only one editable layer at a time, but it can be configured to show non-editable layers as well. These reference layers can provide context to the users of your application.
Configure support for reference layers on the Options tab of the application configuration.
- Only reference layers that are included at the top level of the table of contents in the map will display. Layers that are nested inside map services or group layers will not currently display.
- Optionally, choose to display pop-up information for these reference layers. These pop-ups will display in the Crowdsource Reporter panel using the pop-up configured in the map.
- Optionally, choose to display comments from the reference layer related table.
- In most cases, your reference layers should be lower in the map Contents panel than the reporting layers. If they are above your reporting layers they may block the ability of users to interact with existing reports.
Crowdsource Reporter contains a search widget to help users find reports and locations. The submission form also contains a search box. Configure these search functions on the Search tab of the application configuration.
- Choose to enable or disable searching by latitude and longitude, USNG coordinates, and/or MGRS coordinates.
- Choose the geocode services to use in the application for locating addresses.
- On the Options tab of the application configuration you can set the zoom level to which the map should zoom when searching for a location from the submission form. Specify how near (larger number) or far (smaller number) the map should zoom relative to the ground.
The general structure of the submission form is defined on the Form tab of the application configuration, but the fields in the form are driven by the data structure and pop-up configuration.
Configure the structure and content of each of your submission forms.
- Use the parameters on the Form tab of the application configuration to define the titles and order of the three main sections of the submission form. These sections collect the details of the report, related attachments (only shown when attachments are enabled on the layer), and the location of the report.
- Use the Maximum image size on the longest edge parameter to scale attached larger images during report submission. The default size is Unrestricted. Any image larger than the configured size will be scaled down to the configured size to keep feature services smaller.
- Use the pop-up configuration to modify the contents and structure of the Details section of the form:
- The title of the form is the name of the layer as it appears in the Contents pane of the map.
- Fields that are marked as editable will appear in the form. These fields do not need to have display capabilities enabled unless the value in this field should be exposed to other users of the application.
- The field alias is the name of each parameter in the form.
- Field formatting settings defined in the pop-up configuration, such as date formats and multi-line text boxes, are honored by the submission form.
- Form fields appear in the order they are defined in the pop-up configuration. Use the arrows to reorder the fields.
- Define a domain on a field to provide a list of accepted values. The Solution Deployment Tool allows you to define or modify domain values for a layer without the need to republish.
- Form fields can require a value if the underlying dataset does not accept null values in that field. To change this, export the entire layer to a single file geodatabase (including any related tables) and edit the schema of the feature class. Use ArcGIS Pro to republish the layer, overwriting the original layer.
- Provide a default value for a field by editing the layer schema following the process in the previous step.
- Add fields to the form by adding the field to the layer and turning on the Edit property of the field in the pop-up configuration.
- On the Form tab of the application configuration, define the appearance and location of the button users click to access the submission form and the message that is displayed once a report has been successfully submitted.
- Define the period of time when the application will accept new reports, comments, and votes by updating the values of the Reporting Period parameters on the Reports tab of the application configuration.
- Specify the name of a text field to store a text form of the report location. For point layers, the app will first attempt to store the search term that found the location. If the report location is specified by clicking the map the app will attempt to find an address for the report location. If no address is found the coordinates of the location will be stored. For line and polygon features, the app will attempt the same reverse-geocode or coordinate-storing workflow using the first vertex of the drawn location. This location-storing functionality is only available for layers with a field of the configured (case-sensitive) name. This field does not need to be visible or editable in the pop-up.
- Restrict report submission to a specific geography by specifying the name of an uneditable polygon layer with features representing the areas where reports should be permitted. This restriction will be imposed on all maps accessed through the application containing an uneditable polygon layer with this name. Be sure to place this polygon layer lower in the map Contents than the reporting layers or it will block interaction with existing reports.
As well as an application for submitting reports, Crowdsource Reporter also provides a way for users to explore what others have been reporting by displaying a selection of the attributes of that report. Some of these properties are defined on the Reports tab of the application configuration parameter and others are defined as properties of the maps and layers.
Configure how these reports will be displayed and how users can interact with them.
- The report title, which displays in the list of reports and as the header of the report details view, is the title of the pop-up as it is configured in the map.
- On smartphones users will see a list of nearby reports with an option to toggle to a map view. Alternatively, choose to load the map view of the reports first, with an option to toggle to the list view.
- The structure of the report details is defined by the pop-up configuration. Where the submission form shows the fields that have the Edit property enabled, the details shows the fields that are enabled for Display. The details do not need to include all the fields from the report, and they can include fields that are not editable in the form. The display can be a single field, a list of fields, or a custom pop-up configuration. Arcade expressions are also supported.
- The list of reports is sorted by proximity to the user when that user has opted to share their location with the application, otherwise they are either sorted by age (most recent at the top) or by a field that can be configured on the Reports tab of the application configuration.
- When a user shares their location with the application, the app will load only those reports that are near their location. They can expand this radius incrementally to load more features. The size of this buffer can be configured in the Search Radius section of the Reports tab of the application configuration. As with any app or website that uses location, users can always use their browser settings to stop sharing their location. Alternatively, use the option on the Reports tab of the application configuration to disable this request for the users location.
- Users who submit reports while authenticated with an ArcGIS account can be allowed to edit and/or delete those reports while they are signed in. The application must be configured to store the ID of the account that was used to create the record, per the instructions in the Sign In Options section of this document.
Votes and Comments
Crowdsource Reporter provides two ways for users to interact with reports submitted by other users: They can upvote the report, and/or they can leave a comment as a reply to the initial report. Only one vote can be submitted per report and per browser session.
Configure your application to support upvoting and/or commenting on reports.
- Upvoting requires a numeric field on the reporting layer where the number of upvotes will be tallied. All layers that will support upvoting must have a field with the same name. Specify the name of this field on the Reports tab of the application configuration.
- Upvoting can be removed from all layers by removing the configured field. To remove upvoting from some layers, remove the voting field from those layers.
- Commenting requires a related table that was joined to the feature layer via a relationship class prior to publishing. To add a related table, export the feature layer to a file geodatabase and add a table to the database. Add a Global ID field to the feature class and a GUID field to the table. Add a one to many relationship class to the database that uses these fields as the primary and foreign keys. Publish the feature class and table as a single feature layer that overwrite the previous one.
- By default, the application is configured to use only one field from the comment table. If you would like to use only one field, update the comment field on the Reports tab of the application configuration to point to a field that exists in all your comment tables. Alternatively, check the checkbox to use the pop-up configuration instead. Using the pop-up configuration allows you to style your comment form and the display of your comments following the same patterns used for the main reports form and display.
- Comments can be removed by removing the related table from the service, by removing the pop-up from the comment table in the map, by specifying a field that doesn't exist in the layers that shouldn't have comments, or by disabling editing for the table in the map.
- Use the options on the Reports tab to define a field that should be used to sort comments in either ascending or descending order. This field name is case sensitive and must be consistent across all comment tables where it is to be applied.
Basemap Toggle and Legend
Two additional widgets can be enabled in a Crowdsource Reporter application. Some data collection workflows benefit from being able to toggle between different basemaps. In other cases, reference layers or complex symbology may make a legend a helpful tool for application users to understand the map.
Both of these widgets can be turned on from the Options tab of the application configuration.
Share Application View
Use the option on the Options tab to add a Share widget to the application header. This widget will generate a URL that points to the specific report, layer, and map that are currently visible in the application.
To create your own link that will open Crowdsource Reporter to a specific report, build a URL that points to a specific map, layer, and feature for that report. Construct this URL following this pattern:
OBJECTID with the following substitutions:
appURLshould be the URL for your application, for example https://myorg.maps.arcgis.com/apps/CrowdsourceReporter/index.html?appid=ab12c3d4e5f678ghijk9l0m1n234o567
mapGUIDis the GUID of the map that contains the layer that holds the incoming reports. You can find this GUID in the URL of the map.
layerIDis the ID value of the layer in this map that contains the reports. You can find this ID in the webmap JSON which can be viewed at a URL such as https://myorgs.maps.arcgis.com/sharing/content/items/z09y876x5d6a4cae915162283e85dc46/data?f=pjson.
selectedFeatureparameter searches for the OBJECTID of a feature in that layer. For example, use the URL https://myorgs.maps.arcgis.com/home/item.html?id=ab12c3d4e5f678ghijk9l0m1n234o567&webmap=z09y876x5d6a4cae915162283e85dc46&layer=LayerName_1234&selectedFeature=5.