import type * as Merge from "../../../index"; /** * # The Ticket Object * ### Description * The `Ticket` object is used to represent a ticket, issue, task or case. * ### Usage Example * TODO */ export interface TicketRequest { /** The ticket's name. */ name?: string; /** The individual `Users` who are assigned to this ticket. This does not include `Users` who just have view access to this ticket. To fetch all `Users` and `Teams` that can access the ticket, use the `GET /tickets/{ticket_id}/viewers` [endpoint](https://docs.merge.dev/ticketing/tickets/#tickets_viewers_list). */ assignees?: (Merge.ticketing.TicketRequestAssigneesItem | undefined)[]; /** The `Teams` that are assigned to this ticket. This does not include `Teams` who just have view access to this ticket. To fetch all `Users` and `Teams` that can access this ticket, use the `GET /tickets/{ticket_id}/viewers` [endpoint](https://docs.merge.dev/ticketing/tickets/#tickets_viewers_list). */ assignedTeams?: (Merge.ticketing.TicketRequestAssignedTeamsItem | undefined)[]; /** The user who created this ticket. */ creator?: Merge.ticketing.TicketRequestCreator; /** The ticket's due date. */ dueDate?: Date; /** * The current status of the ticket. * * * `OPEN` - OPEN * * `CLOSED` - CLOSED * * `IN_PROGRESS` - IN_PROGRESS * * `ON_HOLD` - ON_HOLD */ status?: Merge.ticketing.TicketRequestStatus; /** The ticket’s description. HTML version of description is mapped if supported by the third-party platform. */ description?: string; /** The `Collections` that this `Ticket` is included in. */ collections?: (Merge.ticketing.TicketRequestCollectionsItem | undefined)[]; /** The sub category of the ticket within the 3rd party system. Examples include incident, task, subtask or to-do. */ ticketType?: string; /** The account associated with the ticket. */ account?: Merge.ticketing.TicketRequestAccount; /** The contact associated with the ticket. */ contact?: Merge.ticketing.TicketRequestContact; /** The ticket's parent ticket. */ parentTicket?: Merge.ticketing.TicketRequestParentTicket; attachments?: (Merge.ticketing.TicketRequestAttachmentsItem | undefined)[]; /** * The description of who is able to access a given ticket, or where access is inherited from. * * * `COMPANY` - COMPANY * * `PUBLIC` - PUBLIC * * `PRIVATE` - PRIVATE * * `COLLECTION` - COLLECTION */ accessLevel?: Merge.ticketing.TicketRequestAccessLevel; tags?: (string | undefined)[]; roles?: (string | undefined)[]; /** When the ticket was completed. */ completedAt?: Date; /** The 3rd party url of the Ticket. */ ticketUrl?: string; /** * The priority or urgency of the Ticket. * * * `URGENT` - URGENT * * `HIGH` - HIGH * * `NORMAL` - NORMAL * * `LOW` - LOW */ priority?: Merge.ticketing.TicketRequestPriority; integrationParams?: Record; linkedAccountParams?: Record; remoteFields?: Merge.ticketing.RemoteFieldRequest[]; }