Bugherd

Learn how to use Bugherd with Composio

Overview

SLUG: BUGHERD

Description

BugHerd is a visual feedback and bug tracking tool for websites, allowing clients and teams to report issues directly on live sites.

Authentication Details

bearer_token
stringRequired

Connecting to Bugherd

Create an auth config

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

1

Select App

Navigate to the Bugherd 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 API Key

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

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Bugherd 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=["BUGHERD"])
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: Add Guest to Project

Description

Tool to add a guest (client) to a project. use when you want to add an existing client by id or invite a new client by email.

Action Parameters

email
project_id
integerRequired
user_id
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Add Member to Project

Description

Tool to add a member to a project in bugherd. use when you need to add an existing user to a specific project.

Action Parameters

project_id
integerRequired
user_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Attachment

Description

Tool to add a new attachment to a task using an existing url. use when you have project and task ids and the external file url ready.

Action Parameters

file_name
stringRequired
project_id
integerRequired
task_id
integerRequired
url
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Comment

Description

Tool to add a new comment to a task. use when you need to record discussion or feedback on an existing task.

Action Parameters

email
project_id
integerRequired
task_id
integerRequired
text
stringRequired
user_id
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Project

Description

Tool to create a new project. use when you need to initialize a project after gathering its name and url. example: "create a new project named 'my website' with url 'http://www.example.com'."

Action Parameters

project
objectRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Task

Description

Tool to add a new task in a project. use when you have the project id and full task details ready.

Action Parameters

assigned_to_email
assigned_to_id
integer
description
stringRequired
external_id
string
priority
string
project_id
integerRequired
requester_email
requester_id
integer
status
string
tag_names
array

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Webhook

Description

Tool to create a new webhook for real-time event notifications. use when you need to configure a callback endpoint for task or comment events. example: "create a webhook for 'task create' events to be sent to 'https://example.com/webhook'."

Action Parameters

event
stringRequired
project_id
integer
target_url
Required

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Project

Description

Tool to delete a project. use when you need to permanently remove a project and its associated data. this action cannot be undone, so confirm the project id before calling.

Action Parameters

project_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Active Projects

Description

Tool to list all active projects in your bugherd account. use when you need to retrieve the active projects list (e.g., for syncing or reporting).

Action Parameters

page
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Attachments

Description

Tool to list all attachments for a task. use when you need to retrieve file attachments after fetching task details.

Action Parameters

page
integerDefaults to 1
project_id
integerRequired
task_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Projects

Description

Tool to list all projects in your account. use after setting up valid api credentials.

Action Parameters

page
integerDefaults to 1

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Users

Description

Tool to list all users in your account. use after authenticating to fetch the current user roster. supports pagination via the `page` parameter.

Action Parameters

page
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Webhooks

Description

Tool to list all installed webhooks. use when you need to audit or verify existing webhooks after setup.

Action Parameters

page
integerDefaults to 1

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Show Attachment

Description

Tool to retrieve details of a specific attachment. use after you have project id, task id, and attachment id to get filename, url, and timestamps.

Action Parameters

attachment_id
integerRequired
project_id
integerRequired
task_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Show Project

Description

Tool to show details for a specific project. use when you have the project id and need to retrieve its metadata.

Action Parameters

project_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Show User Projects

Description

Tool to list all projects a specific user has access to. use after obtaining the user's id.

Action Parameters

user_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Show User Tasks

Description

Tool to list tasks created or assigned to a specific user. use when you have a user's id and need their tasks. example: list tasks for user 123.

Action Parameters

page
integerDefaults to 1
user_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Project

Description

Tool to update settings for an existing project. use when you have the project id and need to change its configuration.

Action Parameters

project
objectRequired
project_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Task

Description

Tool to update a task in a project. use after confirming the project and task ids.

Action Parameters

project_id
integerRequired
task
objectRequired
task_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Column

Description

Tool to create a new column in a project. use when you need to add a custom workflow column after identifying the project id.

Action Parameters

name
stringRequired
position
integer
project_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Columns

Description

Tool to list all columns for a project. use when you need the full set of default and custom columns for a project.

Action Parameters

page
integerDefaults to 1
project_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Show Column

Description

Tool to show details of a specific column. use when you need metadata for a particular column within a project.

Action Parameters

column_id
integerRequired
project_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Show Organization

Description

Tool to retrieve your bugherd organization details. use after authenticating to fetch account metadata.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Column

Description

Tool to update a column in a project. use when you have the project and column ids and need to rename a column. use after confirming the correct ids.

Action Parameters

column
objectRequired
column_id
integerRequired
project_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Upload Attachment

Description

Tool to upload a new attachment and add it to a specific task. use when you have binary file content ready and need to attach it to a bugherd task.

Action Parameters

file_content
stringRequired
file_name
stringRequired
project_id
integerRequired
task_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired