Projects
A project is a series of tasks performed over a period of time, to achieve certain targets. There can be many number of people working on a single project and a project may consist of single or multiple tasks. A project is billed and charged upon a customer whom the project was taken up for.
Attribute
Max-length [100]fixed_cost_for_project, based_on_project_hours, based_on_staff_hours, based_on_task_hours, based_on_project_days, based_on_staff_days and based_on_task_daystotal_project_cost, total_project_hours, hours_per_task and hours_per_staffHH:MM format.1 represents true, and 0 represents false.HH:MM format.active or inactive.HH:MM format.HH:MM format.{
"project_id": "460000000044019",
"project_name": "Network Distribution",
"project_code": "ND-2025",
"description": "This project is about the distribution of network devices across the city.",
"status": "active",
"status_formatted": "Active",
"billing_rate_frequency": "hourly",
"billing_type": "based_on_project_hours",
"billing_type_formatted": "Hourly Rate Per Project",
"is_from_zoho_projects": false,
"budget_type": "total_project_cost",
"budget_type_formatted": "Total Project Cost",
"budget_amount": 50000,
"budget_amount_formatted": "$50000.00",
"cost_budget_amount": 100,
"cost_budget_amount_formatted": "$100.00",
"is_budget_threshold_notification_enabled": false,
"is_client_approval_needed": false,
"is_user_approval_needed": false,
"client_approved_hours": "12:30",
"client_pending_approval_hours": "05:00",
"client_pending_submission_hours": "03:45",
"pending_approval_hours": "04:15",
"pending_submission_hours": "02:30",
"total_timesheet_cost_amount": 2500.75,
"total_timesheet_cost_amount_formatted": "$2,500.75",
"hours_per_day": "00:00",
"is_valid_project_head": true,
"budget_threshold": 80,
"budget_threshold_formatted": "80.00%",
"is_expense_inclusive": 0,
"is_expense_inclusive_formatted": 0,
"total_hours": "120.00",
"total_amount": "",
"total_amount_formatted": "$0.00",
"total_amount_expense_inclusive": "",
"billed_hours": "00:00",
"billed_amount": "",
"billed_amount_formatted": "$0.00",
"un_billed_hours": "00:00",
"un_billed_amount": "",
"un_billed_amount_formatted": "$0.00",
"billable_hours": "100.00",
"billable_amount": "",
"billable_amount_formatted": "$0.00",
"non_billable_hours": "00:00",
"non_billable_amount": "",
"non_billable_amount_formatted": "$0.00",
"has_active_recurring_profiles": false,
"created_time": "2025-08-06T10:05:43+0530",
"zohopeople_project_id": "",
"is_from_zoho_people": false,
"zohoworkerly_project_id": "",
"show_in_dashboard": true,
"customer": {
"customer_id": "5000000005007",
"customer_name": "Customer 1",
"first_name": "",
"email": "",
"photo_url": "https://secure.gravatar.com/avatar/00000000000000000000000000000000?&d=mm",
"customer_vat_treatment": ""
},
"currency": {
"currency_id": "5000000000091",
"currency_code": "USD"
},
"project_head": {
"user_id": "460000000044002",
"user_name": "John Doe",
"user_email": "johndoe@example.com"
},
"created_by": {
"user_id": "5000000003159"
},
"last_modified_by": {
"user_id": "5000000003159"
},
"accounts_budgets": [
{
"budget_id": "50000000012345",
"name": "Marketing Budget",
"status": "active",
"frequency": "monthly",
"year": "2025-01-01"
}
],
"tasks": [
{
"task_id": "50000000012345",
"task_name": "Design Website",
"description": "UI/UX design for the project.",
"rate": 50,
"budget_hours": "10:00",
"budget_hours_in_time": "10:00",
"total_hours": "08:30",
"billed_hours": "06:00",
"un_billed_hours": "02:30",
"billable_hours": "08:00",
"non_billable_hours": "00:30",
"status": "completed",
"is_billable": true,
"zohopeople_job_id": "50000000098765"
}
],
"users": [
{
"user": {
"user_id": "5000000003159",
"is_current_user": true,
"user_name": "John Doe",
"user_email": "johndoe@example.com",
"user_status": "active",
"user_status_formatted": "Active",
"role": {
"role_id": "5000000000995",
"role_name": "admin",
"role_name_formatted": "Admin"
}
},
"rate": 0,
"rate_formatted": "$0.00",
"budget_hours": 0,
"budget_hours_formatted": "00:00",
"budget_hours_in_time": "00:00",
"budget_hours_in_time_formatted": "00:00",
"total_hours": "00:00",
"billed_hours": "00:00",
"un_billed_hours": "00:00",
"billable_hours": "00:00",
"non_billable_hours": "00:00",
"cost_rate": 75,
"cost_rate_formatted": "$75.00",
"cost_effective_from_date": "2025-01-01",
"cost_effective_from_date_formatted": "01/01/2025",
"staff": {
"role": {
"role_name": "staff",
"role_name_formatted": "Staff"
},
"user_status": "active",
"user_status_formatted": "Active"
}
}
]
}
Get projects list
List all projects with pagination.
OAuth Scope : ZohoBooks.projects.READ
Query Parameters
project_name_startswith, project_name_containsdescription_startswith, description_contains, description_in, description_not_intrue and falsetrue.fixed_cost_for_project, based_on_project_hours, based_on_staff_hours, based_on_task_hours, based_on_project_days, based_on_staff_days and based_on_task_daystotal_project_cost, total_project_hours, hours_per_task and hours_per_staffactive, inactive and completedStatus.All, Status.Active, Status.Inactive, Status.Completed and Status.ZohoPeopleproject_name, customer_name, rate and created_timecreated_time_millis_less_than, created_time_millis_less_equals, created_time_millis_greater_than, and created_time_millis_greater_equals.last_modified_time_millis_less_than, last_modified_time_millis_less_equals, last_modified_time_millis_greater_than, and last_modified_time_millis_greater_equals.true, search parameters will be applied.true and false.headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects?organization-id=10234695"
type: GET
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects?organization-id=10234695")
.get()
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'GET',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("GET", "/books/v4/projects?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "GET",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request GET \
--url 'https://www.zohoapis.com/books/v4/projects?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
{
"code": 0,
"message": "success",
"projects": [
{
"project_id": "460000000044019",
"project_name": "Network Distribution",
"project_code": "ND-2025",
"customer": {
"customer_id": "460000000044001",
"customer_name": "SAF Instruments Inc"
},
"description": "This project is about the distribution of network devices across the city.",
"can_be_invoiced": "true",
"status": "active",
"status_formatted": "Active",
"billing_type": "based_on_project_hours",
"billing_type_formatted": "Hourly Rate Per Project",
"rate": "100.00",
"rate_formatted": "$100.00",
"created_time": "2025-08-06T10:05:43+0530",
"last_modified_time": "2025-08-06T10:05:43+0530",
"total_hours": "120.00",
"billable_hours": "100.00",
"project_head": {
"user_id": "460000000044002",
"user_name": "John Doe",
"user_email": "johndoe@example.com"
},
"has_attachment": true,
"budget_type": "total_project_cost",
"budget_amount": 50000,
"budget_hours": 120.5,
"currency": {
"currency_code": "USD"
},
"show_to_all_users": false,
"zprojects_project_id": "982000000457001",
"users_working": 5,
"_links": {
"self": "/projects/982000000567001"
}
},
{...},
{...}
]
}
Bulk delete projects
Delete multiple projects at once.
OAuth Scope : ZohoBooks.projects.DELETE
Query Parameters
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects?organization-id=10234695"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects?organization-id=10234695")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/books/v4/projects?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url 'https://www.zohoapis.com/books/v4/projects?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
{
"code": 0,
"message": "The project has been deleted."
}
Get a project
Get the details of a project.
OAuth Scope : ZohoBooks.projects.READ
Path Parameters
Query Parameters
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects/460000000044019?organization-id=10234695"
type: GET
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects/460000000044019?organization-id=10234695")
.get()
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'GET',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects/460000000044019?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("GET", "/books/v4/projects/460000000044019?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "GET",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects/460000000044019?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request GET \
--url 'https://www.zohoapis.com/books/v4/projects/460000000044019?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
{
"code": 0,
"message": "success",
"project": {
"project_id": "460000000044019",
"project_name": "Network Distribution",
"project_code": "ND-2025",
"description": "This project is about the distribution of network devices across the city.",
"status": "active",
"status_formatted": "Active",
"billing_rate_frequency": "hourly",
"billing_type": "based_on_project_hours",
"billing_type_formatted": "Hourly Rate Per Project",
"is_from_zoho_projects": false,
"budget_type": "total_project_cost",
"budget_type_formatted": "Total Project Cost",
"budget_amount": 50000,
"budget_amount_formatted": "$50000.00",
"cost_budget_amount": 100,
"cost_budget_amount_formatted": "$100.00",
"is_budget_threshold_notification_enabled": false,
"is_client_approval_needed": false,
"is_user_approval_needed": false,
"client_approved_hours": "12:30",
"client_pending_approval_hours": "05:00",
"client_pending_submission_hours": "03:45",
"pending_approval_hours": "04:15",
"pending_submission_hours": "02:30",
"total_timesheet_cost_amount": 2500.75,
"total_timesheet_cost_amount_formatted": "$2,500.75",
"hours_per_day": "00:00",
"is_valid_project_head": true,
"budget_threshold": 80,
"budget_threshold_formatted": "80.00%",
"is_expense_inclusive": 0,
"is_expense_inclusive_formatted": 0,
"total_hours": "120.00",
"total_amount": "",
"total_amount_formatted": "$0.00",
"total_amount_expense_inclusive": "",
"billed_hours": "00:00",
"billed_amount": "",
"billed_amount_formatted": "$0.00",
"un_billed_hours": "00:00",
"un_billed_amount": "",
"un_billed_amount_formatted": "$0.00",
"billable_hours": "100.00",
"billable_amount": "",
"billable_amount_formatted": "$0.00",
"non_billable_hours": "00:00",
"non_billable_amount": "",
"non_billable_amount_formatted": "$0.00",
"has_active_recurring_profiles": false,
"created_time": "2025-08-06T10:05:43+0530",
"zohopeople_project_id": "",
"is_from_zoho_people": false,
"zohoworkerly_project_id": "",
"show_in_dashboard": true,
"customer": {
"customer_id": "5000000005007",
"customer_name": "Customer 1",
"first_name": "",
"email": "",
"photo_url": "https://secure.gravatar.com/avatar/00000000000000000000000000000000?&d=mm",
"customer_vat_treatment": ""
},
"currency": {
"currency_id": "5000000000091",
"currency_code": "USD"
},
"project_head": {
"user_id": "460000000044002",
"user_name": "John Doe",
"user_email": "johndoe@example.com"
},
"created_by": {
"user_id": "5000000003159"
},
"last_modified_by": {
"user_id": "5000000003159"
},
"documents": [
{
"document_id": "460000000038034",
"document_name": "proposal.pdf",
"document_size": "1024000",
"document_size_formatted": "1 MB",
"document_type": "pdf",
"source": "desktop",
"source_formatted": "Desktop",
"uploaded_by": {
"user_id": "982000000567025",
"user_name": "John Doe"
},
"uploaded_on": "2023-04-01",
"uploaded_on_formatted": "01-04-2023",
"alter_text": "Project Proposal",
"attachment_order": "1",
"can_send_in_mail": "true",
"can_show_in_portal": "true",
"is_custom_field_document": "false",
"comment": {
"comment_id": "460000000038035"
},
"is_comment": "false"
}
],
"accounts_budgets": [
{
"budget_id": "50000000012345",
"name": "Marketing Budget",
"status": "active",
"frequency": "monthly",
"year": "2025-01-01"
}
],
"tasks": [
{
"task_id": "50000000012345",
"task_name": "Design Website",
"description": "UI/UX design for the project.",
"rate": 50,
"budget_hours": "10:00",
"budget_hours_in_time": "10:00",
"total_hours": "08:30",
"billed_hours": "06:00",
"un_billed_hours": "02:30",
"billable_hours": "08:00",
"non_billable_hours": "00:30",
"status": "completed",
"is_billable": true,
"zohopeople_job_id": "50000000098765"
}
],
"users": [
{
"user": {
"user_id": "5000000003159",
"is_current_user": true,
"user_name": "John Doe",
"user_email": "johndoe@example.com",
"user_status": "active",
"user_status_formatted": "Active",
"role": {
"role_id": "5000000000995",
"role_name": "admin",
"role_name_formatted": "Admin"
}
},
"rate": 0,
"rate_formatted": "$0.00",
"budget_hours": 0,
"budget_hours_formatted": "00:00",
"budget_hours_in_time": "00:00",
"budget_hours_in_time_formatted": "00:00",
"total_hours": "00:00",
"billed_hours": "00:00",
"un_billed_hours": "00:00",
"billable_hours": "00:00",
"non_billable_hours": "00:00",
"cost_rate": 75,
"cost_rate_formatted": "$75.00",
"cost_effective_from_date": "2025-01-01",
"cost_effective_from_date_formatted": "01/01/2025",
"staff": {
"role": {
"role_name": "staff",
"role_name_formatted": "Staff"
},
"user_status": "active",
"user_status_formatted": "Active"
}
}
]
}
}
Delete project
Deleting a existing project.
OAuth Scope : ZohoBooks.projects.DELETE
Path Parameters
Query Parameters
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects/460000000044019?organization-id=10234695"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects/460000000044019?organization-id=10234695")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects/460000000044019?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/books/v4/projects/460000000044019?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects/460000000044019?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url 'https://www.zohoapis.com/books/v4/projects/460000000044019?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
{
"code": 0,
"message": "The project has been deleted."
}
Delete project document
Deleting a document associated with a project.
OAuth Scope : ZohoBooks.projects.DELETE
Path Parameters
Query Parameters
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects/460000000044019/documents/460000000044027?organization-id=10234695"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects/460000000044019/documents/460000000044027?organization-id=10234695")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects/460000000044019/documents/460000000044027?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/books/v4/projects/460000000044019/documents/460000000044027?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects/460000000044019/documents/460000000044027?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url 'https://www.zohoapis.com/books/v4/projects/460000000044019/documents/460000000044027?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
{
"code": 0,
"message": "The attachment has been removed from the project."
}
Delete project comment
Deleting a comment associated with a project.
OAuth Scope : ZohoBooks.projects.DELETE
Path Parameters
Query Parameters
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects/460000000044019/comments/460000000044027?organization-id=10234695"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects/460000000044019/comments/460000000044027?organization-id=10234695")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects/460000000044019/comments/460000000044027?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/books/v4/projects/460000000044019/comments/460000000044027?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects/460000000044019/comments/460000000044027?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url 'https://www.zohoapis.com/books/v4/projects/460000000044019/comments/460000000044027?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
Delete project task
Deleting a task associated with the project.
OAuth Scope : ZohoBooks.projects.DELETE
Path Parameters
Query Parameters
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects/460000000044019/tasks/460000000044027?organization-id=10234695"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects/460000000044019/tasks/460000000044027?organization-id=10234695")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects/460000000044019/tasks/460000000044027?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/books/v4/projects/460000000044019/tasks/460000000044027?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects/460000000044019/tasks/460000000044027?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url 'https://www.zohoapis.com/books/v4/projects/460000000044019/tasks/460000000044027?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
{
"code": 0,
"message": "The task has been deleted."
}
Delete project user
Deleting a user associated with a project.
OAuth Scope : ZohoBooks.projects.DELETE
Path Parameters
Query Parameters
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects/460000000044019/users/460000000044027?organization-id=10234695"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects/460000000044019/users/460000000044027?organization-id=10234695")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects/460000000044019/users/460000000044027?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/books/v4/projects/460000000044019/users/460000000044027?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects/460000000044019/users/460000000044027?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url 'https://www.zohoapis.com/books/v4/projects/460000000044019/users/460000000044027?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
{
"code": 0,
"message": "The staff has been removed"
}
Delete project timer
Delete the timer of a project.
OAuth Scope : ZohoBooks.projects.DELETE
Query Parameters
headers_data = Map();
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/books/v4/projects/timer?organization-id=10234695"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/books/v4/projects/timer?organization-id=10234695")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/books/v4/projects/timer?organization-id=10234695', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/books/v4/projects/timer?organization-id=10234695", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/books/v4/projects/timer?organization-id=10234695",
"headers": {
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url 'https://www.zohoapis.com/books/v4/projects/timer?organization-id=10234695' \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
{
"code": 0,
"message": "Timer has been deleted."
}
{ "code": 0, "message": "The comment has been deleted." }