Introduction
This documentation aims to provide all the information you need to work with our API.
In order to access the API for a server (guild), you will either need to have the "API" permission for that server or be an administrator and that server must have premium status.
Authenticating requests
To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".
All authenticated endpoints are marked with a requires authentication badge in the documentation below.
You can retrieve your token by visiting your dashboard and clicking Generate API token.
Channel
Endpoints for interacting with guild channels.
Send a message to a channel.
requires authentication
Sends a message to a specific channel in the guild. Supports text channels, forum channels (creates a thread), and thread channels (via webhook). When a message_id is provided, the existing message is edited instead of sending a new one.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"username\": \"Foo\",
\"avatar_url\": \"https:\\/\\/example.com\\/avatar.png\",
\"thread_name\": \"Support Request\",
\"content\": \"Hello, world!\",
\"flags\": 0
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"username": "Foo",
"avatar_url": "https:\/\/example.com\/avatar.png",
"thread_name": "Support Request",
"content": "Hello, world!",
"flags": 0
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update a message in a channel.
requires authentication
Updates a message in a specific channel in the guild.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"username\": \"Foo\",
\"avatar_url\": \"https:\\/\\/example.com\\/avatar.png\",
\"thread_name\": \"Support Request\",
\"content\": \"Hello, world!\",
\"flags\": 0
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"username": "Foo",
"avatar_url": "https:\/\/example.com\/avatar.png",
"thread_name": "Support Request",
"content": "Hello, world!",
"flags": 0
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Send a custom message to a channel.
requires authentication
Sends a custom message to a specific channel in the guild. When a message_id is provided, the existing message is edited instead.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/message/architecto/1430817781229813802" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"username\": \"Foo\",
\"avatar_url\": \"https:\\/\\/example.com\\/avatar.png\",
\"thread_name\": \"Hello World\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/message/architecto/1430817781229813802"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"username": "Foo",
"avatar_url": "https:\/\/example.com\/avatar.png",
"thread_name": "Hello World"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update a custom message in a channel.
requires authentication
Updates a custom message in a specific channel in the guild.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/message/architecto/1430817781229813802/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"username\": \"Foo\",
\"avatar_url\": \"https:\\/\\/example.com\\/avatar.png\",
\"thread_name\": \"Hello World\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/message/architecto/1430817781229813802/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"username": "Foo",
"avatar_url": "https:\/\/example.com\/avatar.png",
"thread_name": "Hello World"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Guild
Endpoints for managing guilds.
Get guild.
requires authentication
Returns details for a specific guild.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, The guild):
{
"id": "571707999220136938",
"name": "My Server",
"premium": "672951452783139208",
"premium_ends_at": "2024-01-01T00:00:00.000000Z",
"joined_at": "2024-01-01T00:00:00.000000Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
id
string
The guild snowflake ID Example: 571707999220136938
name
string
The guild name Example: My Server
premium
boolean
Whether the guild has premium Example: 672951452783139208
premium_ends_at
string
When premium expires
joined_at
string
When the bot joined the guild
Sync guild channels, roles, emotes and permissions.
requires authentication
Triggers a sync for the specified guild, including channels, roles, permissions, and tickets.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/sync" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/sync"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List ticket groups.
requires authentication
Returns all ticket groups for the specified guild.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678/groups" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/groups"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, List of ticket groups):
{
"data": [
{
"id": "120128186398635144",
"name": "Support",
"count": 5
}
],
"current_page": 1,
"first_page_url": "/?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "/?page=1",
"next_page_url": null,
"path": "/",
"per_page": 30,
"prev_page_url": null,
"to": 1,
"total": 1
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
data
object[]
The list of items for the current page.
id
string
The ticket group snowflake ID Example: 120128186398635144
name
string
The ticket group name Example: Support
count
number
Number of tickets in this group Example: 5
current_page
integer
The current page number.
first_page_url
string
URL to the first page.
from
integer
The index of the first item on this page.
last_page
integer
The last page number.
last_page_url
string
URL to the last page.
next_page_url
string
URL to the next page.
path
string
The base URL for the paginator.
per_page
integer
The number of items per page.
prev_page_url
string
URL to the previous page.
to
integer
The index of the last item on this page.
total
integer
The total number of items.
List ticket panels.
requires authentication
Returns all ticket panels for the specified guild.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678/panels" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/panels"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, List of panels):
{
"data": [
{
"id": "151295371372419517",
"name": "Hello, world!"
}
],
"current_page": 1,
"first_page_url": "/?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "/?page=1",
"next_page_url": null,
"path": "/",
"per_page": 30,
"prev_page_url": null,
"to": 1,
"total": 1
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
data
object[]
The list of items for the current page.
id
string
The ticket panel snowflake ID Example: 151295371372419517
name
string
The ticket panel name Example: Hello, world!
current_page
integer
The current page number.
first_page_url
string
URL to the first page.
from
integer
The index of the first item on this page.
last_page
integer
The last page number.
last_page_url
string
URL to the last page.
next_page_url
string
URL to the next page.
path
string
The base URL for the paginator.
per_page
integer
The number of items per page.
prev_page_url
string
URL to the previous page.
to
integer
The index of the last item on this page.
total
integer
The total number of items.
Get guild ticket stats.
requires authentication
Returns the ticket statistics for the specified guild.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678/stats" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/stats"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (503):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"success": false,
"status": 503,
"message": "Service Unavailable"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List custom messages.
requires authentication
Returns all custom messages for the specified guild.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678/messages" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/messages"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, List of custom messages):
{
"data": [
{
"id": "338909650515657603",
"name": "Hello, world!"
}
],
"current_page": 1,
"first_page_url": "/?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "/?page=1",
"next_page_url": null,
"path": "/",
"per_page": 30,
"prev_page_url": null,
"to": 1,
"total": 1
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
data
object[]
The list of items for the current page.
id
string
The custom message identifier Example: 338909650515657603
name
string
The custom message name Example: Hello, world!
current_page
integer
The current page number.
first_page_url
string
URL to the first page.
from
integer
The index of the first item on this page.
last_page
integer
The last page number.
last_page_url
string
URL to the last page.
next_page_url
string
URL to the next page.
path
string
The base URL for the paginator.
per_page
integer
The number of items per page.
prev_page_url
string
URL to the previous page.
to
integer
The index of the last item on this page.
total
integer
The total number of items.
Create ticket.
requires authentication
Creates a new ticket in the specified guild. Uses the provided ticket group or falls back to the guild's default.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"529288558333275270\",
\"message\": \"Hello, world!\",
\"ticket_group_id\": \"465448238625702123\",
\"anonymous\": false,
\"form\": [
{
\"type\": \"type\",
\"title\": \"Hello, world?\",
\"value\": \"Hello, world!\"
}
]
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "529288558333275270",
"message": "Hello, world!",
"ticket_group_id": "465448238625702123",
"anonymous": false,
"form": [
{
"type": "type",
"title": "Hello, world?",
"value": "Hello, world!"
}
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200, The ticket created):
{
"id": "991009560223081930",
"uuid": "value",
"group_id": "375163139685838977",
"guild_id": "720658030022783112",
"channel_id": "923713927840348980",
"owner_id": "261106055648330815",
"assigned_id": "596762699057745444",
"number": 1,
"status": "open",
"rating": 1,
"priority": 1,
"form": [
{
"type": "type",
"title": "Hello, world?",
"value": "Hello, world!"
}
],
"closed_reason": "value",
"created_at": "2024-01-01T00:00:00.000000Z",
"opened_at": "2024-01-01T00:00:00.000000Z",
"closed_at": "2024-01-01T00:00:00.000000Z",
"deleted_at": "2024-01-01T00:00:00.000000Z",
"last_activity": "value"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
id
string
The ticket snowflake ID Example: 991009560223081930
uuid
string
The ticket UUID (also the encryption key for the ticket assets)
group_id
string
The ticket group snowflake ID Example: 375163139685838977
guild_id
string
The guild snowflake ID Example: 720658030022783112
channel_id
string
The ticket channel snowflake ID Example: 923713927840348980
owner_id
string
The ticket owner snowflake ID Example: 261106055648330815
assigned_id
string
The assigned user snowflake ID Example: 596762699057745444
number
number
The ticket number within the guild Example: 1
status
string
The ticket status Example: open
rating
number
The ticket rating
priority
number
The ticket priority level Example: 1
form
object[]
The form data for the ticket
title
string
The title of the form field Example: Hello, world?
value
string
The value of the form field Example: Hello, world!
closed_reason
string
The reason the ticket was closed
created_at
string
When the ticket was created
opened_at
string
When the ticket was last opened
closed_at
string
When the ticket was closed
deleted_at
string
When the ticket was deleted
last_activity
string
When the ticket last had activity
Ticket
Get ticket.
requires authentication
Returns details for a specific ticket.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, The ticket):
{
"id": "991009560223081930",
"uuid": "value",
"group_id": "375163139685838977",
"guild_id": "720658030022783112",
"channel_id": "923713927840348980",
"owner_id": "261106055648330815",
"assigned_id": "596762699057745444",
"number": 1,
"status": "open",
"rating": 1,
"priority": 1,
"form": [
{
"type": "type",
"title": "Hello, world?",
"value": "Hello, world!"
}
],
"closed_reason": "value",
"created_at": "2024-01-01T00:00:00.000000Z",
"opened_at": "2024-01-01T00:00:00.000000Z",
"closed_at": "2024-01-01T00:00:00.000000Z",
"deleted_at": "2024-01-01T00:00:00.000000Z",
"last_activity": "value"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
id
string
The ticket snowflake ID Example: 991009560223081930
uuid
string
The ticket UUID (also the encryption key for the ticket assets)
group_id
string
The ticket group snowflake ID Example: 375163139685838977
guild_id
string
The guild snowflake ID Example: 720658030022783112
channel_id
string
The ticket channel snowflake ID Example: 923713927840348980
owner_id
string
The ticket owner snowflake ID Example: 261106055648330815
assigned_id
string
The assigned user snowflake ID Example: 596762699057745444
number
number
The ticket number within the guild Example: 1
status
string
The ticket status Example: open
rating
number
The ticket rating
priority
number
The ticket priority level Example: 1
form
object[]
The form data for the ticket
title
string
The title of the form field Example: Hello, world?
value
string
The value of the form field Example: Hello, world!
closed_reason
string
The reason the ticket was closed
created_at
string
When the ticket was created
opened_at
string
When the ticket was last opened
closed_at
string
When the ticket was closed
deleted_at
string
When the ticket was deleted
last_activity
string
When the ticket last had activity
Delete ticket.
requires authentication
Closes the ticket and deletes the associated channel.
Example request:
curl --request DELETE \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Change ticket group.
requires authentication
Moves a ticket to a different ticket group. The target group must use the same mode (thread or channel) as the current group.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/move" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"ticket_group_id\": \"165411793664369316\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/move"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"ticket_group_id": "165411793664369316",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Open ticket.
requires authentication
Reopens a closed ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/open" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/open"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Close ticket.
requires authentication
Closes an open ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/close" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/close"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Assign ticket.
requires authentication
Assigns a user to the ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/assign" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/assign"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Unassign ticket.
requires authentication
Removes the assigned user from the ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/unassign" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/unassign"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Set ticket expiry.
requires authentication
Sets or updates the expiry time for a ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/expire" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"expire_at\": \"2026-03-01T00:00:00Z\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/expire"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"expire_at": "2026-03-01T00:00:00Z",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Set ticket eternal.
requires authentication
Sets or updates the eternal status for a ticket, preventing automatic expiry.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/eternal" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/eternal"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Lock ticket.
requires authentication
Locks a ticket to prevent further messages.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/lock" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/lock"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Unlock ticket.
requires authentication
Unlocks a previously locked ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/unlock" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/unlock"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Rename ticket.
requires authentication
Updates the name of a ticket. If the name is empty, the current name is cleared.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/name" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"hello-world\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/name"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "hello-world",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create ticket notes thread.
requires authentication
Creates a private notes thread attached to the ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/notes" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"hello-world\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/notes"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "hello-world",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add user to ticket notes thread.
requires authentication
Adds a guild member to the ticket's private notes thread.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/notes/add" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/notes/add"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove user from ticket notes thread.
requires authentication
Removes a guild member from the ticket's private notes thread.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/notes/remove" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/notes/remove"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Set ticket priority.
requires authentication
Updates the priority level of a ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/priority" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"priority\": 1,
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/priority"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"priority": 1,
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get ticket transcript.
requires authentication
Returns the full transcript for a ticket, including channel and thread messages with attachments.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/transcript" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/transcript"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, The ticket transcript):
{
"guild": {
"id": "123456789",
"name": "example",
"premium": false,
"roles": [
{
"id": "123456789",
"name": "example",
"color": "value",
"position": 1,
"hoist": false
}
],
"channels": [
{
"id": "123456789",
"name": "example",
"type": 0,
"parent_id": "123456789",
"position": 1
}
]
},
"group": {
"id": "123456789",
"name": "example",
"form_title": "value",
"form_fields": [
[]
],
"schedule": [],
"schedule_timezone": "value",
"priority_levels": [
{
"label": "value",
"color": "value"
}
],
"rating_levels": [
{
"label": "value",
"color": "value"
}
]
},
"ticket": {
"id": "123456789",
"uuid": "value",
"status": "value",
"owner_id": "123456789",
"channel_id": "123456789",
"thread_id": "123456789",
"assigned_id": "123456789",
"number": 1,
"priority": 1,
"rating": 1,
"private": false,
"form": [],
"locked_at": "2024-01-01T00:00:00.000000Z",
"opened_at": "2024-01-01T00:00:00.000000Z",
"closed_reason": "value",
"closed_at": "2024-01-01T00:00:00.000000Z",
"created_at": "2024-01-01T00:00:00.000000Z",
"deleted_at": "2024-01-01T00:00:00.000000Z",
"transcript_saved_at": "2024-01-01T00:00:00.000000Z"
},
"channel_members": [
{
"id": "123456789",
"avatar": "https://example.com/image.png",
"name": "example",
"bot": false,
"joined_at": "2024-01-01T00:00:00.000000Z",
"roles": [],
"rating": 1
}
],
"channel_messages": [],
"channel_message_attachments": [
{
"id": "123456789",
"name": "example",
"hash": "value",
"mime": "value",
"size": 1,
"url": "https://example.com/image.png",
"encrypted": false
}
],
"thread_members": [
{
"id": "123456789",
"avatar": "https://example.com/image.png",
"name": "example",
"bot": false,
"joined_at": "2024-01-01T00:00:00.000000Z",
"roles": [],
"rating": 1
}
],
"thread_messages": [],
"thread_message_attachments": [
{
"id": "123456789",
"name": "example",
"hash": "value",
"mime": "value",
"size": 1,
"url": "https://example.com/image.png",
"encrypted": false
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
guild
object
id
string
name
string
premium
boolean
roles
object[]
id
string
name
string
color
string
position
number
hoist
boolean
channels
object[]
id
string
name
string
type
number
parent_id
string
position
number
group
object
id
string
name
string
form_title
string
form_fields
object[]
schedule
object
mo
array
tu
array
we
array
th
array
fr
array
sa
array
su
array
schedule_timezone
string
priority_levels
object[]
label
string
Must not be greater than 80 characters.
description
string
Must not be greater than 100 characters.
emoji
string
Must not be greater than 100 characters.
default
boolean
color
string
_uid
string
rating_levels
object[]
label
string
Must not be greater than 80 characters.
description
string
Must not be greater than 100 characters.
emoji
string
Must not be greater than 100 characters.
default
boolean
color
string
_uid
string
ticket
object
id
string
uuid
string
status
string
owner_id
string
channel_id
string
thread_id
string
assigned_id
string
number
number
priority
number
rating
number
private
boolean
form
array
locked_at
string
opened_at
string
closed_reason
string
closed_at
string
created_at
string
deleted_at
string
transcript_saved_at
string
channel_members
object[]
id
string
avatar
string
name
string
bot
boolean
joined_at
string
roles
array
rating
number
channel_messages
array
channel_message_attachments
object[]
id
string
name
string
hash
string
mime
string
size
number
url
string
encrypted
boolean
thread_members
object[]
id
string
avatar
string
name
string
bot
boolean
joined_at
string
roles
array
rating
number
thread_messages
array
thread_message_attachments
object[]
id
string
name
string
hash
string
mime
string
size
number
url
string
encrypted
boolean
Save ticket transcript.
requires authentication
Saves the current state of a ticket's transcript and returns the updated transcript data.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/save" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/save"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Send ticket transcript to a user.
requires authentication
Queues the ticket transcript to be sent to the specified user via DM.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/send/1001168331996409856" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/send/1001168331996409856"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Change ticket owner.
requires authentication
Transfers ownership of a ticket to another user.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/owner" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/owner"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add user to ticket.
requires authentication
Adds a guild member to the ticket, granting them access to the ticket channel.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/add" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/add"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove user from ticket.
requires authentication
Removes a guild member from the ticket, revoking their access to the ticket channel.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/remove" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/ticket/1419244951635763635/remove"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Send ticket transcript to a user.
requires authentication
Queues the ticket transcript to be sent to the specified user via DM.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/send/1001168331996409856" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/send/1001168331996409856"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Ticket (from channel)
Get ticket.
requires authentication
Returns details for a specific ticket.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, The ticket):
{
"id": "991009560223081930",
"uuid": "value",
"group_id": "375163139685838977",
"guild_id": "720658030022783112",
"channel_id": "923713927840348980",
"owner_id": "261106055648330815",
"assigned_id": "596762699057745444",
"number": 1,
"status": "open",
"rating": 1,
"priority": 1,
"form": [
{
"type": "type",
"title": "Hello, world?",
"value": "Hello, world!"
}
],
"closed_reason": "value",
"created_at": "2024-01-01T00:00:00.000000Z",
"opened_at": "2024-01-01T00:00:00.000000Z",
"closed_at": "2024-01-01T00:00:00.000000Z",
"deleted_at": "2024-01-01T00:00:00.000000Z",
"last_activity": "value"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
id
string
The ticket snowflake ID Example: 991009560223081930
uuid
string
The ticket UUID (also the encryption key for the ticket assets)
group_id
string
The ticket group snowflake ID Example: 375163139685838977
guild_id
string
The guild snowflake ID Example: 720658030022783112
channel_id
string
The ticket channel snowflake ID Example: 923713927840348980
owner_id
string
The ticket owner snowflake ID Example: 261106055648330815
assigned_id
string
The assigned user snowflake ID Example: 596762699057745444
number
number
The ticket number within the guild Example: 1
status
string
The ticket status Example: open
rating
number
The ticket rating
priority
number
The ticket priority level Example: 1
form
object[]
The form data for the ticket
title
string
The title of the form field Example: Hello, world?
value
string
The value of the form field Example: Hello, world!
closed_reason
string
The reason the ticket was closed
created_at
string
When the ticket was created
opened_at
string
When the ticket was last opened
closed_at
string
When the ticket was closed
deleted_at
string
When the ticket was deleted
last_activity
string
When the ticket last had activity
Delete ticket.
requires authentication
Closes the ticket and deletes the associated channel.
Example request:
curl --request DELETE \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Change ticket group.
requires authentication
Moves a ticket to a different ticket group. The target group must use the same mode (thread or channel) as the current group.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/move" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"ticket_group_id\": \"165411793664369316\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/move"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"ticket_group_id": "165411793664369316",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Open ticket.
requires authentication
Reopens a closed ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/open" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/open"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Close ticket.
requires authentication
Closes an open ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/close" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/close"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Assign ticket.
requires authentication
Assigns a user to the ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/assign" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/assign"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Unassign ticket.
requires authentication
Removes the assigned user from the ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/unassign" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/unassign"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Set ticket expiry.
requires authentication
Sets or updates the expiry time for a ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/expire" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"expire_at\": \"2026-03-01T00:00:00Z\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/expire"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"expire_at": "2026-03-01T00:00:00Z",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Set ticket eternal.
requires authentication
Sets or updates the eternal status for a ticket, preventing automatic expiry.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/eternal" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/eternal"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Lock ticket.
requires authentication
Locks a ticket to prevent further messages.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/lock" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/lock"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Unlock ticket.
requires authentication
Unlocks a previously locked ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/unlock" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/unlock"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Rename ticket.
requires authentication
Updates the name of a ticket. If the name is empty, the current name is cleared.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/name" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"hello-world\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/name"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "hello-world",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create ticket notes thread.
requires authentication
Creates a private notes thread attached to the ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/notes" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"hello-world\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/notes"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "hello-world",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add user to ticket notes thread.
requires authentication
Adds a guild member to the ticket's private notes thread.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/notes/add" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/notes/add"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove user from ticket notes thread.
requires authentication
Removes a guild member from the ticket's private notes thread.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/notes/remove" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/notes/remove"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Set ticket priority.
requires authentication
Updates the priority level of a ticket.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/priority" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"priority\": 1,
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/priority"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"priority": 1,
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get ticket transcript.
requires authentication
Returns the full transcript for a ticket, including channel and thread messages with attachments.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/transcript" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/transcript"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, The ticket transcript):
{
"guild": {
"id": "123456789",
"name": "example",
"premium": false,
"roles": [
{
"id": "123456789",
"name": "example",
"color": "value",
"position": 1,
"hoist": false
}
],
"channels": [
{
"id": "123456789",
"name": "example",
"type": 0,
"parent_id": "123456789",
"position": 1
}
]
},
"group": {
"id": "123456789",
"name": "example",
"form_title": "value",
"form_fields": [
[]
],
"schedule": [],
"schedule_timezone": "value",
"priority_levels": [
{
"label": "value",
"color": "value"
}
],
"rating_levels": [
{
"label": "value",
"color": "value"
}
]
},
"ticket": {
"id": "123456789",
"uuid": "value",
"status": "value",
"owner_id": "123456789",
"channel_id": "123456789",
"thread_id": "123456789",
"assigned_id": "123456789",
"number": 1,
"priority": 1,
"rating": 1,
"private": false,
"form": [],
"locked_at": "2024-01-01T00:00:00.000000Z",
"opened_at": "2024-01-01T00:00:00.000000Z",
"closed_reason": "value",
"closed_at": "2024-01-01T00:00:00.000000Z",
"created_at": "2024-01-01T00:00:00.000000Z",
"deleted_at": "2024-01-01T00:00:00.000000Z",
"transcript_saved_at": "2024-01-01T00:00:00.000000Z"
},
"channel_members": [
{
"id": "123456789",
"avatar": "https://example.com/image.png",
"name": "example",
"bot": false,
"joined_at": "2024-01-01T00:00:00.000000Z",
"roles": [],
"rating": 1
}
],
"channel_messages": [],
"channel_message_attachments": [
{
"id": "123456789",
"name": "example",
"hash": "value",
"mime": "value",
"size": 1,
"url": "https://example.com/image.png",
"encrypted": false
}
],
"thread_members": [
{
"id": "123456789",
"avatar": "https://example.com/image.png",
"name": "example",
"bot": false,
"joined_at": "2024-01-01T00:00:00.000000Z",
"roles": [],
"rating": 1
}
],
"thread_messages": [],
"thread_message_attachments": [
{
"id": "123456789",
"name": "example",
"hash": "value",
"mime": "value",
"size": 1,
"url": "https://example.com/image.png",
"encrypted": false
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
guild
object
id
string
name
string
premium
boolean
roles
object[]
id
string
name
string
color
string
position
number
hoist
boolean
channels
object[]
id
string
name
string
type
number
parent_id
string
position
number
group
object
id
string
name
string
form_title
string
form_fields
object[]
schedule
object
mo
array
tu
array
we
array
th
array
fr
array
sa
array
su
array
schedule_timezone
string
priority_levels
object[]
label
string
Must not be greater than 80 characters.
description
string
Must not be greater than 100 characters.
emoji
string
Must not be greater than 100 characters.
default
boolean
color
string
_uid
string
rating_levels
object[]
label
string
Must not be greater than 80 characters.
description
string
Must not be greater than 100 characters.
emoji
string
Must not be greater than 100 characters.
default
boolean
color
string
_uid
string
ticket
object
id
string
uuid
string
status
string
owner_id
string
channel_id
string
thread_id
string
assigned_id
string
number
number
priority
number
rating
number
private
boolean
form
array
locked_at
string
opened_at
string
closed_reason
string
closed_at
string
created_at
string
deleted_at
string
transcript_saved_at
string
channel_members
object[]
id
string
avatar
string
name
string
bot
boolean
joined_at
string
roles
array
rating
number
channel_messages
array
channel_message_attachments
object[]
id
string
name
string
hash
string
mime
string
size
number
url
string
encrypted
boolean
thread_members
object[]
id
string
avatar
string
name
string
bot
boolean
joined_at
string
roles
array
rating
number
thread_messages
array
thread_message_attachments
object[]
id
string
name
string
hash
string
mime
string
size
number
url
string
encrypted
boolean
Save ticket transcript.
requires authentication
Saves the current state of a ticket's transcript and returns the updated transcript data.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/save" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/save"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Change ticket owner.
requires authentication
Transfers ownership of a ticket to another user.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/owner" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/owner"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add user to ticket.
requires authentication
Adds a guild member to the ticket, granting them access to the ticket channel.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/add" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/add"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove user from ticket.
requires authentication
Removes a guild member from the ticket, revoking their access to the ticket channel.
Example request:
curl --request POST \
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/remove" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"897219148574363269\",
\"reason\": \"Hello, world!\"
}"
const url = new URL(
"https://ticketeer.bot/api/v1/guild/1241080059528347678/channel/1430817781229813802/ticket/remove"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": "897219148574363269",
"reason": "Hello, world!"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
User
Endpoints for the authenticated user.
Get current user.
requires authentication
Returns the currently authenticated user's information.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/user/me" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/user/me"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, The authenticated user):
{
"id": "337842567937046150",
"name": "John",
"username": "john",
"discriminator": "0001",
"avatar": "https://cdn.discordapp.com/avatars/123/abc.png",
"locale": "en",
"bot": false,
"verified": "934674431964242580",
"joined_at": "2024-01-01T00:00:00.000000Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
id
string
The user snowflake ID Example: 337842567937046150
name
string
The user display name Example: John
username
string
The username Example: john
discriminator
string
The user discriminator Example: 0001
avatar
string
The user avatar URL Example: https://cdn.discordapp.com/avatars/123/abc.png
locale
string
The user locale Example: en
bot
boolean
Whether the user is a bot Example: false
verified
boolean
Whether the user is verified Example: 934674431964242580
joined_at
string
When the user joined
List guilds.
requires authentication
Returns all guilds accessible by the authenticated user. Filters out suspended and deleted guilds.
Example request:
curl --request GET \
--get "https://ticketeer.bot/api/v1/user/me/guilds" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://ticketeer.bot/api/v1/user/me/guilds"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200, List of guilds):
[
{
"id": "571707999220136938",
"name": "My Server",
"premium": "672951452783139208",
"premium_ends_at": "2024-01-01T00:00:00.000000Z",
"joined_at": "2024-01-01T00:00:00.000000Z"
}
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Response
Response Fields
id
string
The guild snowflake ID Example: 571707999220136938
name
string
The guild name Example: My Server
premium
boolean
Whether the guild has premium Example: 672951452783139208
premium_ends_at
string
When premium expires
joined_at
string
When the bot joined the guild