Resolving Error 500 in Jira ServiceNow Integration
Introduction
Integrating Jira and ServiceNow connects software development and IT service management teams so they can work from a shared source of truth. An Error 500 is a server-side error, and in this integration, it almost always points to non-authorized access or a connection problem rather than a fault inside Getint. This guide walks through the checks and ServiceNow configuration needed to clear it.
Most Error 500 cases come down to one of two things: the ServiceNow user is missing an ACL on one of the system tables Getint reads, or the user's password is flagged for reset. Work through the steps below in order, and you will rule out both.

Before You Begin
To edit Access Control List (ACL) rules, you need to elevate your own ServiceNow session to security_admin. Without this, the ACL records described below cannot be created or modified.
Click your profile image and select Elevate Role.
In the pop-up, choose security_admin and click Update.

For the full account setup that these steps build on, see Creating a ServiceNow User for Getint Integration.
Troubleshooting Steps
1. Verify the ServiceNow Instance URL
An incorrect or outdated URL is the simplest cause of a connection failure.
Open the Getint integration setup and confirm the configured URLs match your live Jira and ServiceNow instances exactly, including the protocol (
https://) and any instance subdomain.Watch for trailing slashes, copied-in whitespace, and developer or sandbox instances that have since been retired.

2. Clear the "Password needs reset" Flag
This is the most common cause of a misleading authorization error. When the integration user's password is flagged for reset, ServiceNow blocks the connection and reports a permissions error, even though the permissions themselves are correct.
Go to User Administration > Users and open the integration user.
Make sure Password needs reset is unticked.
If it was ticked, click Set Password, save the new password, and update the credentials stored in Getint.

The error message in this situation says the user lacks sufficient permissions. That message is misleading. The real cause is the password reset flag, not the user's roles or ACLs.
3. Confirm the ITIL Role and Integration Role
The integration user needs the right roles to read and write the records being synchronized.
Go to User Administration > Users and select the integration user account.
Open the Roles tab and click Edit.
In the Collections list, add the itil role.
Add the dedicated Getint role you created for this user.
Click Save, then Update.

4. Create the Required Table ACLs
This is the step most often missing when Error 500 persists after the password and roles are correct. Getint reads several ServiceNow system tables to understand your schema and to move comments back and forth. Each one needs a read ACL tied to the Getint role, and the journal table also needs write access.
Table
Internal name
Why Getint needs it
Access
Dictionary Entry
sys_dictionary
Defines the structure and attributes of every field on every table, so Getint can read field types and properties (reference, string, length, required status) and map data correctly.
Read
Field Class
sys_glide_object
Stores the low-level definitions of the fundamental data types used by fields, helping Getint interpret each field's native type.
Read
Choice
sys_choice
Holds the drop-down options for choice fields (for example Incident State or Priority), with both the internal value and the display label, which Getint uses for status and value mapping.
Read
Journal Entry
sys_journal_field
Stores journal-type entries such as Additional comments and Work notes. Getint reads these to sync comments out and writes them back to keep a full history.
Read and Write
To create the rules, go to System Security > Access Control (ACL) and add the following six records. For every record, set the Operation, choose the table in the first Name dropdown and the field scope in the second dropdown, add a short Description, and add the Getint role under Requires role.
Read on
sys_dictionary, second dropdown set to * (all fields).Read on
sys_dictionary, second dropdown set to None (the table record itself).Read on
sys_glide_object, second dropdown set to *.Read on
sys_glide_object, second dropdown set to None.Read on
sys_choice, second dropdown set to *.Read on
sys_journal_field, second dropdown set to None.
For the full screenshots of each ACL record, follow the dedicated walkthrough in Creating a ServiceNow User for Getint Integration.
Add the Getint role to the Requires role section of all six records. An ACL with no required role, or the wrong role, will not grant the access Getint needs, and the Error 500 will continue.
5. Re-test the Connection
After the password flag, roles, and ACLs are in place:
Save the credentials in the Getint integration settings.
Test the connection.
If it still fails, confirm your session was elevated to security_admin when you created the ACLs, since records created without elevation may not save correctly.

Conclusion
Working through these checks resolves the large majority of Error 500 cases between Jira and ServiceNow. In short: confirm the instance URL, clear the password reset flag, assign the itil and Getint roles, and create the read and write ACLs on sys_dictionary, sys_glide_object, sys_choice, and sys_journal_field.
Last updated
Was this helpful?
