Namespaces
supportTicket
Methods and types of the `supportTicket` namespace (`client.supportTicket` / `bot.supportTicket`).
Interfaces
CreateSupportTicketRequest
Properties
| Property | Type | Description |
|---|---|---|
aiGenerated? | boolean | true when the ticket was drafted by Nu via the create_support_ticket chat tool and submitted by the user from the pre-populated draft. Recorded on the ticket for analytics; set it when the ticket form was opened from an AI-draft action. |
body | string | - |
deviceInfo? | Record<string, unknown> | Browser/app/device snapshot collected at submit time. |
scopeId? | string | Required for workspace/project scope; ignored for user scope. |
scopeType | SupportTicketScope | - |
subject | string | - |
SupportTicket
Properties
| Property | Type | Description |
|---|---|---|
aiGenerated | boolean | True for tickets drafted by Nu's create_support_ticket tool. |
chatId | string | - |
createdAt | string | - |
creatorId | string | - |
deviceInfo | Record<string, unknown> | - |
id | string | - |
priority | string | - |
scopeId | string | null | - |
scopeType | SupportTicketScope | - |
status | SupportTicketStatus | - |
subject | string | - |
ticketNumber | number | - |
updatedAt | string | - |
SupportTicketListParams
Properties
| Property | Type |
|---|---|
limit? | number |
page? | number |
status? | SupportTicketStatus |
SupportTicketListResponse
Properties
| Property | Type |
|---|---|
limit | number |
page | number |
results | SupportTicket[] |
totalPages | number |
totalResults | number |
SupportTicketScopeOptions
Properties
| Property | Type |
|---|---|
projects | { color?: string | null; id: string; logo?: SupportTicketScopeLogo; name: string; slug: string | null; workspaceId: string; }[] |
workspaces | { color?: string | null; id: string; logo?: SupportTicketScopeLogo; name: string; slug: string; }[] |
Type Aliases
SupportTicketScope
type SupportTicketScope = "user" | "workspace" | "project";SupportTicketScopeLogo
type SupportTicketScopeLogo =
| {
[key: string]: unknown;
files?: unknown[];
}
| null;A logo asset (thumbnail-ready) attached to a scope for avatar rendering.
SupportTicketStatus
type SupportTicketStatus = "open" | "pending" | "resolved" | "closed";Functions
default()
function default(client): {
createSupportTicket: Promise<SupportTicket>;
getSupportTicket: Promise<SupportTicket>;
getSupportTicketScopeOptions: Promise<SupportTicketScopeOptions>;
listSupportTickets: Promise<SupportTicketListResponse>;
};Support tickets. A ticket carries the metadata + a backing Chat thread; the conversation itself is sent/read through the regular chat endpoints:
- send:
nuramaClient.chat.createMessage(ticket.chatId, …) - read:
nuramaClient.chat.getMessages(ticket.chatId, …)
Nurama customer service replies (as the support persona) from the admin site.
Parameters
| Parameter | Type |
|---|---|
client | default |
Returns
| Name | Type | Description |
|---|---|---|
createSupportTicket() | (data) => Promise<SupportTicket> | Create a ticket. The opening message body becomes the first thread entry. |
getSupportTicket() | (ticketId) => Promise<SupportTicket> | - |
getSupportTicketScopeOptions() | () => Promise<SupportTicketScopeOptions> | Workspaces/projects the caller may scope a new ticket to. |
listSupportTickets() | (params?) => Promise<SupportTicketListResponse> | List the caller's own tickets + (for resource admins) tickets in their scope. |