openapi: 3.2.0 info: title: CoreStack External Freshservice Tickets API version: 1.0.0 termsOfService: http://corestack.io/ license: name: CoreStack Inc License url: http://corestack.io/licenses/LICENSE-2.0.html description: Freshservice Ticket Integration servers: - url: / tags: - name: Freshservice Tickets description: Freshservice Ticket Integration paths: /v1/support/freshservice/departments/list: get: responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ModelError' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ModelError' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ModelError' '200': description: Success content: application/json: schema: type: array items: $ref: '#/components/schemas/FreshserviceDepartmentDetails' summary: List Departments accessible by the user description: Retrieve the departments accessible by the user. operationId: ListDepartments security: - auth_token: [] tags: - Freshservice Tickets /v1/support/freshservice/tickets/create: post: responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ModelError' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ModelError' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ModelError' '200': description: Success content: application/json: schema: $ref: '#/components/schemas/FreshserviceTicketDetails' summary: Creates a new FreshService Ticket description: Creates a ticket in FreshService operationId: CreateTicket security: - auth_token: [] tags: - Freshservice Tickets requestBody: content: application/json: schema: $ref: '#/components/schemas/FreshserviceTicketCreateRequest' required: true /v1/support/freshservice/tickets/filters: get: responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ModelError' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ModelError' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ModelError' '200': description: Freshservice Ticket Filters content: application/json: schema: $ref: '#/components/schemas/FreshserviceTicketFiltersResponse' summary: Freshservice Ticket Filters description: Freshservice Ticket Filters operationId: FreshserviceTicketFilters security: - auth_token: [] tags: - Freshservice Tickets /v1/support/freshservice/tickets/item/{ticket_id}: get: responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ModelError' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ModelError' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ModelError' '200': description: Success content: application/json: schema: $ref: '#/components/schemas/FreshserviceTicketDetails' summary: Get FreshService Ticket details description: Retrieve the current details of ticket operationId: GetTicket parameters: - name: ticket_id in: path required: true description: Specify the ticket ID. This is a unique ID and can be retrieved using the List Ticket API. schema: type: string security: - auth_token: [] tags: - Freshservice Tickets /v1/support/freshservice/tickets/list: post: responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ModelError' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ModelError' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ModelError' '200': description: Success content: application/json: schema: $ref: '#/components/schemas/FreshserviceSupportTicketListResponse' summary: List FreshService Tickets description: List FreshService Tickets operationId: ListTickets security: - auth_token: [] tags: - Freshservice Tickets requestBody: content: application/json: schema: $ref: '#/components/schemas/FreshserviceTicketListRequest' required: true components: schemas: ListContext: properties: batch_size: type: integer description: Max number of ids in the response batch_offset: type: integer description: Offset of batches into the results. First batch is 0 total: type: integer description: Total number of results type: object FreshserviceDepartmentDetails: properties: department_id: type: integer description: Department Id name: type: string description: Department Name type: object FreshserviceTicketFiltersResponse: properties: status: type: array description: Status List items: $ref: '#/components/schemas/FreshserviceTicketFilterElement' priority: type: array description: Priority List items: $ref: '#/components/schemas/FreshserviceTicketFilterElement' department: type: array description: Department List items: $ref: '#/components/schemas/FreshserviceTicketFilterElement' type: object FreshserviceSupportTicketListResponse: properties: results: type: array description: Tickets List items: $ref: '#/components/schemas/FreshserviceTicketDetails' next_list_context: description: List context $ref: '#/components/schemas/ListContext' type: object FreshserviceTicketDetails: properties: ticket_id: type: string description: Unique Id subject: type: string description: Subject description: type: string description: Description of the ticket email: type: string description: Requester Email status: type: string description: Status source: type: integer description: Source urgency: type: integer description: Urgency resolution_notes: type: string description: Resolution Notes priority: type: string description: Priority ticket_type: type: string description: Ticket Type workspace_id: type: string description: Workspace Id department: type: string description: Department group_id: type: string description: Group Id category: type: string description: Category sub_category: type: string description: Sub Category item_category: type: string responder_id: type: string description: Responder Id requested_for_id: type: string description: Requested for Id to_emails: type: array description: To Emails items: type: string fwd_emails: type: array description: Forward Emails items: type: string cc_emails: type: array description: CC Emails items: type: string reply_cc_emails: type: array description: Reply CC Emails items: type: string due_by: type: string format: date-time description: Due By created_at: type: string format: date-time description: Created At updated_at: type: string format: date-time description: Updated At is_deleted: type: boolean description: Is Deleted is_spam: type: boolean description: Is Spam is_escalated: type: boolean description: Is Escalated attachments: type: array description: Attachments Info items: $ref: '#/components/schemas/FreshserviceTicketAttachment' type: object FreshserviceTicketCreateRequest: required: - description - priority - subject properties: subject: type: string description: Subject description: type: string description: Description of the ticket priority: type: string description: Filter By Priority example: urgent enum: - urgent - high - medium - low x-cs-enum-type: FreshserviceTicketPriority department_id: type: integer description: Department Id attachments: type: array description: List of Attachment Ids items: type: string type: object FreshserviceTicketListRequest: properties: list_context: description: Optional list context $ref: '#/components/schemas/ListContext' filters: description: Filters for the request $ref: '#/components/schemas/FreshserviceTicketFilters' type: object FreshserviceTicketAttachment: properties: name: type: string description: Name content_type: type: string description: Content Type attachment_url: type: string description: Attachment Url type: object ModelError: required: - message properties: message: type: string description: Error response message. type: object FreshserviceTicketFilterElement: properties: id: type: string description: Id name: type: string description: Name type: object FreshserviceTicketFilters: properties: status: type: array items: type: string description: Status example: open enum: - open - pending - resolved - closed x-cs-enum-type: FreshserviceTicketStatus priority: type: array items: type: string description: Filter By Priority example: urgent enum: - urgent - high - medium - low x-cs-enum-type: FreshserviceTicketPriority department_id: type: array items: type: integer description: Filter By department start_date: type: string format: date description: specify the start date end_date: type: string format: date description: specify the end date type: object securitySchemes: auth_token: type: apiKey in: header name: X-Auth-Token