Service Graph Connector For Microsoft Intune - Advanced Data sources<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: #000000; } span { font-size: 12pt; font-family: Lato; color: #000000; } h2 { font-size: 24pt; font-family: Lato; color: black; } h3 { font-size: 18pt; font-family: Lato; color: black; } h4 { font-size: 14pt; font-family: Lato; color: black; } a { font-size: 12pt; font-family: Lato; color: #00718F; } a:hover { font-size: 12pt; color: #024F69; } a:target { font-size: 12pt; color: #032D42; } a:visited { font-size: 12pt; color: #00718f; } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Overview Starting from version 2.5 of the Service Graph Connector for Microsoft Intune (SG-Intune), the connector introduced Advanced Data Sources — SG-Intune Device Reports and SG-Intune Software Reports. These data sources use Microsoft’s /reports APIs for bulk data export, improving performance and adding new details such as software publisher information. SG-Intune Device Reports → Alternative to SG-Intune Computer and SG-Intune DevicesSG-Intune Software Reports → Alternative to SG-Intune Software ✅ Benefits: Reduced API calls (bulk retrieval instead of per-device)Faster imports and richer dataIncludes additional data like software publisher etc. Version-specific Configuration Instructions For Versions 2.5 and 2.6 Advanced data sources were shipped out-of-the-box in this versions. Configuration is done via the Legacy Guided Setup. Steps to configure: Go to Navigator, All -> Service Graph Connectors -> Intune -> SetUp.Proceed to the final section of the guided setup, labeled "Advanced". In the first step, user needs to configure the scheduled jobs for the OOB advanced data sources i.e., SG-Intune Trigger Device Reports and SG-Intune Trigger Software Reports. By default, these scheduled jobs are inactive. To activate them, on the Scheduled Jobs form: 1. Select the Active check box. 2. In the Run field, select Periodically to specify how often the job should run. Repeat above steps 1 and 2 for any newly added SG-Intune Trigger Device Reports and SG-Intune Trigger Software Reports scheduled jobs if multi instance was setup. In the second step, user needs to configure the scheduled import for the parent scheduled import i.e., SG-Intune Device Reports.Note: Make sure to configure this imports after 3 hrs of SG-Intune Trigger Device Reports and SG-Intune Trigger Software Reports scheduled jobs that you configured in earlier step. (For example, if the SG-Intune Trigger Device Reports scheduled job is configured to run at 9 a.m. and SG-Intune Trigger Software Reports scheduled job is configured to run at 10 a.m. daily. Configure SG-Intune Device Reports scheduled import at 1 p.m. daily in this step.)The remaining below steps are for multi connection scenarios, customers who has just one connection, need not go through this steps.In the third step, user need to provide access to the application to create/update/delete scheduled jobs, enabling the creation of new scheduled jobs for new connections/instances.The fourth step involves clearing the cache to refresh it with updated access permissions.The fifth step is to create these advanced data source and it's related files for multi connections. NOTE: To use this feature, manually install both ServiceNow IntegrationHub Action Step - Zip (com.glide.hub.action_step.zip), ServiceNow IntegrationHub Action Step - JSON Parser (com.glide.hub.action_step.jsonparser) on your instance.- Activation of ServiceNow IntegrationHub Professional Pack Installer (com.glide.hub.integrations.professional) plugin is not needed anymore. For Version 2.7 and Later Advanced data sources are not shipped out-of-the-box from 2.7 version, the configuration experience is moved to SGC-Central Workspace for a guided, automated setup. Key Changes in v2.7: Advanced data sources are not shipped OOB — only regular data sources are included by default.Existing configurations are retained — customers already using advanced data sources from earlier versions (2.5 or 2.6) will continue to have them available without any disruption.Customers can dynamically create advanced data sources from:Workspace → SGC-Central → Create Connection → Microsoft Intune → Setup ->Advanced data sourcesDuring the setup, based on the timing configuration of the report trigger job, system automatically schedules all related jobs and imports to run a few hours later (typically 3–4 hours) in the correct order; the schedule imports which are already activated with proper timings can be reviewed in the next step.No need for IntegrationHub Professional plugin — zip and JSON parsing steps are now bundled as dependencies within SG-Intune and will be automatically installed with 2.7 upgrade.Step-by-step SGC-Central flow ensures all prerequisites and configurations are validated before setup completes. Common Note (Applicable to all versions) After configuring the scheduled imports (for either regular or advanced data sources), ensure that the scheduled imports for the same connection are not active in parallel — for example, deactivate the SG-Intune Computer, SG-Intune Devices, and SG-Intune Software imports when using the advanced equivalents and vice-versa.Apply the same practice across all configured connections if multiple instances exist.Additionally, verify that the system property glide.attachment.extensions is either left empty (to allow all attachment types) or explicitly includes the extensions zip, bin, and json if they are not already listed. Data Comparision between the data sources -> The SG-Intune Device Reports data source retrieves all the devices same as the old data sources (SG-Intune Computer and SG-Intune Devices) with below exceptions in data. Instead of WiredIPv4Address of devices, this new data source will populate the WiFiIPv4Address.Additionally, this new data source brings below 5 fields into related tables of devices and computers. (sn_intune_integrat_computer_related, sn_intune_integrat_device_related) security_patch_level (for mobile devices only)device_categorywifi_subnet_iddevice_statesystem_management_bios_version But azure_ad_registered, device_enrollment_type and management_agent fields won't be populated into related tables with this new data source. -> The SG-Intune Software Reports data source retrieves all the softwares same as the old data source SG-Intune Software. Additionally it also populates publisher field in Software Install table (cmdb_sam_sw_install) if Microsoft provides that information for those software records. Technical Details For this advanced data sources approach, there will be 3 main components. Data Source Scheduled Job Scheduled Import FLOW A scheduled job initiates the subflow (Report Export).The subflow contains 3 flow actions (1 for each API). First action (Report Export Request) will trigger the device/software reports.Second action (Report Export Status) is to check the status of the reports. Upon completion, a URL is provided in the API response. (takes few seconds to 3 hrs acc. to Microsoft). So we will wait sometime and try it again in loop with constant delay of 1 min till 3 hrs. As it is async, it will end the scheduled job.The third action (Report Export Response) utilizes the above provided URL to obtain the zipped JSON file in .bin format and it will unzip the file and attach the unzipped file to the records of sn_intune_integrat_report_chunks table. When the scheduled import runs as configured by the user, it triggers data source and the data source will pull the report files from the sn_intune_integrat_report_chunks table and ensures data loading into the import set table. The remaining flow of transformations (RTE) and identifications (IRE) will be similar to any other datasources and finally the data will be inserted into CMDB tables. Note: For SG-Intune Software Reports, this subflow will run for 16 times (async) to divide the large software dump file into 16 almost equal chunks. Potential problem scenarios: 1. Error Message: "Error encountered while creating Attachment. Attachments of type are not allowed". - Make sure "glide.attachment.extensions" system property value is empty or include zip, bin and json if they are not included earlier. 2. Data is not getting loaded. - If it's 2.5 or 2.6 version of SG-Intune, make sure both ServiceNow IntegrationHub Action Step - Zip (com.glide.hub.action_step.zip) and ServiceNow IntegrationHub Action Step - JSON Parser (com.glide.hub.action_step.jsonparser) is activated on your instance. And also check if the Advanced section of guided setup is followed properly. 3. Error executing script : org.mozilla.javascript.JavaScriptException: com.glide.script.fencing.GlideTextReader$ReadException: There was an error reading a line from the input stream: \njava.io.EOFException: Unexpected end of ZLIB input stream - User faces this error when they have too many software records (over 20 million). In that case, please update the connection property software_report_chunks_count value to 256. (Navigator -> All -> Intune -> Connections -> Select the connection -> Service Graph Connection Properties tab) 4. Error Message: "java.io.IOException: Separation boundary was not specified". - Relevant scheduled jobs are not activated. Users need to go to Navigator, All -> System Definition -> Scheduled Jobs and search with Name contains SG-Intune Trigger and activate both the device and software jobs related to your connection. Sample Link. In 2.7/2.7.1 version, if you have created this Advanced data sources via SGC-Central, these trigger jobs will be auto activated.But if you are using them since 2.5/2.6, these instructions to activate the trigger jobs were there in the guided setup (you can check even the official documentation).