Creating Custom Field Mappings

While Oomnitza offers a large selection of mappings through the UI for its various connectors, at times, fields may need to be added individually through the connector's config.ini file.

Creating a Field Mapping

A custom field mapping is a line added to a specific block of the config INI that designates the field in Oomnitza, as well as the location of the desired field in the Connector JSON.

mapping.[Oomnitza Field] = {"source": "[external field]"}

Sometimes fields require additional transformation before being sent to Oomnitza. These fields must be specified as custom mappings, and include the desired converter required to process the field. Please contact support@oomnitza.com for more information on converters. The format for these fields is:

mapping.[Oomnitza Field] = {"source": "[external field]", "converter": "[converter name]"}

Finding the Oomnitza Field ID

The Field IDs in Oomniza are alphanumeric strings that are used to identify different fields. Many default or system fields in Oomnitza use human-readable Field IDs (such as ASSIGNED_TO or BARCODE). Other Field IDs and custom Field IDs use alphanumeric strings that look like this: 

E622E72FC31F4946A77C95828FD1DBC3

They can be found by navigating to the Customization Page in Oomnitza, and selecting the appropriate field, and copying the field marked ID:

mceclip0.png

Finding the External Field

The external field can be trickier to find. The external field referenced in the field mapping is taken from the JSON payload that Oomnitza receives from the target system (e.g. Okta, Jamf, etc).

To get these payloads, you'll need to run the connector in test mode with the --save-data argument. This command looks like:

python connector.py upload <system> --testmode --save-data

This will create a /saved-data folder in your main connector folder with the payloads labeled as 1.json, 2.json, 3.json, etc. 

Open any of these files, and you'll see the structure of the connector Json. It will look something like this:

{
"profile": {
"field_1": "value 1",
"field_2": "value 2"
},
"status": "value 3"
}

When retrieving the External Field, you'll need the full path to the value using JSON dot notation. For example, if we wanted to map field_2, we'd create this field mapping:

mapping.[Oomnitza Field] = {"source": "profile.field_2"}

And if we want to get status, we'd use:

mapping.[Oomnitza Field] = {"source": "status"}
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Powered by Zendesk