create_task
Add new tasks to Zoho Projects by specifying project, task name, description, priority, dates, and assignee for organized project management.
Instructions
Create a new task in a project
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| assignee_zpuid | No | Assignee user ZPUID | |
| description | No | Task description | |
| end_date | No | End date (YYYY-MM-DD) | |
| name | Yes | Task name | |
| priority | No | Task priority | |
| project_id | Yes | Project ID | |
| start_date | No | Start date (YYYY-MM-DD) |
Implementation Reference
- src/index.ts:729-744 (handler)The handler function for the 'create_task' tool. It extracts project_id and task data from params, makes a POST request to the Zoho Projects API to create the task, and returns a formatted response with the created task details.private async createTask(params: any) { const { project_id, ...taskData } = params; const data = await this.makeRequest( `/portal/${this.config.portalId}/projects/${project_id}/tasks`, "POST", taskData ); return { content: [ { type: "text", text: `Task created successfully:\n${JSON.stringify(data, null, 2)}`, }, ], }; }
- src/index.ts:317-341 (schema)The input schema definition for the 'create_task' tool, specifying parameters like project_id, name, description, priority, dates, and assignee.name: "create_task", description: "Create a new task in a project", inputSchema: { type: "object", properties: { project_id: { type: "string", description: "Project ID" }, name: { type: "string", description: "Task name" }, description: { type: "string", description: "Task description" }, priority: { type: "string", description: "Task priority", enum: ["none", "low", "medium", "high"], }, start_date: { type: "string", description: "Start date (YYYY-MM-DD)", }, end_date: { type: "string", description: "End date (YYYY-MM-DD)" }, assignee_zpuid: { type: "string", description: "Assignee user ZPUID", }, }, required: ["project_id", "name"], },
- src/index.ts:576-577 (registration)The dispatch case in the tool request handler that routes 'create_task' calls to the createTask method.case "create_task": return await this.createTask(params);
- src/http-server.ts:732-747 (handler)Identical handler function for the 'create_task' tool in the HTTP server version.private async createTask(params: any) { const { project_id, ...taskData } = params; const data = await this.makeRequest( `/portal/${this.config.portalId}/projects/${project_id}/tasks`, "POST", taskData ); return { content: [ { type: "text", text: `Task created successfully:\n${JSON.stringify(data, null, 2)}`, }, ], }; }
- src/http-server.ts:320-344 (schema)The input schema definition for the 'create_task' tool in the HTTP server version, identical to index.ts.name: "create_task", description: "Create a new task in a project", inputSchema: { type: "object", properties: { project_id: { type: "string", description: "Project ID" }, name: { type: "string", description: "Task name" }, description: { type: "string", description: "Task description" }, priority: { type: "string", description: "Task priority", enum: ["none", "low", "medium", "high"], }, start_date: { type: "string", description: "Start date (YYYY-MM-DD)", }, end_date: { type: "string", description: "End date (YYYY-MM-DD)" }, assignee_zpuid: { type: "string", description: "Assignee user ZPUID", }, }, required: ["project_id", "name"], },