update_project
Modify project details like name, description, dates, or status in Zoho Projects to keep project information current and accurate.
Instructions
Update an existing project
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | Project ID | |
| name | No | Project name | |
| description | No | Project description | |
| start_date | No | Start date (YYYY-MM-DD) | |
| end_date | No | End date (YYYY-MM-DD) | |
| status | No | Project status |
Implementation Reference
- src/http-server.ts:676-691 (handler)Core handler function that executes the update_project tool: destructures params to get project_id and update data, sends PATCH request to Zoho Projects API endpoint, and returns formatted success response with API data.private async updateProject(params: any) { const { project_id, ...updateData } = params; const data = await this.makeRequest( `/portal/${this.config.portalId}/projects/${project_id}`, "PATCH", updateData ); return { content: [ { type: "text", text: `Project updated successfully:\n${JSON.stringify(data, null, 2)}`, }, ], }; }
- src/index.ts:673-688 (handler)Identical core handler function for update_project tool in the stdio server version.private async updateProject(params: any) { const { project_id, ...updateData } = params; const data = await this.makeRequest( `/portal/${this.config.portalId}/projects/${project_id}`, "PATCH", updateData ); return { content: [ { type: "text", text: `Project updated successfully:\n${JSON.stringify(data, null, 2)}`, }, ], }; }
- src/http-server.ts:252-274 (schema)Input schema definition for the update_project tool, specifying parameters like project_id (required), name, description, dates, and status.{ name: "update_project", description: "Update an existing project", inputSchema: { type: "object", properties: { project_id: { type: "string", description: "Project ID" }, name: { type: "string", description: "Project name" }, description: { type: "string", description: "Project description" }, start_date: { type: "string", description: "Start date (YYYY-MM-DD)", }, end_date: { type: "string", description: "End date (YYYY-MM-DD)" }, status: { type: "string", description: "Project status", enum: ["active", "template", "archived"], }, }, required: ["project_id"], }, },
- src/http-server.ts:568-572 (registration)Tool dispatch/registration in the CallToolRequestSchema handler switch statement, routing 'update_project' calls to the updateProject method.return await this.createProject(params); case "update_project": return await this.updateProject(params); case "delete_project": return await this.deleteProject(params.project_id);
- src/index.ts:566-570 (registration)Tool dispatch in stdio version's CallToolRequestSchema switch, calling updateProject for 'update_project'.case "update_project": return await this.updateProject(params); case "delete_project": return await this.deleteProject(params.project_id);