Skip to main content

ServiceNow Integration

FieldValue
Document IDASCEND-ENT-005
Version1.0.0
Last UpdatedDecember 19, 2025
AuthorAscend Engineering Team
PublisherOW-KAI Technologies Inc.
ClassificationEnterprise Client Documentation
ComplianceSOC 2 CC6.1/CC6.2, PCI-DSS 7.1/8.3, HIPAA 164.312, NIST 800-53 AC-2/SI-4

Reading Time: 8 minutes | Skill Level: Advanced

Overview

ASCEND integrates with ServiceNow for enterprise IT Service Management (ITSM). Automatically create incidents for security alerts, manage change requests for policy updates, and maintain full audit compliance.

Integration Architecture

+---------------------------------------------------------------------------------+
| SERVICENOW INTEGRATION |
+---------------------------------------------------------------------------------+
| |
| ASCEND EVENTS SERVICENOW |
| +------------------------+ +--------------------------------------+ |
| | | | | |
| | Security Alert --------|------->| Incident (INC) | |
| | | | - Priority based on risk score | |
| | Kill-Switch Event -----|------->| - Auto-assignment | |
| | | | - SLA tracking | |
| | Policy Change ---------|------->| | |
| | | +--------------------------------------+ |
| | Agent Registration ----| | | |
| | |------->| Change Request (CHG) | |
| | High-Risk Action ------| | - CAB approval workflow | |
| | | | - Risk assessment | |
| +------------------------+ | - Implementation plan | |
| +--------------------------------------+ |
| |
| BIDIRECTIONAL SYNC |
| +------------------------------------------------------------------------+ |
| | - Incident status updates sync back to ASCEND | |
| | - Change approval triggers action execution | |
| | - CMDB integration for agent inventory | |
| +------------------------------------------------------------------------+ |
| |
+---------------------------------------------------------------------------------+

Configuration

Connect ServiceNow Instance

curl -X POST "https://pilot.owkai.app/api/servicenow/configure" \
-H "Authorization: Bearer <admin_jwt>" \
-H "Content-Type: application/json" \
-d '{
"instance_url": "https://your-company.service-now.com",
"username": "ascend_integration",
"password": "<service_account_password>",
"client_id": "<oauth_client_id>",
"client_secret": "<oauth_client_secret>",
"auto_create_incidents": true,
"change_management_enabled": true,
"cmdb_sync": true
}'

Verify Connection

curl "https://pilot.owkai.app/api/servicenow/test" \
-H "Authorization: Bearer <admin_jwt>"

Response:

{
"status": "connected",
"instance": "your-company.service-now.com",
"api_version": "tokyo",
"capabilities": [
"incident_management",
"change_management",
"cmdb",
"knowledge_base"
],
"test_timestamp": "2025-12-15T10:30:00Z"
}

Incident Management

Automatic Incident Creation

# Incident creation rules
INCIDENT_TRIGGERS = {
"security.alert": {
"priority": "P2",
"category": "Security",
"subcategory": "AI Governance",
"assignment_group": "Security Operations"
},
"agent.killed": {
"priority": "P1",
"category": "Security",
"subcategory": "Emergency Response",
"assignment_group": "Security Incident Response"
},
"action.denied_critical": {
"priority": "P3",
"category": "Application",
"subcategory": "AI Agent",
"assignment_group": "AI Operations"
}
}

Create Incident Manually

curl -X POST "https://pilot.owkai.app/api/servicenow/incidents" \
-H "Authorization: Bearer <admin_jwt>" \
-H "Content-Type: application/json" \
-d '{
"short_description": "High-risk AI action requires investigation",
"description": "Agent trading-bot-001 submitted action with risk score 85",
"category": "Security",
"subcategory": "AI Governance",
"priority": "2",
"assignment_group": "Security Operations",
"related_action_id": "act_abc123",
"caller_id": "system@company.com"
}'

Response:

{
"incident_number": "INC0012345",
"sys_id": "a1b2c3d4e5f6",
"state": "New",
"priority": "2 - High",
"assignment_group": "Security Operations",
"created_at": "2025-12-15T10:30:00Z",
"ascend_correlation_id": "act_abc123"
}

Priority Mapping

Risk ScoreServiceNow PriorityResponse SLA
80-100P1 - Critical15 minutes
60-79P2 - High1 hour
40-59P3 - Moderate4 hours
20-39P4 - Low24 hours
0-19P5 - Planning72 hours

Change Management

Change Request for Policy Updates

curl -X POST "https://pilot.owkai.app/api/servicenow/changes" \
-H "Authorization: Bearer <admin_jwt>" \
-H "Content-Type: application/json" \
-d '{
"short_description": "Update AI governance policy - Trading limits",
"description": "Increase transaction limit from $100K to $500K for verified agents",
"type": "Standard",
"category": "Application",
"risk": "Moderate",
"impact": "Medium",
"requested_by": "admin@company.com",
"implementation_plan": "1. Update policy in ASCEND\\n2. Test with sandbox agents\\n3. Deploy to production",
"backout_plan": "Revert to previous policy version",
"related_policy_id": "pol_xyz789"
}'

