Multiple API calls for single user in netiq rest Driver

Hi ,

 

Actually my requirement i have to perfrom multiple API calls for single user where  the output of previous API call will be the input of next API call.

 

For Example:

API Call 1 : Admin Login which stores cookie

API Call 2(Get Call) : Once the above call is success in this API call we are getting unique id of user

API Call 3 : Based on the  API call 2  unique id I'll create/ delete user

 

As i am able to perfrom upto API call 2 from driver . But after API Call 2 transaction is getting ended so it's not going to Subscriber channel to execute API Call 3 using policies  and rules in netiq rest driver.

 

Please let me know how to continue Driver transaction after API call 2

Parents
  • The issue you are facing is how to chain events together. Especially when they need to run in sequence.

    One approach might be, if the first event can be considered a query.  Start your Sub channel event, IDV event1. Then in the Sub channel somewhere (ETp. CP, CTP whatever) you query (REST event 1), result comes back, pick it apart and get what you need.  Still working on IDV event 1, you now use that info from REST event 1 to query something else, and the result comes back.  (REST Event 2).  Or you send a add dest attr (direct=true) so REST event 3 happens. Still in IDV event 1. Finally the original event hits the OTP and become sa REST call.

     

    Or you could have IDV event 1, process, do something, result comes back and modify the IDV object. Some other driver sees the change and touches it somehow.  This kicks your REST driver off with IDV event 2, to kick of REST event 2. And repeat until complete.

     

  • Can you please provide any reference for it so that it'll be useful
  • Verified Answer

    I'm not aware about about real reference to this info.
    Documentation just talking about specific mode:
    Select whether this action should be added to, before, or after the current operation, or written directly to the destination data store.
    https://www.netiq.com/documentation/identity-manager-47/policy_designer/data/dosetdestinationattrvalue.html

    You can see this behavior in the trace.
    "Direct" command requested in the middle of the policy, but executed only in the end (when policy process finished).
    --------------------
    xxx2xxx : Direct command from policy
    xxx2xxx :
    <nds dtdversion="4.0" ndsversion="8.x">
    <source>
    <product version="4.8.2.0">DirXML</product>
    <contact>NetIQ Corporation</contact>
    </source>
    <input>
    <modify class-name="User" dest-dn="\xxx\xxx\xxx\rcan" dest-entry-id="2464912" event-id="lx-145#20210105000658#1#1:04cca01a-7a8a-4046-81b1-1aa0cc048a7a">
    <modify-attr attr-name="Internet EMail Address">
    <remove-all-values/>
    <add-value>
    <value type="string">Rod.Can@xxx.com</value>
    </add-value>
    </modify-attr>
    </modify>
    </input>
    </nds>
    xxx2xxx : Direct command from policy result
    xxx2xxx :
    <nds dtdversion="4.0" ndsversion="8.x">
    <source>
    <product version="4.8.2.0">DirXML</product>
    <contact>NetIQ Corporation</contact>
    </source>
    <output>
    <status level="success"></status>
    </output>
    </nds>
    xxx2xxx :Policy returned:
    xxx2xxx :
    <nds dtdversion="4.0" ndsversion="8.x">
    <source>
    <product version="4.8.2.0">DirXML</product>
    <contact>NetIQ Corporation</contact>
    </source>
    <input>
    <modify cached-time="20210105000658.693Z" class-name="User" event-id="lx-145#20210105000658#1#1:04cca01a-7a8a-4046-81b1-1aa0cc048a7a" qualified-src-dn="O=xxx\OU=xxx\CN=rcan" src-dn="\xxx\xxx\xxx\rcan" src-entry-id="2464912" timestamp="1609805218#2">
    <operation-data opStartTime="1609805218913"/>
    <modify-attr attr-name="Internet EMail Address">
    <remove-all-values/>
    <add-value>
    <value type="string">Rod.Can@xxx.com</value>
    </add-value>
    </modify-attr>
    </modify>
    </input>
    </nds>
Reply
  • Verified Answer

    I'm not aware about about real reference to this info.
    Documentation just talking about specific mode:
    Select whether this action should be added to, before, or after the current operation, or written directly to the destination data store.
    https://www.netiq.com/documentation/identity-manager-47/policy_designer/data/dosetdestinationattrvalue.html

    You can see this behavior in the trace.
    "Direct" command requested in the middle of the policy, but executed only in the end (when policy process finished).
    --------------------
    xxx2xxx : Direct command from policy
    xxx2xxx :
    <nds dtdversion="4.0" ndsversion="8.x">
    <source>
    <product version="4.8.2.0">DirXML</product>
    <contact>NetIQ Corporation</contact>
    </source>
    <input>
    <modify class-name="User" dest-dn="\xxx\xxx\xxx\rcan" dest-entry-id="2464912" event-id="lx-145#20210105000658#1#1:04cca01a-7a8a-4046-81b1-1aa0cc048a7a">
    <modify-attr attr-name="Internet EMail Address">
    <remove-all-values/>
    <add-value>
    <value type="string">Rod.Can@xxx.com</value>
    </add-value>
    </modify-attr>
    </modify>
    </input>
    </nds>
    xxx2xxx : Direct command from policy result
    xxx2xxx :
    <nds dtdversion="4.0" ndsversion="8.x">
    <source>
    <product version="4.8.2.0">DirXML</product>
    <contact>NetIQ Corporation</contact>
    </source>
    <output>
    <status level="success"></status>
    </output>
    </nds>
    xxx2xxx :Policy returned:
    xxx2xxx :
    <nds dtdversion="4.0" ndsversion="8.x">
    <source>
    <product version="4.8.2.0">DirXML</product>
    <contact>NetIQ Corporation</contact>
    </source>
    <input>
    <modify cached-time="20210105000658.693Z" class-name="User" event-id="lx-145#20210105000658#1#1:04cca01a-7a8a-4046-81b1-1aa0cc048a7a" qualified-src-dn="O=xxx\OU=xxx\CN=rcan" src-dn="\xxx\xxx\xxx\rcan" src-entry-id="2464912" timestamp="1609805218#2">
    <operation-data opStartTime="1609805218913"/>
    <modify-attr attr-name="Internet EMail Address">
    <remove-all-values/>
    <add-value>
    <value type="string">Rod.Can@xxx.com</value>
    </add-value>
    </modify-attr>
    </modify>
    </input>
    </nds>
Children