ServiceNow Integration Interview Questions with Answers

ServiceNow Integration Interview Questions with Answers

I believe that a life of integrity is the most fundamental source of personal worth. I do not agree with the popular success literature that says that self-esteem is primarily a matter of mind set, of attitude—that you can psych yourself into peace of mind. Peace of mind comes when your life is in harmony with true principles and values and in no other way.

-Stephen R. Covey from The 7 Habits of Highly Effective People

Planning your integrations on the NOW platform with Chuck Tomasi



Core Concepts & Architecture (1–10)

1. What are the different types of integrations supported by ServiceNow?

  • Inbound Integrations: REST, SOAP, Email Inbound, MID Server, JDBC, LDAP.
  • Outbound Integrations: REST, SOAP, JDBC, etc.
  • Real-time Integrations: Webhooks, Events.
  • Scheduled Integrations: Scheduled Jobs, Flows.
  • Third-party Integrations: Slack, Jira, Salesforce.

2. What is the difference between REST and SOAP integrations in ServiceNow?

  • REST: Lightweight, uses JSON, stateless, modern.
  • SOAP: XML-based, contract-heavy, legacy.
  • ServiceNow supports both via RESTMessageV2 and SOAPMessageV2.

3. What is IntegrationHub and why should we use it?

  • Low-code/no-code platform to integrate with external systems.
  • Reduces scripting effort and promotes reuse.
  • Includes reusable spokes for Slack, Jira, Microsoft Teams, etc.

4. How do you secure REST integrations in ServiceNow?

  • Use OAuth 2.0, Basic Auth, or Mutual TLS.
  • Apply ACLs and IP restrictions.
  • Use HTTPS and rate limiting.

5. What is the role of a MID Server in integrations?

  • Acts as a secure communication bridge with on-premise systems.
  • Used for Discovery, Orchestration, JDBC, and PowerShell scripts.

6. What are Scripted REST APIs in ServiceNow?

  • Custom APIs defined using REST API framework.
  • Support GET, POST, PUT, DELETE methods.
  • Allow complex logic for inbound integration needs.

7. What are the steps to create a REST integration in ServiceNow?

  1. Define the external API specification.
  2. Create a RESTMessageV2 record.
  3. Set headers, method, and endpoint URL.
  4. Handle authentication.
  5. Test and parse response.
  6. Use in Business Rules or Flow Designer.

8. What are Transform Maps and when do you use them in integrations?

  • Used in Import Set processes to transform and map data.
  • Applied for inbound integrations via CSV, JDBC, REST, etc.

9. What is OAuth and how is it used in ServiceNow integrations?

  • Used to secure API access using tokens.
  • ServiceNow can act as client or provider.
  • Configured in Application Registry and used with REST/SOAP integrations.

10. What is a spoke in IntegrationHub?

  • Pre-built integration package containing reusable actions and subflows.
  • Used in Flow Designer for common integrations like Slack, Jira, AD.

Inbound Integrations (11–20)

11. How do you expose a ServiceNow table via REST API?

  • Enable the Table API on the table form or via system properties.
  • Use ACLs to control access to the API.
  • Access using the endpoint: /api/now/table/<tablename>

12. What is the purpose of REST API Explorer in ServiceNow?

  • Allows developers to browse and test ServiceNow REST APIs.
  • Generates code samples (cURL, Python, JavaScript).
  • Helps validate API behavior quickly without writing code.

13. How do you handle authentication in inbound REST calls?

  • Use Basic Auth with an integration user having proper roles.
  • Use OAuth 2.0 tokens configured in Application Registry.
  • Use Mutual TLS for additional security where needed.

14. What is a Scripted REST Resource and why is it needed?

  • Defines custom behavior for HTTP methods (GET, POST, etc.).
  • Used when Table APIs are insufficient or for complex logic.
  • Gives fine-grained control over input, output, and processing.

15. How do you validate input data in Scripted REST API?

  • Use server-side JavaScript to check required fields, types, and format.
  • Return appropriate HTTP status codes (400 for bad request, etc.).
  • Log errors using gs.error() or custom log tables.

16. What is the role of ECC Queue in integrations?

  • Used for asynchronous communication between ServiceNow and MID Server.
  • Stores input and output payloads for MID jobs (e.g., Discovery, JDBC).
  • Enables reliable message processing and retry logic.

17. How can you log integration requests and responses?

  • Use gs.info() , gs.error() , or a custom log table.
  • Enable HTTP Outbound Log plugin for capturing REST/SOAP call activity.
  • Persist key info like timestamps, request body, status, and errors.

18. What are Subflows and Actions in IntegrationHub?

  • Actions: Reusable logic units that perform tasks (API call, script).
  • Subflows: Collections of actions combined to form a process.
  • Used to modularize integration flows and reduce redundancy.

19. What are best practices for building scalable inbound integrations?

  • Use asynchronous processing where possible (event queue, scheduled job).
  • Implement authentication, input validation, and error handling.
  • Avoid large payloads in synchronous calls.

20. How do you test inbound REST APIs?

  • Use tools like Postman or REST API Explorer to simulate requests.
  • Test various scenarios: valid input, missing fields, unauthorized access.
  • Check logs, response codes, and system diagnostics for issues.

Outbound Integrations (21–30)

21. How do you send data to an external system using REST?

  • Use RESTMessageV2 API to configure endpoint, method, headers, and payload.
  • Invoke execute() or executeAsync() for synchronous/asynchronous execution.

22. What is the difference between synchronous and asynchronous outbound REST calls?

  • Synchronous: Waits for response; used when immediate feedback is needed.
  • Asynchronous: Returns immediately; good for long-running calls.

