.png)

ServiceNow Customer Service Management Integration Guide
Connect ServiceNow Customer Service Management with enterprise applications through REST APIs, outbound callbacks, import mechanisms, attachments, and secure workflow orchestration.
ServiceNow Customer Service Management integration options at a glance
ServiceNow Customer Service Management is primarily integrated through ServiceNow REST APIs, especially the Table API, Import Set API, Attachment API, and scripted REST APIs. ServiceNow also supports SOAP web services for established enterprise integrations, GraphQL for selected use cases and releases, and outbound REST messages, business rules, and Flow Designer actions for configured callback scenarios. Martini can consume these APIs, receive selected outbound callbacks through a REST API or webhook-triggered workflow, transform CSM data, and orchestrate scheduled or event-driven synchronization. OAuth 2.0, Basic Authentication, and, where configured, mutual TLS support secured access with environment-specific secrets and least-privilege integration users.
| Integration point | Supported by ServiceNow Customer Service Management? | Common use cases | How Martini supports it |
|---|---|---|---|
| REST APIs | Yes | ServiceNow provides the Table API, Aggregate API, Import Set API, Attachment API, scripted REST APIs, and other REST interfaces for CSM data. Common uses include creating Cases, reading Accounts and Contacts, and exposing controlled business operations. | Martini can consume ServiceNow REST endpoints from workflows, map request and response payloads, apply validation and business rules, and expose a Martini REST API that normalizes downstream access. |
| GraphQL APIs | Limited | ServiceNow GraphQL capabilities are available for selected platform use cases and releases. CSM object and operation coverage must be verified for the target instance. | Martini can consume GraphQL APIs where the target ServiceNow instance exposes the required schema and operations, with response mapping and validation handled in workflows. |
| SOAP APIs | Yes | ServiceNow SOAP web services support existing enterprise integrations and table-oriented operations. SOAP is generally a legacy or secondary choice for new CSM integrations when REST is available. | Martini can consume ServiceNow SOAP services, configure authentication, transform XML responses, and route faults through workflow error handling. |
| Webhooks / outbound callbacks | Limited | Outbound REST messages, business rules, Flow Designer actions, and events can call external endpoints for selected Case changes or other configured conditions. ServiceNow does not provide a universal all-events CSM webhook feed. | Martini can expose a REST API or receive callbacks through a webhook-triggered workflow, validate the event, retrieve the current resource when needed, and deduplicate notifications. |
| Bulk / async / batch APIs | Yes | The Import Set API and related import mechanisms support bulk-oriented ingestion. Pagination, batch requests, and asynchronous transformation patterns can support controlled synchronization and migration. | Martini can read source data in pages or batches, transform it into import-set payloads, submit controlled loads, retain checkpoints, and route rejected rows for remediation. |
| File / attachment APIs | Yes | The Attachment API supports uploading, downloading, querying, and deleting attachments associated with Cases and other permitted records. | Martini can retrieve external files, transform metadata where required, upload attachments to ServiceNow, and persist returned attachment identifiers and processing status. |
| Authentication | Yes | ServiceNow supports OAuth 2.0 and Basic Authentication for REST integrations, with mutual TLS and additional controls available depending on configuration. Roles, ACLs, scopes, and integration-user permissions govern access. | Martini can use configured authentication and environment-specific secrets, separate credentials by environment, and centralize access through reusable workflows or APIs. |
| Database access | No | Direct access to the ServiceNow production database is not a standard external CSM integration mechanism. APIs, imports, exports, reports, or separately provisioned data services should be used instead. | Martini can connect to approved external databases when part of a broader integration, but it should not rely on direct ServiceNow production database access. |
How ServiceNow Customer Service Management exposes data and business events
ServiceNow REST APIs
ServiceNow REST APIs are the primary integration mechanism for CSM. The Table API can create, retrieve, update, and delete accessible table data, while Import Set, Attachment, Aggregate, and scripted REST APIs support specialized operations. Available fields and permissions depend on the instance, release, plugins, and configuration.
Martini implementation pattern
Martini implementation pattern: Martini workflows call the required ServiceNow REST endpoint, authenticate with environment-specific credentials, validate the response, map the payload into a canonical or target model, and apply business rules before writing to another system or returning an API response.
Implementation sequence
ServiceNow outbound callbacks
ServiceNow can initiate outbound HTTP calls through outbound REST messages, business rules, Flow Designer actions, and configured events. This supports webhook-style notifications for selected Case operations and conditions, but it is not a universal all-events CSM stream.
Martini implementation pattern
Martini implementation pattern: Martini exposes a REST API or webhook-triggered workflow for configured ServiceNow callbacks. The workflow authenticates and validates the notification, deduplicates it, optionally retrieves the current Case, then routes the normalized event to downstream systems.
Implementation sequence
ServiceNow Import Set API
The Import Set API supports bulk-oriented ingestion into ServiceNow import sets, where transform maps and instance rules can process incoming data. It is suitable for controlled migrations and larger loads when transactional Table API calls would be inefficient.
Martini implementation pattern
Martini implementation pattern: Martini reads source records in pages or batches, transforms them into the import-set contract, submits controlled requests, records accepted and rejected rows, and reconciles source totals with ServiceNow processing results.
Implementation sequence
ServiceNow Attachment API
The Attachment API supports uploading, downloading, querying, and deleting files associated with permitted ServiceNow records such as Cases. Attachment access remains subject to ACLs, file-size limits, content controls, and instance configuration.
Martini implementation pattern
Martini implementation pattern: A Martini workflow treats attachment transfer as a separate operation from the parent record, retrieves or receives the file, validates metadata and policy, uploads it to the related ServiceNow record, and stores the returned attachment identifier.
Implementation sequence
ServiceNow SOAP web services
ServiceNow supports SOAP web services for established enterprise integrations. SOAP is a secondary or legacy mechanism for new CSM work when the required operation is available through REST, but it may remain necessary for existing contracts.
Martini implementation pattern
Martini implementation pattern: Martini consumes the SOAP service, handles XML serialization and SOAP faults, maps the response into the canonical model, and isolates legacy protocol details inside a reusable workflow or service.
Implementation sequence
Common ServiceNow Customer Service Management integration patterns
Pattern 1: Synchronize customers and contacts
When to use this pattern
Use this pattern when ServiceNow CSM must share Accounts, Contacts, or Consumers with Salesforce, Microsoft Dynamics 365, or another customer system. It supports scheduled or event-driven synchronization while reducing duplicate customer data and update loops.
Integration direction
Example Mapping
| ServiceNow Customer Service Management Field | Canonical Field | Target Field |
|---|---|---|
| Account external identifier | customer.externalId | ServiceNow Account external reference |
| Account name | customer.name | name |
| Contact email | customer.contact.email | ServiceNow Contact email |
| Customer owner | customer.ownerId | assigned ownership attribute |
Martini implementation pattern
A Martini workflow reads changed customer data using pagination and an overlap window, validates required fields, resolves references by stable external identifiers, and performs idempotent ServiceNow upserts. It records checkpoints, applies ownership and privacy rules, prevents callback loops with a source marker, and routes ambiguous matches or rejected records for review.
Martini capabilities used
- workflows
- API consumption
- data mapping
- business rules
- scheduled execution
- error handling
Pattern 2: Create CSM Cases from an application
When to use this pattern
Use this pattern when a portal, CRM, commerce application, or other approved system needs to create ServiceNow Cases through a stable integration contract rather than calling ServiceNow directly.
Integration direction
Example Mapping
| ServiceNow Customer Service Management Field | Canonical Field | Target Field |
|---|---|---|
| requesterId | case.requester.externalId | Contact or Consumer reference |
| subject | case.title | short_description |
| description | case.description | description |
| priority | case.priority | priority |
Martini implementation pattern
Martini exposes a controlled REST API, authenticates the caller, validates Account and Contact or Consumer references, checks an idempotency key, maps category and priority values, and creates the Case through the Table API or a purpose-built scripted REST API. It returns the ServiceNow sys_id and case number while preserving consistent error responses and correlation data.
Martini capabilities used
- API exposure
- API consumption
- data mapping
- validation
- business rules
- error handling
Pattern 3: Route Case events to engineering and collaboration tools
When to use this pattern
Use this pattern when selected Case creations, assignments, escalations, or closures should create Jira work or notify Slack and Microsoft Teams. Event coverage must be explicitly configured in ServiceNow.
Integration direction
Example Mapping
| ServiceNow Customer Service Management Field | Canonical Field | Target Field |
|---|---|---|
| Case number | case.reference | Jira issue external reference |
| short_description | case.title | Jira summary |
| priority | case.priority | Jira priority |
| assignment group | case.team | Jira project or team |
Martini implementation pattern
ServiceNow sends an outbound REST callback for selected conditions to a Martini endpoint. Martini validates and deduplicates the notification, retrieves the current Case when necessary, filters sensitive data, maps the payload to Jira or a collaboration message, and applies bounded retries for transient delivery failures. Status updates can return through a separate controlled workflow.
Martini capabilities used
- webhook consumption
- API exposure
- workflow orchestration
- data mapping
- routing
- retry and error handling
Pattern 4: Migrate customer-service data in controlled batches
When to use this pattern
Use this pattern for an initial migration or large periodic load of Accounts, Contacts, Consumers, or Cases from a legacy application or files into ServiceNow CSM.
Integration direction
Example Mapping
| ServiceNow Customer Service Management Field | Canonical Field | Target Field |
|---|---|---|
| legacyCustomerId | customer.externalId | ServiceNow external reference |
| legacyCaseNumber | case.sourceReference | external reference |
| customerEmail | customer.contact.email | Contact email |
| caseStatus | case.status | state |
Martini implementation pattern
Martini extracts source data from APIs or files, validates and normalizes each row, resolves dependencies in load order, submits bounded Import Set API batches, and captures accepted and rejected results. The workflow checkpoints progress, throttles requests, reconciles totals, and sends failed rows to a remediation path. Attachments are transferred separately through the Attachment API.
Martini capabilities used
- workflows
- file and API processing
- data transformation
- batch orchestration
- checkpointing
- error handling
Applications commonly integrated with ServiceNow Customer Service Management
ServiceNow CSM can exchange customer, case, product, organizational, and collaboration data with adjacent enterprise applications. Exact integration behavior depends on the target product, ServiceNow release, installed plugins, scopes, licensing, and instance configuration. Martini can coordinate these systems through their documented APIs and event mechanisms without requiring a dedicated ServiceNow connector.
| Application | Scenario | Direction | Martini Pattern |
|---|---|---|---|
| Salesforce | Synchronize Accounts, Contacts, customer context, and support Cases between Salesforce and ServiceNow CSM. | Salesforce → Martini → ServiceNow Customer Service Management | Use scheduled or event-driven REST workflows to read changed Salesforce data, resolve ServiceNow references, apply external-ID matching, and upsert Accounts, Contacts, or Cases. Route status changes back through a separate workflow and prevent update loops with source-system markers. |
| Microsoft Dynamics 365 | Coordinate account, contact, customer, and service-case information across Microsoft CRM and ServiceNow CSM. | Microsoft Dynamics 365 → Martini → ServiceNow Customer Service Management | Consume the documented Dynamics and ServiceNow APIs, normalize customer identifiers into a canonical model, validate required CSM fields, and perform idempotent writes. Use checkpoints and bounded retries for scheduled synchronization. |
| Jira | Create or update engineering work when a CSM Case requires product investigation or defect resolution, while returning progress to customer service. | ServiceNow Customer Service Management → Martini → Jira | Receive selected ServiceNow Case callbacks or poll for qualifying updates, transform the Case into a Jira issue, retain cross-system identifiers, and route Jira status changes back to ServiceNow through controlled API calls. |
| SAP S/4HANA | Retrieve customer, order, delivery, or product information needed by customer-service agents and submit approved service-related transactions where required. | SAP S/4HANA → Martini → ServiceNow Customer Service Management | Orchestrate API calls between SAP and ServiceNow, resolve Account and Product references using stable identifiers, apply business rules for permitted data exposure, and log correlation identifiers for reconciliation. |
| Workday | Synchronize employee, department, manager, and organizational information used for case routing and internal ownership. | Workday → Martini → ServiceNow Customer Service Management | Run a scheduled workflow that extracts changed organizational data, maps ownership fields, validates references, and updates the relevant ServiceNow records with idempotent writes and rejected-row handling. |
| Slack | Notify selected teams about priority Cases, escalations, or service-level risks while limiting sensitive customer information in collaboration channels. | ServiceNow Customer Service Management → Martini → Slack | Receive configured ServiceNow outbound REST notifications, filter by Case state or priority, redact restricted fields, format a Slack message, and retry only transient delivery failures. |
| Microsoft Teams | Deliver case notifications and support collaboration messages to service teams, with optional controlled updates through an API. | ServiceNow Customer Service Management → Martini → Microsoft Teams | Use a Martini endpoint for selected ServiceNow callbacks, apply routing and privacy rules, publish the message to the Teams interface supported by the solution, and preserve the ServiceNow Case identifier for traceability. |
| Microsoft Entra ID | Support identity, user provisioning, group-based access, and authentication-related processes around ServiceNow users and customer-service applications. | Microsoft Entra ID → Martini → ServiceNow Customer Service Management | Coordinate identity-related API exchanges with least-privilege credentials, map users and groups to approved ServiceNow roles or ownership attributes, and apply explicit validation and audit logging. |
How to build a ServiceNow Customer Service Management integration in Martini
Objective
Establish authenticated access to ServiceNow and any target applications without embedding credentials in workflow logic.
Instructions in Martini
- Use OAuth 2.0, Basic Authentication, or another confirmed ServiceNow method permitted by the instance.
- Create a least-privilege integration user with the required roles, scopes, ACLs, and application access.
- Store credentials, tokens, and environment-specific URLs in Martini secrets or secure configuration.
- Test table, field, attachment, and scoped-application permissions separately.
Objective
Select the trigger that matches the integration's consistency and volume requirements.
Instructions in Martini
- Use a ServiceNow outbound callback when selected Case events are configured.
- Use a Martini REST API for synchronous inbound requests such as Case creation.
- Use a scheduler and incremental queries for periodic Account, Contact, Consumer, or Case synchronization.
- Use a controlled batch workflow for migration and Import Set processing.
Objective
Acquire complete and current ServiceNow data while accounting for callback payload limitations, pagination, and changing records.
Instructions in Martini
- Validate callback authenticity and required identifiers.
- Retrieve the current resource when an outbound notification contains only a reference or partial payload.
- Use pagination, stable ordering, and an overlap window for incremental Table API reads.
- Track checkpoints, source identifiers, timestamps, and processing status.
Objective
Coordinate API calls, lookups, transformations, business rules, writes, and response handling as a maintainable Martini workflow.
Instructions in Martini
- Separate transport, validation, mapping, business-rule, and persistence stages.
- Resolve Accounts, Contacts, Consumers, Products, and Entitlements by stable identifiers rather than display names.
- Use reusable workflow logic for common ServiceNow authentication, lookup, and error paths.
- Control concurrency and sequence dependent operations such as parent records, references, and attachments.
Objective
Convert ServiceNow table, reference, attachment, or SOAP data into the canonical model required by each target.
Instructions in Martini
- Map actual ServiceNow objects and fields such as Case, Account, Contact, Consumer, Product, and Entitlement.
- Normalize dates, states, priorities, ownership values, identifiers, and XML or JSON structures.
- Apply privacy filtering before sending Case content or attachments to other systems.
- Preserve ServiceNow sys_id and external identifiers for reconciliation and idempotency.
Objective
Ensure that only valid and permitted transactions are written to ServiceNow or downstream applications.
Instructions in Martini
- Validate required Account, Contact, Consumer, Product, and Entitlement references.
- Apply routing, priority, assignment, entitlement, and source-system rules.
- Check idempotency keys before creating Cases or importing rows.
- Prevent callback loops by marking integration-originated updates and defining event conditions carefully.
Common ServiceNow Customer Service Management data objects used in integrations
| Object | Typical Use | Common target systems | Martini handling |
|---|---|---|---|
| Case | Create, update, route, synchronize, and monitor customer service cases, including status, priority, assignment, and customer context. | Salesforce, Microsoft Dynamics 365, Jira, Slack, Microsoft Teams, customer portals | Martini can retrieve or receive Case data, validate account and contact references, map fields to a canonical model, apply routing rules, and create or update the ServiceNow Case through REST APIs. |
| Account | Represent business customers, ownership, account relationships, and account attributes used by CSM processes. | Salesforce, Microsoft Dynamics 365, SAP S/4HANA, data warehouses | Martini can synchronize Accounts using stable external identifiers, resolve references, apply ownership mappings, and perform idempotent upserts with pagination and overlap windows. |
| Contact | Maintain customer contacts associated with Accounts and Cases. | Salesforce, Microsoft Dynamics 365, customer portals, identity platforms | Martini can validate contact-to-account relationships, normalize contact data, prevent duplicates, and map ServiceNow identifiers to downstream systems. |
| Consumer | Represent individual consumers who interact with customer service processes. | Customer portals, Salesforce, Microsoft Dynamics 365, analytics platforms | Martini can synchronize Consumer data through the Table API or configured application APIs, apply privacy filtering, and use external identifiers for matching. |
| Product | Associate Cases and entitlements with products or services. | SAP S/4HANA, Salesforce, product catalogs, customer portals | Martini can retrieve or update product references where permitted, resolve reference fields by stable identifiers, and prevent ambiguous display-name matching. |
| Entitlement | Apply eligibility, service-level, contract, or support entitlement rules to customer-service interactions. | SAP S/4HANA, Salesforce, contract systems, reporting platforms | Martini can map entitlement attributes, apply business rules before Case creation or routing, and preserve the relationship between the Case, Account, Product, and Entitlement. |
Authentication and security considerations
Authentication and authorization
ServiceNow supports OAuth 2.0 and Basic Authentication for many REST integrations. Mutual TLS and certificate-based authentication may be available subject to instance and infrastructure configuration.
- Use dedicated least-privilege integration users rather than personal accounts.
- Apply ServiceNow roles, groups, ACLs, application scopes, table permissions, field permissions, and OAuth scopes deliberately.
- Store credentials, tokens, certificates, and environment-specific endpoints in Martini secrets rather than workflow logic.
- Protect Case content, customer information, and attachments with TLS, access controls, data minimization, and appropriate retention policies.
Operational considerations for ServiceNow Customer Service Management integrations
Reliability and capacity
ServiceNow instance capacity, transaction quotas, rate controls, pagination limits, ACLs, business rules, and customer-specific customizations can affect integration behavior.
- Use pagination, stable ordering, incremental checkpoints, and overlap windows for large reads.
- Control concurrency and use bounded retries with exponential backoff.
- Use stable external identifiers and idempotency checks to prevent duplicate Cases and update loops.
- Resolve reference fields by sys_id or controlled external identifiers rather than display names alone.
- Treat attachments as separate operations and account for size, content type, scanning, retention, and recovery.
- Regression-test mappings after ServiceNow releases, plugin changes, scoped-application changes, and custom schema updates.
- Preserve correlation identifiers and response bodies so ACL, validation, business-rule, and transport failures can be diagnosed.
Why use Martini instead of scripts or point-to-point integrations?
Orchestrate more than an API call
Point-to-point scripts can connect ServiceNow to one target, but they often duplicate authentication, mapping, retry, logging, and reference-resolution logic. Martini provides a maintainable workflow and API layer for coordinating ServiceNow CSM with multiple applications.
- Consume REST, SOAP, callback, file, and other enterprise endpoints through explicit workflows.
- Expose a controlled API that hides ServiceNow credentials and normalizes CSM operations for downstream applications.
- Reuse mappings, validation, business rules, authentication configuration, and error-handling patterns.
- Support real-time callbacks, scheduled synchronization, batch migration, pagination, checkpointing, and controlled retries.
- Keep vendor-specific ServiceNow details isolated while presenting stable canonical models to other systems.
Frequently asked questions
ServiceNow CSM can be integrated through REST APIs such as the Table API, Import Set API, Attachment API, and scripted REST APIs. SOAP services remain available for established integrations, GraphQL is available for selected use cases, and outbound REST messages, business rules, and Flow Designer actions can provide configured callback behavior. APIs, imports, pagination, and controlled event delivery support both transactional and scheduled synchronization.
Yes. Martini can consume ServiceNow REST APIs, consume SOAP services where required, receive configured outbound REST callbacks through a Martini API or webhook-triggered workflow, and orchestrate mappings, validation, synchronization, attachments, and error handling. A dedicated native Martini ServiceNow connector is not confirmed by the supplied documentation.
No. A dedicated ServiceNow connector is not required. Martini can use ServiceNow's confirmed native REST, SOAP, Import Set, Attachment, authentication, and outbound callback mechanisms through API consumption, API exposure, and workflows.
Lonti does not charge an additional per-connector or per-vendor fee to integrate ServiceNow CSM with Martini. The integration is subject to the provisioned capacity of the Martini environment. Separate costs may apply from ServiceNow, infrastructure providers, or other third-party systems depending on subscriptions, usage, and deployment model.
REST APIs are generally preferred for new integrations, with the Table API commonly used for Case and related table operations. The Import Set API suits bulk-oriented ingestion, the Attachment API handles files, and scripted REST APIs can provide a stable purpose-built contract. GraphQL should be used only when the target instance exposes the required CSM schema, while SOAP is mainly relevant to existing enterprise contracts.
Yes, when ServiceNow is configured to send outbound REST messages or Flow Designer or business-rule callbacks to a Martini endpoint. Coverage is configuration-dependent rather than a universal CSM event stream, so the integration must define the Case operations, conditions, duplicate strategy, and retry behavior explicitly.
Use actual ServiceNow objects and fields, stable external identifiers, controlled reference lookups, pagination, checkpoints, and a small overlap window for incremental reads. Martini can map and transform payloads, apply validation and business rules, perform idempotent upserts, and preserve correlation identifiers for reconciliation. Display names alone should not be used as unique keys.
Martini workflows can classify HTTP, ACL, validation, business-rule, and transport failures, preserve response details, and retry transient failures with bounded backoff. Controlled concurrency, pagination, checkpointing, dead-letter or remediation paths, and idempotent writes help protect ServiceNow instance capacity and prevent duplicate Cases or updates.
Related Martini documentation
Workflows
Operations
Connect ServiceNow Customer Service Management with Martini
Use Martini to build secure, maintainable ServiceNow CSM integrations across APIs, callbacks, files, customer data, and enterprise workflows.