Zoho Projects API for Developers

Timesheets API

All Time Logs
GET  /portal/[PORTALID]/projects/[PROJECTID]/logs/
Add Time Log for a Task
POST  /portal/[PORTALID]/projects/[PROJECTID]/tasks/[TASKID]/logs/
Update Time Log for a Task
 POST /portal/[PORTALID]/projects/[PROJECTID]/tasks/[TASKID]/logs/[LOGID]/
Delete Time Log for a Task
DELETE  /portal/[PORTALID]/projects/[PROJECTID]/tasks/[TASKID]/logs/[LOGID]/
Add Time Log for a Bug
POST  /portal/[PORTALID]/projects/[PROJECTID]/bugs/[BUGID]/logs/
Update Time Log for a Bug
POST  /portal/[PORTALID]/projects/[PROJECTID]/bugs/[BUGID]/logs/[LOGID]/
Delete Time Log for a Bug
DELETE  /portal/[PORTALID]/projects/[PROJECTID]/bugs/[BUGID]/logs/[LOGID]/
Add Time for a General Log
POST  /portal/[PORTALID]/projects/[PROJECTID]/logs/
Update Time for a General Log
POST  /portal/[PORTALID]/projects/[PROJECTID]/logs/[LOGID]/
Delete Time for a General Log
DELETE  /portal/[PORTALID]/projects/[PROJECTID]/logs/[LOGID]/

All Time Logs

GET  /portal/[PORTALID]/projects/[PROJECTID]/logs/

Gets all the time logs in the given project.

Request Parameters

index int Index of the time log.
range int Range of the time logs.
users_list* String or Long User of the time logs must be provided as all or user ID. For multiple users, the user ID must be separated by commas.(all - String, user ID - Long)
view_type* String View type of the timesheet must be provided as day or week or month.
date*

String

[MM-DD-YYYY]

Date of the timesheet view type.
bill_status* String Timesheet billable status must be provided as All or Billable or Non Billable.
component_type* String Type of the component must be provided as task or bug or general.

Sample Response

Status: 200 Success
Content Type: application/json;charset=utf-8
{
"timelogs": {
"grandtotal": "02:24",
"role": "admin",
"timelog": {
"date": [{
"date_long": 1400223600000,
"display_format": "May 16, 2014",
"totalhours": "2:00",
"buglogs": [{
"id": 170876000001823039,
"notes": "",
"hours": 2,
"minutes": 0,
"hour_display": "02:00",
"total_minutes": 120,
"owner_name": "Patricia Boyle",
"bill_status": "Billable",
"project": {
"id": 170876000000147021,
"name": "ERP Phase III"
},
"bug": {
"id": 170876000001823009,
"title": "UI issue in Status text box"
},
"link": {
"self": {
"url": "https://projectsapi.zoho.com/restapi/portal/2063927/projects/
170876000000147021/bugs/170876000001823009/logs/170876000001823039/"
}
}
}]
}, {
"date_long": 1400482800000,
"display_format": "May 19, 2014",
"totalhours": "0:24",
"buglogs": [{
"id": 170876000001850001,
"notes": "timesheet log : start time -05-19-2014 02:37 PM
end time 05-26-2014 03:01 PM time spent - 0.24",
"hours": 0,
"minutes": 24,
"hour_display": "00:24",
"total_minutes": 24,
"owner_name": "Patricia Boyle",
"bill_status": "Billable",
"project": {
"id": 170876000000147021,
"name": "ERP Phase III"
},
"bug": {
"id": 170876000001829171,
"title": "UI Issue in Gantt"
},
"link": {
"self": {
"url": "https://projectsapi.zoho.com/restapi/portal/2063927/projects/170876000000147021/
bugs/170876000001829171/logs/170876000001850001/"
}
}
}]
}]
}
}
}

Add Time Log for a Task

POST  /portal/[PORTALID]/projects/[PROJECTID]/tasks/[TASKID]/logs/

Adds the time log to a task.

Request Parameters

date*

String

[MM-DD-YYYY]

Date of the timesheet.
bill_status* String Timesheet billable status must be provided as Billable or Non Billable.
hours*

String

[hh:mm]

Time period of the timesheet.
notes

String

Additional information about the time log.

Sample Response

Status: 201 Created
Content Type: application/json;charset=utf-8
{
"timelogs": {
"tasklogs": [{
"task": {
"id": 170876000001217302,
"name": "Author scope of the guide"
},
"id": 170876000001849051,
"notes": "",
"log_date": "05-26-2014 11:59 PM",
"log_date_long": 1401157799000,
"hours": 1,
"minutes": 30,
"hours_display": "01:30",
"total_minutes": 90,
"owner_id": "2060758",
"owner_name": "Patricia Boyle",
"bill_status": "Billable",
"link": {
"self": {
"url": "https://projectsapi.zoho.com/restapi/portal/2063927/projects/170876000000147021/tasks/
170876000001217302/logs/170876000001849051/"
}
}
}]
}
}

Update Time Log for a Task

POST /portal/[PORTALID]/projects/[PROJECTID]/tasks/[TASKID]/logs/[LOGID]/

Updates the time log for a task

Request Parameters

date*

String

[MM-DD-YYYY]

Date of the timesheet.
bill_status* String Timesheet billable status must be provided as Billable or Non Billable.
hours*

String

[hh:mm]

Time period of the timesheet.
notes

String

Additional information about the time log.

Sample Response

Status: 200 Success
Content Type: application/json;charset=utf-8
{
"timelogs": {
"tasklogs": [{
"task": {
"id": 170876000001217302,
"name": "Author scope of the guide"
},
"id": 170876000001849051,
"notes": "",
"log_date": "05-26-2014 11:59 PM",
"log_date_long": 1401157799000,
"hours": 2,
"minutes": 30,
"hours_display": "02:30",
"total_minutes": 150,
"owner_id": "2060758",
"owner_name": "Patricia Boyle",
"bill_status": "Billable",
"link": {
"self": {
"url": "https://projectsapi.zoho.com/restapi/portal/2063927/projects/170876000000147021/tasks/
170876000001217302/logs/170876000001849051/"
}
}
}]
}
}

Delete Time Log for a Task

DELETE  /portal/[PORTALID]/projects/[PROJECTID]/tasks/[TASKID]/logs/[LOGID]/

Deletes the time log for a task.

Sample Response

Status: 200 Success
Content Type: application/json;charset=utf-8
{
"response": "Timesheet log Deleted Successfully"
}

Add Time Log for a Bug

POST  /portal/[PORTALID]/projects/[PROJECTID]/bugs/[BUGID]/logs/

Adds the time log to a bug.

Request Parameters

date*

String

[MM-DD-YYYY]

Date of the timesheet.
bill_status* String Timesheet billable status must be provided as Billable or Non Billable.
hours*

String

[hh:mm]

Time period of the timesheet.
notes

String

Additional information about the time log.

Sample Response

Status: 201 Created
Content Type: application/json;charset=utf-8
{
"timelogs": {
"buglogs": [{
"bug": {
"id": 170876000001829171,
"name": "UI Issue in Gantt"
},
"id": 170876000001849055,
"notes": "",
"log_date": "05-26-2014 11:59 PM",
"log_date_long": 1401157799000,
"hours": 2,
"minutes": 30,
"hours_display": "02:30",
"total_minutes": 150,
"owner_id": "2060758",
"owner_name": "Patricia Boyle",
"bill_status": "Billable",
"link": {
"self": {
"url": "https://projectsapi.zoho.com/restapi/portal/2063927/projects/
170876000000147021/bugs/170876000001829171/logs/170876000001849055/"
}
}
}]
}
}

Update Time Log for a Bug

POST  /portal/[PORTALID]/projects/[PROJECTID]/bugs/[BUGID]/logs/[LOGID]/

Updates the time log for a bug.

Request Parameters

date*

String

[MM-DD-YYYY]

Date of the timesheet.
bill_status* String Timesheet billable status must be provided as Billable or Non Billable.
hours*

String

[hh:mm]

Time period of the timesheet.
notes

String

Additional information about the time log.

Sample Response

Status: 200 Success
Content Type: application/json;charset=utf-8
{
"timelogs": {
"buglogs": [{
"bug": {
"id": 170876000001829171,
"name": "UI Issue in Gantt"
},
"id": 170876000001849055,
"notes": "",
"log_date": "05-26-2014 11:59 PM",
"log_date_long": 1401157799000,
"hours": 3,
"minutes": 30,
"hours_display": "03:30",
"total_minutes": 210,
"owner_id": "2060758",
"owner_name": "Patricia Boyle",
"bill_status": "Billable",
"link": {
"self": {
"url": "https://projectsapi.zoho.com/restapi/portal/2063927/projects/
170876000000147021/bugs/170876000001829171/logs/170876000001849055/"
}
}
}]
}
}

Delete Time Log for a Bug

DELETE  /portal/[PORTALID]/projects/[PROJECTID]/bugs/[BUGID]/logs/[LOGID]/

Deletes the time log for a bug.

Sample Response

Status: 200 Success
Content Type: application/json;charset=utf-8
{
"response": "Timesheet log Deleted Successfully"
}

Add Time for a General Log

POST  /portal/[PORTALID]/projects/[PROJECTID]/logs/

Adds the time log to other tasks.

Request Parameters

name*

String

Name of the other tasks.
date*

String

[MM-DD-YYYY]

Date of the timesheet.
bill_status* String Timesheet billable status must be provided as Billable or Non Billable.
hours*

String

[hh:mm]

Time period of the timesheet.
notes

String

Additional information about the time log.

Sample Response

Status: 201 Created
Content Type: application/json;charset=utf-8
{
"timelogs": {
"generallogs": [{
"id": 170876000001849059,
"name": "Client Call",
"notes": "",
"log_date": "05-26-2014 11:59 PM",
"log_date_long": 1401157799000,
"hours": 2,
"minutes": 30,
"hours_display": "02:30",
"total_minutes": 150,
"owner_id": "2060758",
"owner_name": "Patricia Boyle",
"bill_status": "Billable",
"link": {
"self": {
"url": "https://projectsapi.zoho.com/restapi/portal/2063927/projects/
170876000000147021/logs/170876000001849059/"
}
}
}]
}
}

Update Time for a General Log

POST  /portal/[PORTALID]/projects/[PROJECTID]/logs/[LOGID]/

Updates the time log for other tasks.

Request Parameters

name*

String

Name of the other tasks.
date*

String

[MM-DD-YYYY]

Date of the timesheet.
bill_status* String Timesheet billable status must be provided as Billable or Non Billable.
hours*

String

[hh:mm]

Time period of the timesheet.
notes

String

Additional information about the time log.

Sample Response

Status: 200 Success
Content Type: application/json;charset=utf-8
{
"timelogs": {
"generallogs": [{
"id": 170876000001849059,
"name": "Client Call",
"notes": "",
"log_date": "05-26-2014 11:59 PM",
"log_date_long": 1401157799000,
"hours": 2,
"minutes": 30,
"hours_display": "02:30",
"total_minutes": 150,
"owner_id": "2060758",
"owner_name": "Patricia Boyle",
"bill_status": "Billable",
"link": {
"self": {
"url": "https://projectsapi.zoho.com/restapi/portal/2063927/projects/
170876000000147021/logs/170876000001849059/"
}
}
}]
}
}

Delete Time for a General Log

DELETE  /portal/[PORTALID]/projects/[PROJECTID]/logs/[LOGID]/

Deletes the time log for other tasks.

Sample Response

Status: 200 Success
Content Type: application/json;charset=utf-8
{
"response": "Timesheet log Deleted Successfully"
}

Top