UNPKG

@takashito/linode-mcp-server

Version:

MCP server for Linode API

53 lines 2.13 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createSupportClient = createSupportClient; const axios_1 = __importDefault(require("axios")); function createSupportClient(baseURL, token) { const axiosInstance = axios_1.default.create({ baseURL, headers: { 'Authorization': `Bearer ${token}`, 'Content-Type': 'application/json', }, }); return { listTickets: async (params) => { const response = await axiosInstance.get('/support/tickets', { params }); return response.data; }, getTicket: async (ticketId) => { const response = await axiosInstance.get(`/support/tickets/${ticketId}`); return response.data; }, createTicket: async (data) => { const response = await axiosInstance.post('/support/tickets', data); return response.data; }, closeTicket: async (ticketId) => { const response = await axiosInstance.post(`/support/tickets/${ticketId}/close`); return response.data; }, listReplies: async (ticketId, params) => { const response = await axiosInstance.get(`/support/tickets/${ticketId}/replies`, { params }); return response.data; }, createReply: async (ticketId, data) => { const response = await axiosInstance.post(`/support/tickets/${ticketId}/replies`, data); return response.data; }, uploadAttachment: async (ticketId, file) => { const formData = new FormData(); formData.append('file', file); const response = await axiosInstance.post(`/support/tickets/${ticketId}/attachments`, formData, { headers: { 'Content-Type': 'multipart/form-data', }, }); return response.data; }, }; } //# sourceMappingURL=support.js.map