Helpdesk

Learn how to use Helpdesk with Composio

Overview

SLUG: HELPDESK

Description

HelpDesk is a ticketing system designed to streamline customer support by organizing and managing inquiries efficiently.

Authentication Details

basic_encoded
stringRequired

Connecting to Helpdesk

Create an auth config

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

1

Select App

Navigate to Helpdesk.

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 Helpdesk Auth Config”. 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 API Key

1from composio import Composio
2
3# Replace these with your actual values
4helpdesk_auth_config_id = "ac_YOUR_HELPDESK_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Helpdesk for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, helpdesk_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Helpdesk 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=["HELPDESK"])
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: List Agents

Description

Tool to list agents. Use when you need to retrieve all agents on the account.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Canned Responses

Description

Tool to list canned responses. Use when you need to retrieve all predefined reply templates for tickets.

Action Parameters

Action Response

data
arrayRequired
error
string
successful
booleanRequired

Tool Name: List Contacts

Description

Tool to list contacts. Use when you need to retrieve contacts with optional filters and pagination.

Action Parameters

company_id
integer
email
string
mobile
string
page
integer
per_page
integer
phone
string
state
string
updated_since
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Custom Fields

Description

Tool to list all custom fields defined in the account. Use when you need to view or manage custom fields. Only callable after authentication.

Action Parameters

Action Response

data
arrayRequired
error
string
successful
booleanRequired

Tool Name: List Email Domains

Description

Tool to list email domains configured for the account. Use when you need to retrieve all configured email domains after authenticating.

Action Parameters

Action Response

data
arrayRequired
error
string
successful
booleanRequired

Tool Name: List Licenses

Description

Tool to list all licenses for an account. Use when you need to retrieve license configurations.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Reply Addresses

Description

Tool to retrieve reply addresses. Use when you need to fetch all configured reply email addresses.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Rules

Description

Tool to retrieve a list of rules configured in the account. Use after authentication when you need an overview of all automation rules.

Action Parameters

Action Response

data
arrayRequired
error
string
successful
booleanRequired

Tool Name: List Subscriptions

Description

Tool to list subscriptions. Use when you need to retrieve current or historical subscription details.

Action Parameters

planCodes[]
array
state
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Teams

Description

Tool to list all teams for the authenticated Helpdesk account. Use after providing valid credentials to retrieve team IDs, names, and settings. Example: "List all teams".

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Tickets

Description

Tool to list tickets with cursor-based pagination. Use when you need to fetch multiple pages of tickets after setting your cursor and sort parameters.

Action Parameters

next.ID
string
next.value
string
order
stringDefaults to desc
pageSize
integerDefaults to 20
prev.ID
string
prev.value
string
sortBy
stringDefaults to createdAt

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Trusted Emails

Description

Tool to retrieve a list of trusted email addresses or domains. Use when managing your spam whitelist after authenticating.

Action Parameters

Action Response

data
arrayRequired
error
string
successful
booleanRequired

Tool Name: List Views

Description

Tool to list agent views. Use when you need to retrieve saved ticket views after authentication.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Webhooks

Description

Tool to list all webhooks configured for events. Use when you need to retrieve webhook configurations for an account.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View Agent

Description

Tool to retrieve details of a specific agent (v1). Use after confirming agent ID.

Action Parameters

agentID
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired