Servicenow

Learn how to use Servicenow with Composio

Overview

SLUG: SERVICENOW

Description

Servicenow provides IT Service Management Transform service management to boost productivity and maximize ROI

Authentication Details

username
stringRequired
password
stringRequired
subdomain
stringRequired

Connecting to Servicenow

Create an auth config

Use the dashboard to create an auth config for the Servicenow toolkit. This allows you to connect multiple Servicenow accounts to Composio for agents to use.

1

Select App

Navigate to the Servicenow toolkit page and click “Setup Integration”.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Integration”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using Basic Auth

1from composio import Composio
2from composio.types import auth_scheme
3
4# Replace these with your actual values
5servicenow_auth_config_id = "ac_YOUR_SERVICENOW_CONFIG_ID"
6user_id = "user@example.com"
7username = "your_servicenow_username"
8password = "your_servicenow_password"
9
10composio = Composio()
11
12# Create a new connected account for Servicenow using Basic Auth
13connection_request = composio.connected_accounts.initiate(
14 user_id=user_id,
15 auth_config_id=servicenow_auth_config_id,
16 config=auth_scheme.basic_auth(
17 username=username,
18 password=password
19 )
20)
21
22# Basic authentication is immediate - no redirect needed
23print(f"Successfully connected Servicenow for user {user_id}")
24
25# You can verify the connection using:
26# connected_account = composio.connected_accounts.get(user_id=user_id, app_id="SERVICENOW")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Servicenow toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["SERVICENOW"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Attach file to record

Description

Attaches a file to a specified record in a servicenow table. this endpoint allows you to attach a file with the provided details to the specified record.

Action Parameters

creation_time
string
encryption_context
string
file_name
stringRequired
file_to_upload
objectRequired
record_sys_id
stringRequired
table_name
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create a record

Description

Creates a new record in a specified servicenow table. this endpoint allows you to create a new record with the provided data in the specified table.

Action Parameters

sysparm_display_value
stringDefaults to false
sysparm_exclude_reference_link
boolean
sysparm_fields
string
sysparm_input_display_value
boolean
sysparm_view
stringDefaults to both
table_name
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete a record

Description

Deletes a record from a specified servicenow table. this endpoint allows you to delete a record with the provided id from the specified table.

Action Parameters

sys_id
stringRequired
sysparm_query_no_domain
boolean
table_name
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Find file

Description

Finds a file in a specified servicenow table. this endpoint allows you to find a file with the provided name in the specified table.

Action Parameters

sysparm_limit
stringDefaults to 1000
sysparm_offset
stringDefaults to 0
sysparm_query
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get records

Description

Retrieves a record from a specified servicenow table. this endpoint allows you to retrieve a record with the provided id from the specified table.

Action Parameters

name_value_pairs
string
sysparm_display_value
stringDefaults to false
sysparm_exclude_reference_link
boolean
sysparm_fields
string
sysparm_limit
integerDefaults to 20
sysparm_no_count
boolean
sysparm_offset
integer
sysparm_query
string
sysparm_query_category
string
sysparm_query_no_domain
boolean
sysparm_suppress_pagination_header
boolean
sysparm_view
stringDefaults to both
table_name
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired