Which IIQ version are you inquiring about?
8.5p1
Share all details about your problem, including any error messages you may have received.
Best Practice for Bulk Creating Groups in a SCIM App with a Target-Generated ID
I’m seeking guidance on the correct approach for bulk creating groups in a SCIM-connected application where the unique ID is generated by the target system, not defined in IdentityIQ.
Environment:
- IdentityIQ Version: IIQ8.5
- Application: Atlassian Suite - Cloud (via the generic SCIM connector)
- Goal: To bulk create several hundred new groups.
Group Schema XML
<Schema created="1784064770044" displayAttribute="displayName" featuresString="PROVISIONING, GROUPS_HAVE_MEMBERS" id="0ad200e19f621bbe819f628bfffc001b" identityAttribute="id" nativeObjectType="Group" objectType="group">
<AttributeDefinition name="displayName" type="string">
<Description>A human-readable name for the Group. REQUIRED.</Description>
</AttributeDefinition>
<AttributeDefinition multi="true" name="members" type="string">
<Description>A list of members of the Group.</Description>
</AttributeDefinition>
<AttributeDefinition name="id" type="string"/>
<AttributeDefinition name="externalId" type="string"/>
</Schema>
The Challenge:
The Atlassian SCIM API, like many SCIM implementations, generates the unique identifier (the id attribute, which maps to our account’s nativeIdentity) upon group creation. When you POST a new group with a displayName, the API responds with a 201 Created status and a body containing the full group object, including the new server-generated id.
This presents a problem for the standard bulk import process using a CSV file. The CSV format for creating accounts expects a unique value for the identity column.
My CSV looks something like this:
# type, attribute, value, displayName, iiqElevatedAccess
# application=Atlassian Suite - Cloud
group, groups, , iiq-confluence-user-org, FALSE
I cannot populate the value (native identity) column because it doesn’t exist yet. It’s defined by Atlassian after the create operation is sent.
What I’ve Tried:
- Leaving the
valuefield blank: This is not a valid format for the import. - Using a dummy/placeholder value: This causes the provisioning to fail, as the connector attempts a
PUTorGETon an ID that doesn’t exist, rather than aPOSTto the/Groupsendpoint. The provisioning plan likely interprets this as an update to an existing account rather than a create request for a new one.
It seems the standard bulk create via delimited file is not designed for this SCIM pattern. My only current alternative is to create each group manually through the UI, which is not feasible for a large number.
My Question:
What is the recommended, scalable method in IdentityIQ for bulk-triggering the creation of new accounts (in this case, groups) on a SCIM connector where the unique ID is generated by the target?
Is there a different bulk request method I should use, or is the standard approach to write a custom rule (e.g., a RuleRunner task) that reads from a list of group names and programmatically generates a ProvisioningPlan for each new group?
Any examples or pointers to best practices would be greatly appreciated.
Thanks in advance.
