Get desktop application:
View/edit binary Protocol Buffers messages
Audit info about *who* performed a particular action and *when*.
Used in:
,Required. The id of the user performing the action.
Required. Time and date reported by the client.
Required. Time and date reported by the server.
The user-facing name of the user.
URL of the user's profile picture.
The user's email address.
A pair of coordinates in the WGS 84 Web Mercator system.
Used in:
, ,Required. WGS 84 latitude.
Required. WGS 84 longitude.
An arbitrary geometry, represented using WGS 84 Web Mercator coordinate system. Designed for compatibility with Google Maps Platform and GeoJSON format defined at geojson.org.
Used in:
,Required. A geometry may be one of the following types:
A point geometry.
A polygon geometry.
A multi-polygon geometry.
A single job, defined by one or more tasks, and associated with zero or more locations of interest (aka data collection sites) by ID.
Required. The system-defined unique identifier of this entity.
Required. Index of the job when shown in lists.
User-facing name of the job.
The style used when rendering geometries and other UI elements associated with this job.
One or more data collection tasks to be carried out by the user in order to collect and submit data.
A closed line-string with four or more vertices.
Used in:
Required. The coordinates of the ring's vertices. The first and last positions must contain identical values.
A location of interest (LOI, presented to the user as "[data collection] sites"). All data submitted by data collectors is associated with an LOI.
Required. The system-defined unique identifier of this entity.
Required. The system-defined unique identifier of the job to which this LOI belongs.
Required. The geometry associated with this LOI.
Required. The number of submissions associated with this LOI.
Required. The user ID of the LOI's owner.
Required. Info about who created this LOI and when.
Info about who last modified this LOI and when. If unset, it is assumed the LOI was never modified after it was created.
A user-defined identifier for this LOI, generally imported from the `id` field in GeoJSON Features.
Required. Indicates who created this LOI and when.
Arbitrary key-value pairs associated with this LOI.
A single value associated with an LOI.
Used in:
A string value.
A numeric value.
Valid values for location of interest `source`.
Used in:
Indicates the value was not set.
Indicates the LOI was imported by survey as part of a statistical sampling design or other structured source.
Indicates the LOI was added at data collection time.
A multi-polygon geometry.
Used in:
Required. The individual polygons comprising the multi-polygon.
A single point on the map.
Used in:
Required. The point's coordinates.
A polygon geometry.
Used in:
,Required. The outer shell of the polygon.
Holes in the polygon, if any.
Defines a user's role in a survey.
Used in:
Default value when role is missing.
User may access survey in read-only model.
User may also submit data, but not modify jobs or other survey metadata.
User may also manage the survey, update locations of interest, etc.
A style used when rendering geometries and other UI elements associated with this job.
Used in:
Data submitted by data collectors for relevant tasks in a job.
Required. The system-defined unique identifier of this entity.
Required. The ID of the location of interest to which this submission refers.
The sequential index in which this task was completed.
Required. The ID of the job to which this submission refers. This can also be obtained from the location of interest, but is duplicated here to facilitate filtering.
Required. The user ID of the submission's owner.
Required. Info about who created this submission and when.
Info about who last modified this submission and when. If unset, the submission was never modified after it was created.
The data collector's responses to tasks in this job.
Describes a single data collection survey. Top level entity in the app.
Required. The system-defined unique identifier of this entity.
User-facing name of the survey.
User-facing description of the survey.
Defines who has access to do what with this survey.
Required. User id of the survey owner.
Defines the terms data collectors must agree to before collecting data.
Defines the survey's current state.
Defines who can access the survey beyond users in the ACLs.
Defines who can see data submitted in this survey.
Defines the terms data collectors must agree to before collecting data.
Used in:
Required. Type of data sharing terms the data collectors must agree to before collecting data.
If type is CUSTOM, this field contains the custom data sharing terms text specified by the survey organizer.
Defines the type of data sharing terms the user will see.
Used in:
Default value when the type is missing.
Data will only be shared with survey organizers.
Data can be made public with no constraints. Data collectors waive all rights to collected data, making it available under the CC0 "No Rights Reserved" license.
Terms are defined by survey organizers.
Possible values for the visibility of data in this survey.
Used in:
Default value when visibility unset. Same as CONTRIBUTOR_AND_ORGANIZERS.
LOIs and submissions can only be viewed by their contributor and survey organizers.
LOIs and submissions can be viewed by all users with access to this survey.
Possible values for who can access the survey beyond users in the ACLs.
Used in:
Default value when general_access is missing.
Only users with the DATA_COLLECTOR role in the survey ACLs can contribute.
Anyone with a link or QR Code can contribute.
Anyone can contribute.
Possible values for the survey's current state.
Used in:
Default value when status is missing.
Indicates the survey organizer has not yet completed the survey creation flow.
Survey is ready to be used/edited.
A data collection task to be carried out by the user/ to collect and submit data.
Used in:
Required. The system-defined unique identifier of this entity.
Index of the task when shown in lists.
Question or instructions shown to the user describing the task to be completed.
When true, the user may not skip this task.
Defines to which entity data collected in this task is associated with. Defaults to LOI_DATA.
Conditions which control whether this task is shown during data collection. All conditions must be evaluate to `true` for the task to be triggered.
A task may be exactly one of the following:
A question whose response is entered manually as text.
A question whose response is entered manually as a number.
A question whose response is entered manually as a date and/or time.
A question whose response is manually selected from a list of options.
A task in which the user must manually draw a geometry (point, polygon, etc.) on the map.
A task in which the user must capture their current device location.
A task in which the user must take a photo.
A set of instructions to be shown to the data collector during the data collection process.
A task in which the user must capture their current device location.
Used in:
Required. The minimum accuracy, in meters, required when capturing the current location. Set to 999.0 to represent "no limit".
Defines a single condition used to determine whether a task should be shown.
Used in:
A condition is defined by one of the following constraints:
A condition which passes if any of the specified values are selected.
Defines possible values of the `level` field.
Used in:
Default value when level is not specified.
Data collected at this level is used to define a location of interest (LOI). Specifically, geometry tasks of this type may be used to allow data collectors to define the LOI's geometry. Future implementations may use this to allow other LOI properties to be added or modified.
Data collected at this level is associated with, but does not define, a location of interest (LOI). Specifically, geometry tasks of this type define one or more annotations of the associated LOI. rather than the geometry of the LOI itself.
A question whose response is entered manually as a data and/or time.
Used in:
Required. The type of data/time question.
Allowed values for the `type` field.
Used in:
A task in which the user must manually draw a geometry (point, polygon, etc.) on the map.
Used in:
Required. One or more methods which the user may use to complete the geometry task. If multiple methods are specified, data collectors are prompted which method should be used.
Possible values for the `allowed_methods` field.
Used in:
A set of instructions to be shown to the data collector during the data collection process.
Used in:
Required. Markdown text to be shown to the user.
A question whose response is manually selected from a list of options.
Used in:
Required. The type of multiple choice question.
Required. The list of allowed multiple choice options.
When true, an additional option is presented to data collectors with the label "Other (specify)" or equivalent along with a short text field.
A single selectable multiple choice option.
Used in:
Required. The system-defined unique identifier of this entity.
Required. The index of the option when shown as a list.
The user-facing label of the option.
Valid values for the `type` field.
Used in:
Default value when no type is set/
Allow only one valid to be selected.
Allow one or more values to be selected.
A condition which passes if any of the specified values are selected.
Used in:
Required. List of multiple choice option IDs which trigger the associated task. The task is shown if one or more of the related options are selected.
Required. The system-defined unique identifier of the task to which this MultipleChoiceSelection refers.
A question whose response is entered manually as a number.
Used in:
Required. The type of number question.
Allowed values for the `type` field.
Used in:
Type not specified.
A number with a whole and optional decimal component.
A task in which the user must take a photo.
Used in:
Required. The minimum compass heading, in degrees, at which the photo may be captured. Use 0 with max. 360 to disable this constraint.
Required. The maximum compass heading, in degrees, at which the photo may be captured. Use 360 with min. 0 to disable this constraint.
A question whose response is entered manually as text.
Used in:
Required. The type of text question.
Valid values for the `type` field.
Used in:
A single line of text.
Data provided by data collectors for a specific task and LOI.
Used in:
Required. A system-defined ID.
Required. ID of the task to which this task data refers.
Indicates this task was skipped or left blank / unselected during data collection.
User-provided data must be one of the following types:
A manually entered text response.
A manually entered number response.
A manually selected date and/or time response.
Response to a multiple-choice question.
Result of data collector drawing a geometry (e.g., dropping a pin, drawing or walking a perimeter).
The result of capturing the device's current fused location.
The result of a "take a photo" task.
The values returned by the data collector's device when completing a "capture location" task.
Used in:
Required. The device's coordinates.
The accuracy of `coordinates` returned by the device, in meters.
The altitude captured by the device.
Required. The time reported by the device when the location was captured.
A manually selected date and/or time response.
Used in:
The date and/or time provided by the user. Date is set to UNIX epoch if unspecified (1970-01-01:00Z), time is set to 0:00:00.00.
Used in:
The geometry provided by the data collector.
Used in:
The unique IDs of options selected by the user.
The text provided in the "Other (please specify)" field, if present.
Indicate that the response has Other option selected.
A manually entered number response.
Used in:
The number provided by the user.
The result of a "take a photo" task.
Used in:
Relative path of photo in remote storage.
A manually entered text response.
Used in:
The text provided by the user.