ER to ER Event Sharing

Also known as “ER2ER”, "DAS2DAS", or “EarthRanger to EarthRanger”, event sharing allows you to share events between two EarthRanger sites.
 

Website: https://www.earthranger.com/ 

Note:

Integration Requires Assistance

This integration requires assistance from our support team for setup and configuration. Please contact our support team at support@earthranger.com and we’ll guide you through the process to ensure everything is set up correctly.

We are actively working to make this integration self-service in the future. Stay tuned for updates!

I. Audience

  • EarthRanger Support Team.
  • Deployment Partners.

II. Prerequisites

Source Site

  • Permissions. Create a user with permissions to read the event categories that will be shared with the destination.
  • Authentication Token. Create a session token for this user. 
     

Destination Site

  • Permissions. Create an EarthRanger user (e.g., “er2er_event_sharing”) with the “Gundi Service Account” permission set to allow the integration to create the necessary event categories and event types.
  • Authentication Token. Create a session token for this user (e.g., “er2er_event_sharing”).
  • Event Categories and Event Types. Although you can let the integration create the necessary event categories and event types, you may also choose to create them manually. 
    If you choose to create these manually, please read the section “Destination Event Schema” within the “Additional Technical Documentation” section in this article, and configure update_schema to false in Gundi.  

III. Scope

Event Types

Before synchronizing any events, all event types are first synced from the Source system to the Destination system.

The Destination event types retain the schema of the Source event types, except that enumeration and query fields are replaced with strings, and a few additional properties are added.

The “value” of the Destination event type is set to the value of the Source event type, prepended with the configured source_system_value. The display name of the Destination event type is set to the display name of the Source event type, prepended with the configured source_system_name.

For example, if the display name of the Source system is "Site A", then a "Snare" event type from the Source system would become "Site A - Snare" in the Destination system.

 
 

Event Categories

Each Source event category is also created or updated in the Destination system. For example, a "Security" event category in the Source system would become "Site A - Security" in the Destination system.

 
 

Events

Active and resolved events from the Source system that have been updated within the past x days (days_to_sync) will be created or updated in the Destination system.

Also included:

  • Attachments.
  • Notes.

Not transferred:

  • The update history of the Source event
  • The "Reported By" field of the Source event
 
 

Incidents

If a set of reports is grouped as an incident in the Source system, it will also be grouped as an incident in the Destination system.

 
 

IV. Configuring Gundi v1

Go to Gundi v1.

Go to the Inbound Integrations and select Add Integration.

Follow the steps below to configure the integration:

Follow these steps to complete the form:

Name: Provide an appropriate name for this connection (e.g., ER Site 1 to ER Site 2)

Organization: Select the relevant organization.

Type: Choose “ER2ER”.

Endpoint: API endpoint of the source ER system.

Token:  Token for the user session token on the source ER system.

State:  

{
   "days_to_sync":{{number}},
   "delete_unmatched_events":{{boolean}},
   "dest_endpoint":"{{site url}}/api/v1.0",
   "dest_token":"{{string}}",
   "prepend_system_to_categories":{{boolean}},
   "prepend_system_to_event_types":{{boolean}},
   "prepend_system_to_event_titles":{{boolean}},
   "source_system_name":"{{string}}",
   "source_system_value":"{{string}}",
   "update_schema":{{boolean}},
   "within_featuregroups":[
      "{{string}}"
   ]
}

Additional Guidance

days_to_sync - How far back the synchronization looks for changes in the Source system to a maximum of 30 days.

dest_endpoint - The API endpoint of the Destination system

dest_token - The user (e.g., “er2er_event_sharing”) session token for Destination system

source_system_name - User-friendly name used to identify the events from the Source system when looking at the Destination system

source_system_value - A value that is prepended to the unique identifiers of any event types or categories that are created so as to identify the association with the Source system.

update_schema - When the value is set to true, the event_type will be created on the destination side. It will use the same event category that it came from on the source side. Consult “Support Notes - Manual Event Schema Updates” in this article for more information.

Example:

{
   "days_to_sync":10,
   "delete_unmatched_events":false,
   "dest_endpoint":"https://sandbox.pamdas.org/api/v1.0",
   "dest_token":"0Kfl3LOh0bIgKwcYVoGVWknLMxjh6h",
   "prepend_system_to_categories":true,
   "prepend_system_to_event_types":true,
   "prepend_system_to_event_titles":true,
   "source_system_name":"VCC",
   "source_system_value":"vcc",
   "update_schema":true,
   "within_featuregroups":[
      "2b2b7728-c215-434c-bf01-a9796d5e9a7b"
   ]
}
 
 

Click Save.


V. Configurations in the Destination site

a. Manual Event Schema Updates

Please skip this section if you configured Gundi to update the schema automatically (update_schema set to True).  

Important:

When update_schema is set to False, the following fields need to be added manually to each event type schema. These properties need to be added to the Properties section, but not to the Definition section. 

   "er2er_src_id":{
      "type":"string",
      "title":"Event Type Serial Number from Source ER System"
   },
   "er2er_src_system":{
      "type":"string",
      "title":"Name of Source ER System"
   },
   "er2er_src_serial_number":{
      "type":"string",
      "title":"Serial Number of Source Event"
   },
   "er2er_src_service_root":{
      "type":"string",
      "title":"Service Root of Source Event"
   }

b. Adjusting Permissions (Required Step)

Important:

  • After the initial successful run of the integration, the destination site will contain a copy of the event categories and types from the source site. However, the integration does not automatically grant the necessary permission sets to the EarthRanger user (e.g., “er2er_event_sharing”) on the destination site. You must manually assign the permission set(s) named after the event categories created by ER2ER during that first run.
  • While you may remove the “Gundi Service Account” permission set from the user after the initial integration, ensure the user retains permissions to read, add, update, and delete event types, especially if update_schema is set to True in Gundi.
 Incorrect permission configuration may cause the integration to fail, such as events not being properly received in the destination.

VI. Additional Resources

Troubleshooting 

In Gundi (v1), the Inbound Configuration is constantly updated with two dates that are helpful for troubleshooting:

last_run indicates the last time the integration ran, whether successfully or not. 

last_successful_run indicates the last time the integration ran without errors. This date is also used to specify the time window for pulling events from the source site. If this date is not present, the integration will set the start date based on the number days_to_sync.

In case of errors, the Inbound Configuration “State” will include the errors that blocked the integration from running successfully, and the Inbound Configuration will be flagged with an “Error" label, allowing users to find it when searching for inbound configurations with errors.

 
 

 

Tags: ER2ER, EarthRanger to EarthRanger, Event Sharing, Gundi v1
Last Update: May 14, 2025



Was this article helpful?