UNPKG

@hongkongkiwi/clockify-master-mcp

Version:

Clockify Master MCP - The most comprehensive Model Context Protocol server for Clockify time tracking with full API integration, advanced filtering, and enterprise features

48 lines 2.14 kB
export class ProjectService { client; constructor(client) { this.client = client; } async getAllProjects(workspaceId, options) { return this.client.get(`/workspaces/${workspaceId}/projects`, options); } async getProjectById(workspaceId, projectId, options) { return this.client.get(`/workspaces/${workspaceId}/projects/${projectId}`, options); } async createProject(workspaceId, data) { return this.client.post(`/workspaces/${workspaceId}/projects`, data); } async updateProject(workspaceId, projectId, data) { return this.client.put(`/workspaces/${workspaceId}/projects/${projectId}`, data); } async deleteProject(workspaceId, projectId) { return this.client.delete(`/workspaces/${workspaceId}/projects/${projectId}`); } async archiveProject(workspaceId, projectId) { return this.updateProject(workspaceId, projectId, { archived: true }); } async unarchiveProject(workspaceId, projectId) { return this.updateProject(workspaceId, projectId, { archived: false }); } async findProjectByName(workspaceId, name) { return this.getAllProjects(workspaceId, { name }); } async getProjectsForClient(workspaceId, clientId) { return this.getAllProjects(workspaceId, { clients: [clientId] }); } async addUserToProject(workspaceId, projectId, userId, data) { return this.client.post(`/workspaces/${workspaceId}/projects/${projectId}/users/${userId}`, data); } async removeUserFromProject(workspaceId, projectId, userId) { return this.client.delete(`/workspaces/${workspaceId}/projects/${projectId}/users/${userId}`); } async updateProjectEstimate(workspaceId, projectId, estimate) { return this.client.patch(`/workspaces/${workspaceId}/projects/${projectId}/estimate`, estimate); } async updateProjectMemberships(workspaceId, projectId, memberships) { return this.client.patch(`/workspaces/${workspaceId}/projects/${projectId}/memberships`, { memberships, }); } } //# sourceMappingURL=project.service.js.map