Documentation
Learn TicketsX faster
Setup guides, the full command reference, Premium features, and the REST API in one place.
Update a Panel
PATCH
/<guild_id>/api/panels/<panel_id>Change a panel’s appearance: name, embed message, colour, and button styling. The live panel message in Discord is refreshed automatically. Requires the `manage_panels` permission (off by default).
Request Body (all fields optional; send only what you want to change)
| Name | Type | Required | Description |
|---|---|---|---|
| panel_title | string|null | optional | Embed title (max 256 chars). Send null to clear. |
| panel_description | string|null | optional | Embed description (max 4096 chars). Send null to clear. |
| panel_content | string|null | optional | Plain-text content above the embed (max 2000 chars). Send null to clear. |
| panel_footer | string|null | optional | Embed footer text (max 2048 chars). Send null to clear. |
| panel_color | string|null | optional | Embed colour as a hex string, e.g. #5865F2. Send null to clear. |
| panel_image_url | string|null | optional | Embed image as an http(s) URL. Send null to clear. |
| panel_thumbnail_url | string|null | optional | Embed thumbnail as an http(s) URL. Send null to clear. |
| panel_name | string | optional | Panel name used for ticket naming (max 100 chars). Single panels only. |
| button_text | string|null | optional | Button label (max 80 chars). Single panels only. |
| button_color | string | optional | Button style: primary, secondary, success, or danger. Single panels only. |
| button_emoji | string|null | optional | Button emoji (unicode or custom emoji ID). Single panels only. |
| disabled | boolean | optional | Disable or re-enable the panel. Single panels only. |
| dropdown_placeholder | string|null | optional | Dropdown placeholder text (max 150 chars). Multi panels only. |
Structural settings (panel channel, ticket category, mention role, forms, support teams) cannot be changed through the API; use the dashboard for those. The response includes message_refreshed; if it is false (or you changed dropdown_placeholder on a multi panel), call Resend a Panel to update the Discord message.
Example request
curl -X PATCH \
-H "Authorization: Bearer <API_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"panel_title":"Contact Support","panel_color":"#57F287","button_text":"Get Help","button_color":"success"}' \
https://api.ticketsx.xyz/<guild_id>/api/panels/<panel_id>Example response
{
"message": "Panel updated",
"message_refreshed": true,
"panel": {
"PanelId": 1,
"Type": "single",
"PanelName": "Support",
"PanelMessage": {
"PanelTitle": "Contact Support",
"PanelColor": "#57F287",
"ButtonText": "Get Help",
"ButtonColor": "success"
}
}
}