Skip To Content

Synchronize Job Data


This tool synchronizes multiple Workflow Manager repositories participating in a Workflow Manager Cluster. The tool performs two-way synchronization; changes from the child repositories are sent to the parent repository and changes from the parent are sent to all child repositories.

This tool requires that you have Workflow Manager for Server installed and configured across all participating nodes.

Learn more about Workflow Manager replication


  • This tool can only be used for connected child repositories. For disconnected child repositories, you can use the Export Job Data and Import Job Data tools. See Workflow Manager replication for more information.

  • The changes from all child repositories are sent to the parent repository for consolidation. These consolidated changes, along with changes made in the parent repository, are then sent to all the child repositories in the cluster.

  • The parent and child Workflow Manager services must be online for synchronizing changes.


SynchronizeJobData_wmx (Input_Parent_Repository_URL, Input_Parent_Repository_Name, Input_Multi_Name)
ParameterExplanationData Type

The URL for the parent repository will be the Workflow Manager server URL, for example, http://localhost/arcgis/rest/services/parent/wmserver.


The parent repository that will be distributing the Workflow Manager jobs and configuration elements.

[[child_repository, connected, URL, last_sync_time],...]

The child repositories that will be updated with the parent repository configuration.

  • child_repository—The name of the child repository. This must be a connected repository.
  • connected—The only accepted value is "true". If any other value is entered, the child will not be synchronized.
  • URL—The URL of the child repository.
  • last_sync_time—The date and time in the system format. For example, if your system data and time format is MM:DD:YY HH:MM:SS, the value would be 08/01/2013 11:30:45.

Value Table

Code sample

SynchronizeJobData example (stand-alone Python script)

In this example, changes made in the workflow manager repositories are getting synchronized between two repositories.

# Import arcpy module
import arcpy

# Check out any necessary licenses

# Local variables:
Input_Parent_Repository_URL = "http://ServerName/arcgis/rest/services/ServerObjectName/WMServer"
Input_Parent_Repository_Name = "Redlands_Repository"
Input_Multi_Name = "Ohio_Repository true http://ohioServer/arcgis/rest/services/SO/WMServer 2011-08-08 12:00;AZ_Repository true http://AZServer/arcgis/rest/services/SO/WMServer 2011-08-08 12:00"

# Process: Synchronize Job Data
arcpy.SynchronizeJobData_wmx(Input_Parent_Repository_URL, Input_Parent_Repository_Name, Input_Multi_Name)


This tool does not use any geoprocessing environments.

Licensing information

  • ArcGIS Desktop Basic: No
  • ArcGIS Desktop Standard: Requires Workflow Manager
  • ArcGIS Desktop Advanced: Requires Workflow Manager

Related topics