Troubleshooting ServiceNow Integration Hub: A Practical Guide
Integration Hub problems are easiest to fix when you start from the symptom. Check first that the integration is enabled and its trigger is set. If records arrive incomplete or malformed, compare each execution's input and output field by field. Each symptom in the guide lists likely causes, where to look and the fix.
Integration Hub Troubleshooting Overview
Integration Hub orchestrates communication between ServiceNow and external systems. When something goes wrong—data is not flowing, records are missing, or errors are occurring—troubleshooting requires understanding the integration flow: data arrives from a source system, is transformed by Integration Hub, and written to a target system. Each step can fail for different reasons.
Symptom: Integration Is Not Triggering or Running
Likely causes: the trigger is not configured, the integration is disabled, or authentication has failed.
Where to look: navigate to Integration Hub > Integrations and verify the integration exists and is enabled. Check the trigger configuration: for inbound integrations (webhook, API), verify the endpoint URL is correct and the API key is valid. For scheduled integrations (batch, polling), verify the schedule is set and matches the frequency you expect. Check authentication: most integrations require API credentials to connect to external systems. If credentials expired or changed, the integration will fail silently.
Run a test execution. Many integrations have a “Test” or “Dry Run” button. Use it to see if the integration can connect to the external system. The test result will show success or error, helping you diagnose quickly.
Fix: enable the integration if disabled. Refresh API credentials (many platforms rotate credentials regularly; renew them in both the external system and Integration Hub). Verify the trigger is configured correctly: for webhooks, test the endpoint by sending a sample request using a tool like curl or Postman. For scheduled integrations, verify the schedule runs at the expected time (use a test run to confirm).
Symptom: Data Is Flowing But Records Are Incomplete or Malformed
Likely causes: transformation logic is incorrect, required fields are missing, or data type mismatches.
Where to look: check the integration execution log. Navigate to the integration record and view recent executions. For each execution, examine the input (what data was received) and output (what data was written). Compare side-by-side: are all fields present? Are values as expected? Are field types correct (is a number field showing as text)?
Use the Integration Hub debugging tools. Most integrations allow you to view the transformation logic (the mapping from source to target fields). Trace through the logic: does every output field have a corresponding input? Are there any default values or hardcoded values that should be dynamic? Check for conditional logic: are some fields written only if a condition is true? Verify the condition logic is working as expected.
Fix: update the transformation logic to include missing fields. If a field is optional in the target system but you want to send it, add it to the mapping. If a field is required and always blank, check the source data: is the source system providing this data? If not, you may need to default it (e.g., default a status to “active” if the source does not provide one). Check data types: if the target expects a number but Integration Hub sends text, the target will reject or mishandle the record. Convert data types explicitly in the transformation (e.g., parse text “123” as integer 123).
Symptom: Integration Is Timing Out or Running Very Slowly
Likely causes: the external system is slow or down, the transformation logic is complex, or Integration Hub is under heavy load.
Where to look: check the external system status. If the external system is down or experiencing latency, Integration Hub will wait for a response and eventually time out. Check system status pages or contact the external team. Review the transformation logic for performance issues: do you have loops that iterate many times? Are you making multiple API calls within a single transformation (this can add significant latency)? Check Integration Hub load: if you are running many integrations simultaneously, one might be waiting in queue.
Fix: optimize the external system connection (is there a faster endpoint?). Simplify transformation logic: move complex calculations or multiple API calls outside the main transformation if possible. Increase Integration Hub timeout thresholds if the external system is reliably slow but not broken. For high-volume integrations, consider batching records instead of processing one-by-one (batching can be much faster for large data sets).
Symptom: Data Is Flowing One Direction But Not the Other
Likely causes: inbound and outbound integrations are configured separately, and one is disabled or misconfigured.
Where to look: verify you have two separate integrations—one for inbound data (external system to ServiceNow) and one for outbound (ServiceNow to external system). They are independent and can have different configurations, schedules, and error handling. Check each integration individually: is inbound enabled but outbound disabled? Are credentials valid for both directions?
Some integrations use a single bidirectional connector; verify which model you are using. If bidirectional, check if the direction is toggled or if filtering prevents one direction from running.
Fix: enable the integration that is not running. Verify credentials for both directions (some systems use different APIs for inbound vs. outbound, with different credentials). Test each direction separately to confirm both work.
Symptom: Records Are Being Created Multiple Times
Likely causes: the integration is running multiple times (triggered multiple ways), or there is no duplicate detection.
Where to look: check the integration trigger. Is it set to run on a schedule AND on a webhook? If both are enabled, records will be processed twice. Review execution history: how many times has this integration run recently? If it has run unexpectedly many times, the trigger may be firing too frequently. Check duplicate detection: does the integration have logic to detect if a record already exists in the target system? If not, every run will create a new record.
Fix: consolidate triggers. Choose one: either schedule-based (run every hour) or event-based (run when data arrives via webhook). Use both only if you have a clear reason (e.g., schedule is a fallback to catch missed data). Implement duplicate detection: before creating a new record in the target system, check if it already exists (by ID, name, or other unique key). If it exists, update it instead of creating a new one.
Symptom: Integration Failed with a Cryptic Error
Likely causes: authentication failure, data validation failure, or API version mismatch.
Where to look: read the full error message in the execution log. Most errors are categorized: authentication errors (invalid API key, credentials expired), validation errors (required field missing, invalid format), or connectivity errors (cannot reach the external system). The error message often includes a detail or error code that points to the root cause.
If the error is from the external system (not Integration Hub), look up the error code in the external system’s documentation. For example, if Salesforce returns “REQUIRED_FIELD_MISSING: Required fields are missing”, it means a field Salesforce requires was not provided by the integration.
Fix depends on the error type. For authentication errors, refresh credentials or verify API key permissions. For validation errors, adjust the data being sent (add missing fields, fix data format). For connectivity errors, check firewall/network access to the external system. For version mismatches, update the Integration Hub connector or API call to match the external system’s current version.
Symptom: Monitoring and Alerting Are Not Working
Likely causes: monitoring is not configured, or alerts are filtered or not being sent.
Where to look: verify Integration Hub has monitoring configured. Navigate to Integration Hub > Monitoring and check if the integration is listed and alerts are enabled. Check alert rules: what condition triggers an alert (integration fails, latency exceeds threshold, data volume drops)? Verify the alert destination (email, chat, incident)—are you configured to receive it? Check your email or notification settings; alerts might be sent but filtered as spam or to an incorrect address.
Fix: enable monitoring for critical integrations. Set appropriate alert thresholds with the business owner: alert if integration is down beyond an agreed period; alert if data volume drops unexpectedly; alert if error rate spikes. Configure alert distribution: send to a distribution list (team mailbox), not an individual email, to ensure alerts are not missed if someone is out.
When to Escalate to Oblytech or ServiceNow Support
Escalate if: the external system is reachable and API credentials are valid, but Integration Hub still cannot connect (likely a platform issue); you see an error message you do not understand; or the fix is outside your authority (you need the external system team to change their API configuration). When escalating, provide the integration name, the time of the failure, the full error message, and what you have already tried to fix it.
Frequently asked questions
How often should Integration Hub integrations run?
Frequency depends on business need. Real-time or event-driven integrations run as data arrives (webhooks). Batch integrations typically run hourly or daily. For non-critical data (reporting, enrichment), daily is often sufficient. For critical data (order sync, payment processing), hourly or real-time is expected.
What should I do if an external system is down?
Integration Hub will retry (based on your retry configuration). Most integrations retry a few times with backoff (wait longer between retries). If the external system is down for hours, manual data reconciliation may be needed after it comes back up (compare source and target counts, look for missing records). Consider a manual Integration Hub run once the external system is back online to catch missed data.
How can I test an integration without affecting production?
Run the integration in a non-production environment (dev or staging). Most organizations maintain parallel external system accounts for testing. Alternatively, use the Integration Hub "Dry Run" or "Test" feature (if available) to simulate an integration without actually writing data.
Related guides
Related Oblytech services
Where this topic turns into delivery work, these are the Oblytech services that cover it.
Planning, running or fixing a ServiceNow programme? Tell us where you are and we will suggest a sensible next step.
Contact us