23. What are common HTTP status codes in REST integrations?

  • 200: OK
  • 201: Created
  • 400: Bad Request
  • 401: Unauthorized
  • 404: Not Found
  • 500: Server Error

24. How do you handle errors in RESTMessageV2?

  • Use try-catch blocks to capture script exceptions.
  • Check status code via getStatusCode() .
  • Log or store error response via getErrorMessage() .

25. How can you ensure data is not duplicated during integration?

  • Use a correlation ID from the external system.
  • Check for existing records via GlideRecord before insert.
  • Maintain a sync history table for tracking.

26. What’s the use of Import Set API in integrations?

  • Used to bulk load structured data into staging tables.
  • Transform Maps then map it to target tables.
  • Supports REST-based import of large datasets.

27. How do you pass dynamic parameters in RESTMessageV2?

  • Use setStringParameterNoEscape() to pass values to placeholders in URL/body.
  • Supports path parameters and template substitution.

28. What is the Table API vs Aggregate API vs Attachment API?

  • Table API: CRUD operations on records.
  • Aggregate API: Performs statistical queries like count, avg.
  • Attachment API: Upload or download file attachments.

29. How do you transfer attachments in integration?

  • Use /api/now/attachment endpoint for upload (POST) or download (GET).
  • Multipart form-data or base64 may be used based on scenario.

30. How can you monitor failed integrations?

  • Monitor ECC Queue and Outbound HTTP Logs.
  • Build custom error log tables or use Event Management for alerts.
  • Set up notifications for recurring failures.

Real-time Scenarios & Troubleshooting (31–40)

31. How would you integrate Jira with ServiceNow?

  • Use IntegrationHub Spoke or custom Scripted REST APIs.
  • Map fields between ServiceNow Incidents and Jira Issues.
  • Set up bi-directional sync using webhooks and mid-server jobs if needed.

32. Why is my REST call returning 401 Unauthorized?

  • Incorrect credentials or token expired.
  • User lacks required roles or ACL permissions.
  • OAuth configuration or IP whitelisting issues.

33. What is a webhook and how do you consume it in ServiceNow?

  • A webhook is a POST call triggered by an event in an external system.
  • To consume it, create a Scripted REST API in ServiceNow.
  • Parse the incoming JSON, validate sender, and trigger business logic.

34. How do you handle retries in failed outbound integrations?

  • Log failed attempts with timestamps and status.
  • Use Scheduled Jobs to reattempt based on retry count.
  • Consider using ECC Queue for delayed or queued execution.

35. How do you manage long-running integrations?

  • Use asynchronous patterns (executeAsync or Event Queue).
  • Track progress in a status table with sys_id references.
  • Use timeouts and notifications for failed/incomplete jobs.

36. How do you prevent overloading external APIs?

  • Implement rate limiting and retries with backoff.
  • Chunk data and schedule API calls with gaps.
  • Use ServiceNow REST throttling and queuing.

37. How to secure sensitive data in integration scripts?

  • Store credentials in Credential Store, not scripts.
  • Encrypt fields and sensitive logs.
  • Use scoped apps with least privilege access.

38. How do you track integration transactions?

  • Create a log table storing request, response, timestamp, status, and retry count.
  • Use correlation IDs to relate systems.
  • Archive old transactions periodically.

39. How do you integrate ServiceNow with Microsoft Teams or Slack?

  • Use IntegrationHub Spokes or create custom flows with webhook URLs.
  • Send chat messages using REST actions or connectors.
  • Use triggers on task updates or approvals.

40. How do you debug a failed REST call?

  • Check RESTMessage response using getErrorMessage() and getBody() .
  • Review logs, status codes, and endpoint URLs.
  • Test manually using Postman with the same headers and payload.

Advanced & Best Practices (41–50)

41. What are the best practices for API versioning in Scripted APIs?

  • Use versioned URIs (e.g., /api/x_app/v1/resource).
  • Maintain backward compatibility.
  • Deprecate older versions gracefully with notification.

42. How do you schedule integration runs in ServiceNow?

  • Use Scheduled Script Executions or Flow Designer Scheduled Triggers.
  • Add retry/error handling within the logic.
  • Log execution results for audit.

43. How do you bulk integrate data from another tool?

  • Use Import Sets with REST or JDBC data sources.
  • Break large datasets into batches.
  • Validate and transform using scripts.

44. What is the best way to test integrations in lower environments?

  • Use sandbox/test accounts with limited permissions.
  • Mock external APIs where feasible.
  • Log and test edge cases extensively.

45. Can ServiceNow call external APIs without coding?

  • Yes, using IntegrationHub Flow Designer with Spokes and Actions.
  • Requires IntegrationHub subscription.

46. How do you handle data transformation in integrations?

  • Use Transform Maps for import sets.
  • Use custom scripts in REST APIs or Flow actions for live transformation.
  • Normalize fields as per ServiceNow schema.

47. How can you integrate ServiceNow with legacy systems with no API support?

  • Use CSV import/export with FTP Scheduled Jobs.
  • Parse emails using Inbound Email Actions.
  • Utilize MID Server for local scripts (e.g., PowerShell).

48. What’s the role of Scoped Apps in integrations?

  • Encapsulate logic for reuse and distribution.
  • Maintain version control and permission isolation.
  • Improve security and modularity.

49. What are best practices for integration documentation?

  • Document endpoints, payloads, authentication, and retry logic.
  • Include field mappings and flow diagrams.
  • Maintain a version-controlled knowledge base.

50. How do you monitor and alert integration failures in production?

  • Set up alert rules using Event Management.
  • Trigger emails, Slack messages, or dashboards for errors.
  • Log issues to custom tables for historical tracking.
Reference: