Onedesk

Learn how to use Onedesk with Composio

Overview

SLUG: ONEDESK

Description

OneDesk is an all-in-one platform combining help desk and project management functionalities, enabling teams to manage customer support and project tasks seamlessly.

Authentication Details

generic_api_key
stringRequired

Connecting to Onedesk

Create an auth config

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

1

Select App

Navigate to Onedesk.

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 Onedesk 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
4onedesk_auth_config_id = "ac_YOUR_ONEDESK_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 Onedesk 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, onedesk_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 Onedesk 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=["ONEDESK"])
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: Create Worklog Entry

Description

Tool to create a worklog entry. use after confirming object type, object id, and user id. logs time spent on objects such as tickets, tasks, or projects.

Action Parameters

billable
boolean
date
stringRequired
duration
numberRequired
notes
string
object_id
stringRequired
object_type
stringRequired
user_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Attachment

Description

Tool to delete a specific attachment. use when you need to remove an existing attachment by its id after confirming its details.

Action Parameters

attachment_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Comment

Description

Tool to delete a specific comment by its id. use when you have confirmed the comment should be removed.

Action Parameters

comment_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Customer

Description

Tool to delete a customer. use after confirming the customer id before removal. example: {'customer id': '12345'}

Action Parameters

customer_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Message

Description

Tool to delete a specific message. use when you need to remove an existing message by its id after confirming its details.

Action Parameters

message_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Project

Description

Tool to delete a project by its id. use when you need to remove a project from onedesk after confirming it's no longer needed. example: {'project id': 123}

Action Parameters

project_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Requirement

Description

Tool to delete a requirement. use when you need to remove a requirement by its id after confirmation. example: {'requirement id': '12345'}

Action Parameters

requirement_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Task

Description

Tool to delete a specific task. use when you need to remove an existing task by its id after confirming its details.

Action Parameters

task_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Ticket

Description

Tool to delete a ticket by its id. use when you need to remove a ticket from onedesk after confirming it's no longer needed. example: {'ticket id': 123}

Action Parameters

ticket_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Timesheet

Description

Tool to delete a timesheet by its id. use when you need to remove a specific timesheet after confirming it's no longer needed. example: {'timesheet id': 123}

Action Parameters

timesheet_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete User

Description

Tool to delete a user by its id. use after confirming the user should be removed. example: {'user id': '12345'}

Action Parameters

user_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Worklog

Description

Tool to delete a worklog by its id. use when you need to remove a worklog entry after confirming it's no longer needed. example: {'worklog id': 123}

Action Parameters

worklog_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Attachments

Description

Tool to retrieve a list of attachments. use when you need to fetch all attachments from onedesk.

Action Parameters

limit
integer
object_id
integer
object_type
string
offset
integer
search
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Comment Details

Description

Tool to retrieve detailed information for a comment by its id. use when you need full comment data after obtaining the comment id. tries multiple endpoints and header/param permutations for compatibility with various onedesk deployments. if no endpoint succeeds, it returns a minimal response containing the requested comment id to avoid hard failure while still executing real api calls.

Action Parameters

comment_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Comments

Description

Tool to retrieve all comments. use when you need to list or process existing comments.

Action Parameters

author_id
integer
limit
integer
offset
integer
search
string
ticket_id
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Feedback Items

Description

Tool to retrieve all feedback items. use when you need to list feedback entries for review.

Action Parameters

page
integer
per_page
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Feedback Details

Description

Tool to retrieve details of a specific feedback item. use when you have the feedback id and need its full details.

Action Parameters

feedback_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Issue Details

Description

Tool to retrieve details of a specific issue. use when you have the issue id and need its full details.

Action Parameters

issue_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Issues

Description

Tool to retrieve a list of issues. use when you need to fetch all issues from onedesk.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Messages

Description

Tool to retrieve a list of messages. use when you need to list all messages from onedesk.

Action Parameters

contact_id
integer
direction
string
limit
integer
offset
integer
search
string
ticket_id
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Requirement Details

Description

Tool to retrieve full details of a specific requirement. use when you have the requirement id and need its complete data.

Action Parameters

requirement_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Requirements

Description

Tool to retrieve a list of requirements. use when you need to fetch all requirements from onedesk.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Task Details

Description

Tool to retrieve details of a specific task in onedesk. use when you have a task id and need full task information.

Action Parameters

task_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Tickets

Description

Tool to retrieve a list of tickets. use when you need to fetch all tickets from onedesk.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Timesheet Details

Description

Tool to retrieve details of a specific timesheet entry. use when you have the `timesheet id` and need full metadata (user, project, hours, dates). tries multiple endpoint/header variants and gracefully falls back in restricted environments.

Action Parameters

timesheet_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Timesheets

Description

Tool to retrieve a list of timesheet entries. tries multiple endpoint variants and header permutations to improve compatibility across onedesk environments.

Action Parameters

billable
boolean
from_date
string
limit
integer
notes_contains
string
object_id
string
object_type
string
offset
integer
to_date
string
user_id
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Worklog Details

Description

Tool to retrieve details of a specific worklog. use when you have a worklog id and need full worklog information. tries multiple endpoint/header variants and gracefully falls back in restricted environments.

Action Parameters

worklog_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Worklogs

Description

Tool to retrieve all worklogs. use when you need to list or process existing worklog entries.

Action Parameters

from_date
string
limit
integer
notes_contains
string
object_id
string
object_type
string
offset
integer
to_date
string
user_id
string

Action Response

data
objectRequired
error
string
successful
booleanRequired