Response:

{
"change_number": "CHG0006789",
"sys_id": "x1y2z3",
"state": "New",
"type": "Standard",
"risk": "Moderate",
"cab_required": true,
"cab_date": "2025-12-20T14:00:00Z",
"ascend_policy_id": "pol_xyz789"
}

Change Types

TypeDescriptionCAB Required
StandardPre-approved changesNo
NormalRequires CAB approvalYes
EmergencyUrgent changesPost-approval

CMDB Integration

Sync Agents to CMDB

curl -X POST "https://pilot.owkai.app/api/servicenow/cmdb/sync" \
-H "Authorization: Bearer <admin_jwt>"

Response:

{
"status": "sync_complete",
"agents_synced": 25,
"configuration_items_created": 5,
"configuration_items_updated": 20,
"sync_timestamp": "2025-12-15T10:30:00Z"
}

Agent CI Record

{
"ci_class": "cmdb_ci_cloud_service",
"name": "ASCEND Agent: trading-bot-001",
"operational_status": "Operational",
"attributes": {
"agent_id": "trading-bot-001",
"agent_type": "trading",
"risk_profile": "high",
"trust_level": "trusted",
"last_active": "2025-12-15T10:25:00Z",
"total_actions": 15234,
"approval_rate": 98.5
},
"relationships": [
{
"type": "Runs on",
"ci": "Production Kubernetes Cluster"
},
{
"type": "Used by",
"ci": "Trading Platform"
}
]
}

Event Mapping

ASCEND to ServiceNow Events

ASCEND EventServiceNow RecordAuto-Create
security.alertIncidentYes
agent.killedIncident (P1)Yes
action.denied_criticalIncidentOptional
policy.createdChange RequestOptional
policy.updatedChange RequestYes
agent.registeredCI RecordYes

Bidirectional Sync

Webhook for Status Updates

# Configure ServiceNow to call back ASCEND
curl -X POST "https://pilot.owkai.app/api/servicenow/webhooks" \
-H "Authorization: Bearer <admin_jwt>" \
-H "Content-Type: application/json" \
-d '{
"webhook_url": "https://your-company.service-now.com/api/now/table/sys_script",
"events": [
"incident.resolved",
"incident.closed",
"change.approved",
"change.rejected"
],
"secret": "<webhook_secret>"
}'

Status Sync Flow

# When ServiceNow incident is resolved
{
"event": "incident.resolved",
"incident_number": "INC0012345",
"resolution_code": "Solved",
"resolution_notes": "Agent policy updated to prevent recurrence",
"resolved_by": "john.smith@company.com",
"resolved_at": "2025-12-15T14:30:00Z"
}

# ASCEND updates related action
{
"action_id": "act_abc123",
"servicenow_status": "resolved",
"incident_number": "INC0012345",
"resolution_synced_at": "2025-12-15T14:31:00Z"
}

Dashboard Integration

ServiceNow Dashboard Widget

{
"widget_type": "data_table",
"title": "ASCEND AI Governance Summary",
"data_source": "ascend_api",
"refresh_interval": 60,
"columns": [
{"field": "agent_id", "label": "Agent"},
{"field": "pending_approvals", "label": "Pending"},
{"field": "risk_score_avg", "label": "Avg Risk"},
{"field": "last_action", "label": "Last Action"}
]
}

Best Practices

1. Service Account Security

# Use dedicated service account
{
"username": "ascend_integration",
"roles": [
"itil",
"incident_manager",
"change_manager",
"cmdb_editor"
],
"ip_restrictions": ["10.0.0.0/8"]
}

2. Assignment Rules

# Configure intelligent assignment
ASSIGNMENT_RULES = {
"security_events": "Security Operations",
"agent_issues": "AI Operations",
"policy_changes": "Change Advisory Board",
"compliance_alerts": "Compliance Team"
}

3. SLA Configuration

# Align SLAs with risk levels
SLA_CONFIG = {
"P1": {"response": "15m", "resolution": "4h"},
"P2": {"response": "1h", "resolution": "24h"},
"P3": {"response": "4h", "resolution": "72h"}
}

Troubleshooting

Common Issues

IssueCauseSolution
Authentication failedCredentials expiredRefresh OAuth token
Incident not createdMissing required fieldsCheck field mapping
Sync timeoutLarge datasetUse incremental sync
Duplicate incidentsMissing correlationAdd external reference

Debug Logging

# Enable detailed logging
curl -X PUT "https://pilot.owkai.app/api/servicenow/debug" \
-H "Authorization: Bearer <admin_jwt>" \
-d '{"enabled": true, "level": "verbose"}'

Next Steps


Document Version: 1.0.0 | Last Updated: December 2025