- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-07-2017 06:57 AM
Hello community,
I need some answers, guidance and advise on an integration we're working on with an external system MIM (Microsoft Identity Manager).
Basically in ServiceNow we're are managing users requests for SAP roles exemptions (created through Service catalog).
This will create a service request with requested items (one by role) and a catalog task (one by requested item).
The catalog task is where the external system MIM will query informations (like the user, his position, the SAP role, etc) and at the end will update the task to close it.
So the external system will do two types of interactions with ServiceNow: Query and Update. It also has been stated that the external system will be the one to pull and push information periodically.
We need to provide an Inbound web service to the external system (we're going to use REST/JSON)
Here is where I need answers and guidance:
From what I read so for in the community, SNOW documentation and best practices videos:
- We can use a direct inbound web service to a SNOW table (ex: sc_request_task) when the system pull (query) information
- We can use an Import set web service when the system push (create, update) information
In our case, the external system will:
1- Initially query information in SNOW by getting the catalog task informations related to SAP roles exemptions.
2- Process the information
3- Finally update the catalog task to close them
- Can we use an Import set web service when initially an external system is only querying information from SNOW?
- Or we have to use a direct web service first and then an import set web service for the updates in SNOW?
- Or is there any other options
Thank you
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-12-2017 12:33 AM
Hi
You can do it any way you like
- The external system can first query it identify the record it needs to update. Then it can call an update API to do the update. Whether you choose to do this via an import set or via a scripted REST API is up to you, but personally since it is not an import as such, but more an integration I would do a scripted api.
- You could also just do the second step (the update) if the external system can provide you with a number of values (user, case number ect) so that you in the update service can determine which record to update.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-11-2017 01:24 AM
Hi
You are stating that you will use REST/JSON and then you start to mention direct webservice and import set webservice. The latter two are related to SOAP webservices.
If you want to use REST then use the REST API Explorer instead. Here you will find info on how to get and put information via the REST API.
If you need to process the information coming from MIM before information is updated in ServiceNow, you create a Scripted REST API. This does not use the transform engine, but instead you process the information via scripting and insert/update the record information using Gliderecords.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-11-2017 06:42 AM
Hello,
Thank you for your reply. I'm using the API Explorer as you mentioned and I know we can use the 'Table API' to interact directly with a target table (like incident, problem, change_request…) but also interact through an import set table. The first option was what I was referring to a 'direct web service to a table'.
From what I read and watched (like the 'Integration Best Practices - Inbound Web Service' on Youtube), it's better to interact through an import set table if the external system has to update/modify information in SNOW. And to query information we can interact directly with a target table.
In our case the external system is going to do both but initially it's going to query information in SNOW. So I was wondering if we needed the external system to first call directly the target table (in our case sc_task) and then to update the tasks use an import set table ?
I hope this is a little bit more clear than my opening post.
Thank you
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-12-2017 12:33 AM
Hi
You can do it any way you like
- The external system can first query it identify the record it needs to update. Then it can call an update API to do the update. Whether you choose to do this via an import set or via a scripted REST API is up to you, but personally since it is not an import as such, but more an integration I would do a scripted api.
- You could also just do the second step (the update) if the external system can provide you with a number of values (user, case number ect) so that you in the update service can determine which record to update.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-12-2017 05:16 AM
Thank you,
This gives me a better understanding.
Have a good day.