A module related synchronizing xMatters data
Methods
# async inner DataToxMatters(sourceData, env, syncOptions) → {Object}
Synchronizes a set of data into an instance of xMatters according to the sync options.
Parameters:
Name | Type | Description |
---|---|---|
sourceData |
module:common.xMattersData | The data to synchronize into xMatters. |
env |
module:environments.xMattersEnvironment | The xmtoolbox representation of an xMatters instance. |
syncOptions |
SyncOptions | The sync options that control the synchronization. |
destinationData An object representing the destination including data and sync results.
Object
# inner DefaultExtractOptions() → {ExtractOptions}
Returns the default extract options.
ExtractOptions
# inner DefaultSyncOptions() → {SyncOptions}
Get default sync options object.
Default sync options object.
SyncOptions
# async inner ExtractData(env, extractOptions) → {module:common.xMattersData}
Extracts data from an xMatters environment according to the options.
Parameters:
Name | Type | Description |
---|---|---|
env |
module:environments.xMattersEnvironment | The xmtoolbox representation of an xMatters instance |
extractOptions |
module:sync.ExtractOptions | |
syncOptions. |
SyncOptions | This function only uses query type (e.g. peopleQuery) and singular object (e.g. person, group, etc.) syncOptions |
xMatters Data Object
# async inner GetSyncData(env, syncOptions, isDestination) → {module:common.xMattersData}
Returns the data required from an xMatters instance for a sync.
Parameters:
Name | Type | Description |
---|---|---|
env |
module:environments.xMattersEnvironment | The xmtoolbox representation of an xMatters instance |
syncOptions |
SyncOptions | The sync options that control the synchronization. |
isDestination |
boolean |
xMatters Data Object
# async inner UserUploadToImport(json, env) → {Object}
Helper function to convert the user upload file in JSON format to data object needed to perform a sync with xMatters.
Parameters:
Name | Type | Description |
---|---|---|
json |
* | the User Upload file converted to a JSON array. |
env |
* |
Object
# async inner xMattersToxMatters(sourceEnv, destinationEnv, syncOptions) → {Object}
Synchronizes two xMatters instances according to the sync options.
Parameters:
Name | Type | Description |
---|---|---|
sourceEnv |
module:environments.xMattersEnvironment | The xmtoolbox representation of the source xMatters instance. |
destinationEnv |
module:environments.xMattersEnvironment | The xmtoolbox representation of the destination xMatters instance. |
syncOptions |
SyncOptions | The sync options that control the synchronization. |
destinationData An object representing the destination including data and sync results.
Object
Type Definitions
Object
# ExtractOptions
Properties:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
audits |
boolean |
<optional> |
false | Whether or not to get audits from xMatters. |
deviceNames |
boolean |
<optional> |
false | Whether or not to get deviceNames from xMatters. |
devices |
boolean |
<optional> |
false | Whether or not to get devices from xMatters. |
deviceTypes |
boolean |
<optional> |
false | Whether or not to get deviceTypes from xMatters. |
dynamicTeams |
boolean |
<optional> |
false | Whether or not to get dynamicTeams from xMatters. |
events |
boolean |
<optional> |
false | Whether or not to get events from xMatters. |
forms |
boolean |
<optional> |
false | Whether or not to get forms from xMatters. |
groupMembers |
boolean |
<optional> |
false | Whether or not to get groupMembers from xMatters. |
groups |
boolean |
<optional> |
false | Whether or not to get groups from xMatters. |
integrations |
boolean |
<optional> |
false | Whether or not to get integrations from xMatters. |
people |
boolean |
<optional> |
false | Whether or not to get people from xMatters. |
planConstants |
boolean |
<optional> |
false | Whether or not to get planConstants from xMatters. |
planEndpoints |
boolean |
<optional> |
false | Whether or not to get planEndpoints from xMatters. |
planProperties |
boolean |
<optional> |
false | Whether or not to get planProperties from xMatters. |
plans |
boolean |
<optional> |
false | Whether or not to get plans from xMatters. |
roles |
boolean |
<optional> |
false | Whether or not to get roles from xMatters. |
scenarios |
boolean |
<optional> |
false | Whether or not to get scenarios from xMatters. |
sharedLibraries |
boolean |
<optional> |
false | Whether or not to get sharedLibraries from xMatters. |
shifts |
boolean |
<optional> |
false | Whether or not to get shifts from xMatters. |
sites |
boolean |
<optional> |
false | Whether or not to get sites from xMatters. |
subscriptionForms |
boolean |
<optional> |
false | Whether or not to get subscriptionForms from xMatters. |
subscriptions |
boolean |
<optional> |
false | Whether or not to get subscriptions from xMatters. |
temporaryAbsences |
boolean |
<optional> |
false | Whether or not to get temporaryAbsences from xMatters. |
Object
# SyncOptions
Properties:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
forms |
boolean |
<optional> |
false, not yet supported | Whether or not to synchronize forms |
formsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the forms arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the form objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
formsQuery |
Object |
<optional> |
{ embed: 'recipients' }, //possible to include ',scenarios' but simpler to extract scenarios separately | Object representation of the query parameters supported by the Get many API request for forms |
auditsQuery |
Object |
<optional> |
{} | Object representation of the query parameters supported by the Get many API request for audits |
defaultSupervisorId |
string |
<optional> |
The default id of person in the destination that can be used to replace any unavailable supervisors when updating or creating groups. | |
delayRemoval |
boolean |
<optional> |
true | Whether or not to delay the removal of the dependent objects when mirror mode is enabled. If set to false the objects will be removed immediately. |
deviceNamesQuery |
Object |
<optional> |
{} | Object representation of the query parameters supported by the Get many API request for deviceNames |
devices |
boolean |
<optional> |
false | Whether or not to synchronize devices |
devicesFilter |
function |
<optional> |
Array.filter(callback) function to apply to the devices arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the device objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
devicesQuery |
Object |
<optional> |
{ embed: 'timeframes' } | Object representation of the query parameters supported by the Get many API request for importJobs |
dynamicTeams |
boolean |
<optional> |
false | Whether or not to synchronize dynamicTeams |
dynamicTeamsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the dynamicTeams arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the dynamicTeam objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
dynamicTeamsQuery |
Object |
<optional> |
{ embed: 'supervisors,observers' } | Object representation of the query parameters supported by the Get many API request for dynamicTeams |
eventsQuery |
Object |
<optional> |
{ embed: 'annotations,properties,responseOptions,suppressions,targetedRecipients' } | Object representation of the query parameters supported by the Get many API request for events |
groupMembers |
boolean |
<optional> |
false | Whether or not to synchronize groupMembers |
groupMembersFilter |
function |
<optional> |
Array.filter(callback) function to apply to the groupMembers arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the groupMember objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
groupMembersQuery |
Object |
<optional> |
{ embed: 'shifts' } | Object representation of the query parameters supported by the Get many API request for groupMembers |
groups |
boolean |
<optional> |
false | Whether or not to synchronize groups |
groupsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the groups arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the group objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
groupsQuery |
Object |
<optional> |
{ embed: 'observers,supervisors' } | Object representation of the query parameters supported by the Get many API request for groups |
importJobsQuery |
Object |
<optional> |
{} | Object representation of the query parameters supported by the Get many API request for importJobs |
integrations |
boolean |
<optional> |
false | Whether or not to synchronize integrations |
integrationsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the integrations arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the integration objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
integrationsQuery |
Object |
<optional> |
{ embed: 'logs' } | Object representation of the query parameters supported by the Get many API request for integrations |
mirror |
boolean |
<optional> |
false | Whether or not to perform the sync in mirror mode. Mirror mode will remove all data from the destination that is not included in the source data after filters and queries are applied. This setting will be adopted by individual object sync options in all cases where configurable mirror mode applies. If a mixed mirror mode is desired, set the individual sync options for each object where the mirror value is different than this one. |
onCallQuery |
Object |
<optional> |
{ embed: 'members.owner,shift', membersPerShift: 100 } | Object representation of the query parameters supported by the Get many API request for onCall |
people |
boolean |
<optional> |
false | Whether or not to synchronize people |
peopleFilter |
function |
<optional> |
Array.filter(callback) function to apply to the people arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the peopl objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
peopleQuery |
Object |
<optional> |
{ embed: 'roles' }, //',supervisors' and ',devices' possible. simpler to extract devices separately | Object representation of the query parameters supported by the Get many API request for people |
planConstants |
boolean |
<optional> |
false | Whether or not to synchronize planConstants |
planConstantsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the planConstants arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the planConstant objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
planEndpoints |
boolean |
<optional> |
false | Whether or not to synchronize planEndpoints |
planEndpointsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the planEndpoints arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the planEndpoint objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
planProperties |
boolean |
<optional> |
false | Whether or not to synchronize planProperties |
planPropertiesFilter |
function |
<optional> |
Array.filter(callback) function to apply to the planProperties arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the planPropertie objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
plans |
boolean |
<optional> |
false | Whether or not to synchronize plans |
plansFilter |
function |
<optional> |
Array.filter(callback) function to apply to the plans arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the plan objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
plansQuery |
Object |
<optional> |
{ embed: 'creator,constants,endpoints,forms,propertyDefinitions,integrations' } | Object representation of the query parameters supported by the Get many API request for plans |
rolesFilter |
function |
<optional> |
Array.filter(callback) function to apply to the roles arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the role objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
rolesQuery |
Object |
<optional> |
Object representation of the query parameters supported by the Get many API request for roles | |
scenarios |
boolean |
<optional> |
false | Whether or not to synchronize scenarios |
scenariosFilter |
function |
<optional> |
Array.filter(callback) function to apply to the scenarios arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the scenario objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
scenariosQuery |
Object |
<optional> |
{ embed: 'properties.translations' } | Object representation of the query parameters supported by the Get many API request for scenarios |
sharedLibraries |
boolean |
<optional> |
false | Whether or not to synchronize sharedLibraries |
sharedLibrariesFilter |
function |
<optional> |
Array.filter(callback) function to apply to the sharedLibraries arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the sharedLibrarie objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
sharedLibrariesQuery |
Object |
<optional> |
{} | Object representation of the query parameters supported by the Get many API request for sharedLibraries |
shifts |
boolean |
<optional> |
false | Whether or not to synchronize shifts |
shiftsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the shifts arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the shift objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
shiftsQuery |
Object |
<optional> |
{ embed: 'members,rotation' } | Object representation of the query parameters supported by the Get many API request for shifts |
sites |
boolean |
<optional> |
false | Whether or not to synchronize sites |
sitesFilter |
function |
<optional> |
Array.filter(callback) function to apply to the sites arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the site objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
sitesQuery |
Object |
<optional> |
{} | Object representation of the query parameters supported by the Get many API request for sites |
subscriptionforms |
boolean |
<optional> |
false | Whether or not to synchronize subscription forms |
subscriptionFormsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the subscription forms arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the subscription form objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
subscriptionFormsQuery |
Object |
<optional> |
{ embed: 'deviceNames,propertyDefinitions,roles' } | Object representation of the query parameters supported by the Get many API request for subscriptionForms |
subscriptions |
boolean |
<optional> |
false | Whether or not to synchronize subscriptions |
subscriptionsFilter |
function |
<optional> |
Array.filter(callback) function to apply to the subscriptions arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the subscription objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
subscriptionsQuery |
Object |
<optional> |
{} | Object representation of the query parameters supported by the Get many API request for subscriptions |
temporaryAbsences |
boolean |
<optional> |
false | Whether or not to synchronize temporaryAbsences |
temporaryAbsencesFilter |
function |
<optional> |
Array.filter(callback) function to apply to the temporaryAbsences arrays from the source and destination after data is extracted. Example: o => o.foo === 'bar'' //filters out all but the temporaryAbsence objects where the foo property is equal to 'bar'. Refer to the javascript Array.filter() documentation for more information. |
|
temporaryAbsencesQuery |
Object |
<optional> |
{} | Object representation of the query parameters supported by the Get many API request for temporaryAbsences |
timeframes |
boolean |
<optional> |
false | Whether or not to synchronize timeframes |
sitesTransform |
function |
<optional> |
Transforms each of the sites objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
peopleTransform |
function |
<optional> |
Transforms each of the people objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
devicesTransform |
function |
<optional> |
Transforms each of the devices objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
groupsTransform |
function |
<optional> |
Transforms each of the groups objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
shiftsTransform |
function |
<optional> |
Transforms each of the shifts objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
groupMembersTransform |
function |
<optional> |
Transforms each of the groupMembers objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
dynamicTeamsTransform |
function |
<optional> |
Transforms each of the dynamicTeams objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
temporaryAbsencesTransform |
function |
<optional> |
Transforms each of the temporaryAbsences objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
plansTransform |
function |
<optional> |
Transforms each of the plans objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
planConstantsTransform |
function |
<optional> |
Transforms each of the planConstants objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
planEndpointsTransform |
function |
<optional> |
Transforms each of the planEndpoints objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
planPropertiesTransform |
function |
<optional> |
Transforms each of the planProperties objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
sharedLibrariesTransform |
function |
<optional> |
Transforms each of the sharedLibraries objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
integrationsTransform |
function |
<optional> |
Transforms each of the integrations objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
scenariosTransform |
function |
<optional> |
Transforms each of the scenarios objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
subscriptionsTransform |
function |
<optional> |
Transforms each of the subscriptions objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
subscriptionFormsTransform |
function |
<optional> |
Transforms each of the subscription forms objects. Return the object after transform. Transformation is performed on the raw source object before filtered, converted for export, or synchronized. You have full access to the source data and destination data to perform operations such as mapping. Example: (o, sourceData, destinationData) => {o.foo = 'bar'; return o;} |
|
sitesOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval }) | Individual sync options for sites. By default fields property is set to sites.fields(), mirror uses the global options value. |
peopleOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval, fields: peopleFields }) | Individual sync options for people. By default fields property is set to people.fields(), mirror uses the global options value. |
devicesOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for devices. By default fields property is set to devices.fields(), mirror uses the global options value. |
groupMembersOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for groupMembers. By default fields property is set to groupMembers.fields(), mirror uses the global options value. |
groupsOptions |
module:common.SyncOptions |
<optional> |
{fields, mirror, delayRemoval, defaultSupervisorId, deleteShiftsOnCreate: true}) | Individual sync options for groups. By default fields property is set to groups.fields(), mirror uses the global options value. |
shiftsOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for shifts. By default fields property is set to shifts.fields(), mirror uses the global options value. |
dynamicTeamsOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval,defaultSupervisorId}) | Individual sync options for dynamicTeams. By default fields property is set to dynamicTeams.fields(), mirror uses the global options value. |
temporaryAbsencesOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for temporaryAbsences. By default fields property is set to temporaryAbsences.fields(), mirror uses the global options value. |
integrationsOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for integrations. By default fields property is set to integrations.fields(), mirror uses the global options value. |
plansOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for plans. By default fields property is set to plans.fields(), mirror uses the global options value. |
planConstantsOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for planConstants. By default fields property is set to planConstants.fields(), mirror uses the global options value. |
planEndpointsOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for planEndpoints. By default fields property is set to planEndpoints.fields(), mirror uses the global options value. |
planPropertiesOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for planProperties. By default fields property is set to planProperties.fields(), mirror uses the global options value. |
sharedLibrariesOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for sharedLibraries. By default fields property is set to sharedLibraries.fields(), mirror uses the global options value. |
scenariosOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for scenarios. By default fields property is set to scenarios.fields(), mirror uses the global options value. |
subscriptionsOptions |
module:common.SyncOptions |
<optional> |
{ fields, mirror, delayRemoval: false }) | Individual sync options for subscriptions. By default fields property is set to subscriptions.fields(), mirror uses the global options value. |
device |
* |
<optional> |
Supplying an identifier such as a device TargetName (format: "person_targetName|device_name") or a device object changes the method used to extract a device by limiting to a specific device. This may be used to synchronize a single device or limit the sites extracted device for a person. An alternate API method is used (devices.get) and appropiate devicesQuery is applied to that api which may not support the same functionality as the standard endpoints(devices.getMany) used for extracting records from xMatters in the sync. | |
group |
* |
<optional> |
Supplying an identifier such as a targetName or a group object changes the method used to extract a group, group members, and shifts by limiting to a specific group. This may be used to synchronize a single group, shift, or group members. Also apllies to extracting onCall in the ExtractData function. Alternate API methods is used (groups.get) and groupsQuery is applied to that api which may not support the same functionality as the standard endpoints(groups.getMany) used for extracting records from xMatters in the sync. | |
person |
* |
<optional> |
Supplying an identifier such as a targetName or a person object changes the method used to extract a person and devices by limiting to a specific person. This may be used to synchronize a single person, their devices. Alternate API methods are used (people.get and people.getDevices) and appropiate syncOption queries are applied to those apis which may not support the same functionality as the standard endpoints(people.getMany and devices.getMany) used for extracting records from xMatters in the sync. | |
plan |
* |
<optional> |
Supplying an identifier such as a plan name or a plan object changes the method used to extract a plan, forms, scenarios, integrations, plan constants, plan endpoints, plan properties, and shared libraries by limiting to a specific plan. This may be used to synchronize a single plan or aforementioned plan sub component(s). An alternate API method is used (plans.get) and plansQuery is applied to that api which may not support the same functionality as the standard endpoints(plans.getMany) used for extracting records from xMatters in the sync. | |
site |
* |
<optional> |
Supplying an identifier such as a name or a site object changes the method used to extract a site by limiting to a specific site. This may be used to synchronize a single site or limit the sites extracted for a person or group sync. An alternate API method is used (sites.get) and appropiate sitesQuery is applied to that api which may not support the same functionality as the standard endpoints(sites.getMany) used for extracting records from xMatters in the sync. | |
dataExtracted |
function |
<optional> |
A function that is called after data is acquired from source and destination but before any manipulation. You have full access to the destination data, destination environment, source data, and source environment(undefined when using DataToxMatters) to perform operations such as backup. Example: (destinationData, destinationEnv, sourceData, sourceEnv) => { fs.writeFileSync(`./data/${destinationEnv.subdomain}.backup.json`, JSON.stringify(destinationData))} |
|
continueOnError |
boolean |
<optional> |
false | Whether or not to continue sync when an error is encountered writing data into xMatters. Changing this option to true could result in greater number of errors since it continue to sync and downstream objects that referenced objects that failed to sync will also fail. Also, setting this to true will not result in a failure sync status when api errors are encountered. |