Configuring Dynamic Partitioning

When invoked, the Get Partitions operation returns a list of partition records. This is a top level operation which can be chained by referring to its Parent Operation .

For example, a web service that returned the list of unique cost centers inside an HR application from an API request is as follows:

Copy
GET https://hr.acme.com/admin/listCostCenters

{
"idList": [
"CC-00",
"CC-AA",
"CC-AAZY",
...
"CC-AZYXWVUT",
"CC-AZYXWVUTS"
]
}

In this example the JSON payload returns an idList that contains an array of String values, and each is a Cost Center name. In the IdentityIQ application UI a Get Partitions operation must be configured to handle this JSON response. The relevant fields would be:

  • Context URL – /admin/listCostCenters

  • Method – GET

  • Response - Root Path – $.idList.*

  • Response - Schema Attribute – costCenter Attribute Path: $

  • Response - Schema Attribute – name Attribute Path: $

By passing the string to the partition's name and the costCenter attribute, the partition's name is rendered cleanly in the Aggregation Task's status interface. Partitions with no assigned name are randomly assigned a UUID value as their name.

When the aggregation is performed and partitioning is enabled, it first asks the connector what dynamic partitions it has. The connector then calls this Get Partitions operation and returns the list of partition maps to the aggregation process. Each partition will have a costCenter field and a name field populated for use in the aggregation operation.

For information on configuring multiple endpoints, refer to Configuring Dynamic Partitioning.