Service Graph Connector for Jamf scheduled import fails with "ConversionError: The undefined value has no properties"Issue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } The Service Graph Connector (SGC) for Jamf scheduled import fails during execution and does not load data into the Configuration Management Database (CMDB). The error persists even after repairing, uninstalling, or reinstalling the SGC for Jamf plugin. Symptoms<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } The Service Graph Connector for Jamf scheduled import fails with the error "Error executing script : ConversionError: The undefined value has no properties. (sys_script_include.a3e9abc273f220104ae4b41afaf6a7d0.script)"Test load of 20 records and full load via the data source record in the UI succeed, and outbound HTTP logs show 200 OK responses — confirming connectivity and credentials are not the cause.Loading of the import set table 'sn_jamf_integrate_sg_jamf_computers' is cancelledConcurrent import set record shows status ERROR. Repairing, uninstalling, and reinstalling the plugin does not resolve the errorScheduled import set fails to complete; import log shows the following errors: 2026-03-24 07:32:38 (859) worker.5 worker.5 txid=56d8158a2f3f ImportLog *** ERROR *** Error executing script : ConversionError: The undefined value has no properties. (sys_script_include.a3e9abc273f220104ae4b41afaf6a7d0.script; line 26) 2026-03-24 07:32:38 (858) worker.5 worker.5 txid=56d8158a2f3f SysLog *** WARNING *** Evaluator: com.glide.script.RhinoEcmaError: The undefined value has no properties. sys_script_include.a3e9abc273f220104ae4b41afaf6a7d0.script : Line(26) column(0) Stack trace: at sys_script_include.a3e9abc273f220104ae4b41afaf6a7d0.script:26 at sys_script_include.3fa7da3673b210104ae4b41afaf6a727.script:11 at sys_data_source.8e9411022f3f7e50b655881bcfa4e35f.data_loader:4 (loadData) at sys_data_source.8e9411022f3f7e50b655881bcfa4e35f.data_loader:5 2026-03-24 07:32:38 (833) worker.5 worker.5 txid=56d8158a2f3f GlideRecord *** WARNING *** Get for non-existent record: sys_progress_worker:92d8518a2f3f7e50b655881bcfa4e35e, initializing 2026-03-24 07:32:38 (829) worker.5 worker.5 txid=56d8158a2f3f ImportLog Loading import set table: sn_jamf_integrate_sg_jamf_computers Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } All currently supported releases. Cause<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } When configuring a scheduled import for the Service Graph Connector for Jamf to run with a dedicated user account, that account must have adequate role-based permissions to access the 'sn_cmdb_int_util_service_graph_connection_property' table.Starting with version 2.13.0 of the Service Graph Connector for Jamf, this table is protected by an ACL requiring the 'cmdb_inst_admin' role. If the Run as user account lacks this role, the import process cannot retrieve the required connection property data, resulting in a script error and a failed import. Since the permission check occurs during import execution — not during initial connection or authentication — this problem does not appear when testing the data source manually through the UI, and reinstalling the plugin does not fix it.Script include: JAMFUtil # https://<instancename>.service-now.com/sys_script_include.do?sys_id=a3e9abc273f220104ae4b41afaf6a7d0isProApi: function(connectionAlias) {var useJamfProApi = this.getConnectionPropertyValue(connectionAlias.getUniqueValue(), "use_jamf_pro_api");return useJamfProApi.toLowerCase() == "true";}- The above code calls the code below: (Lines 162-171)getConnectionPropertyValue: function(connectionAliasId, field) {if (gs.nil(connectionAliasId) || gs.nil(field))return;var connectionPropertiesGr = new GlideRecordSecure('sn_cmdb_int_util_service_graph_connection_property');connectionPropertiesGr.addQuery('sn_cmdb_int_util_service_graph_connection.connection_alias', connectionAliasId);connectionPropertiesGr.addQuery('property', field);connectionPropertiesGr.query();if (connectionPropertiesGr.next())return connectionPropertiesGr.value;}As per the ACL below, the user must have the "cmdb_inst_admin" role to read data from the "sn_cmdb_int_util_service_graph_connection_property" table.https://<instancename>.service-now.com/nav_to.do?uri=sys_security_acl.do?sys_id=d2207f7a77202110a52b1bfaae5a9977 Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } 1. Navigate to **Scheduled Imports** in your ServiceNow instance. - Use the application navigator and search for **Scheduled Data Imports**, or go to **System Import Sets > Administration > Scheduled Imports**. 2. Open the scheduled import record associated with the failing Jamf import job. 3. Locate the **Run as** field on the scheduled import record and note the service account user configured there. 4. Navigate to the user record for that service account. - In the application navigator, search for **Users** under **User Administration**, then search for the service account by name. 5. Open the service account user record. 6. Click the **Roles** tab at the bottom of the user record. 7. Click **Edit** to modify the role assignments for this user. 8. Add the 'cmdb_inst_admin' role to the user. 9. Click **Save**. 10. Return to the scheduled import record and click **Execute Now** to run the import manually and confirm it completes without errors. - Review the resulting concurrent import set record and its **Import Log** tab to verify no errors are present.