<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks
Milestone Task
A task is an activity or piece of work which you have to do, usually as part of a larger milestone.
Attributes
id (long)
Unique Identifier to identify the task
title (string)
Title of the task
description (html)
Contains description about the task
scheduled_start_time (datetime)
Date and time at which the task is scheduled to start
scheduled_end_time (datetime)
Date and time at which the task is scheduled to finish
actual_start_time (datetime)
Date and time at which the task has actually started
More Attributes Expand all
attachments (attachment)
Files that are attached to the task. Maximum of 10 files can be attached to a task.
Add Milestone Task
This operation helps you add a milestone task.
Mandatory Fields :- title
Url
Attributes
id (long)
Unique Identifier to identify the task
title (string)
Title of the task
description (html)
Contains description about the task
scheduled_start_time (datetime)
Date and time at which the task is scheduled to start
scheduled_end_time (datetime)
Date and time at which the task is scheduled to finish
actual_start_time (datetime)
Date and time at which the task has actually started
More Attributes Expand all
attachments (attachment)
Files that are attached to the task. Maximum of 10 files can be attached to a task.
$ curl <service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks\
-X POST\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"\
-d input_data='{
"task": {
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"title": "Create SRS",
"additional_cost": "100",
"actual_end_time": {
"value": "1512974940000"
},
"actual_start_time": {
"value": "1421988300000"
},
"owner": {
"name": "Lincoln",
"id": "1871812265827162"
},
"priority": {
"name": "High",
"id": "2474460469828007"
},
"scheduled_end_time": {
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"estimated_effort_days": "15",
"task_type": {
"name": "Implementation",
"id": "1898428065971893"
},
"scheduled_start_time": {
"value": "1421988300000"
},
"status": {
"name": "Open",
"id": "1822002620862973"
}
}
}''
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
input_data = {
"task": {
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"title": "Create SRS",
"additional_cost": "100",
"actual_end_time": {
"value": "1512974940000"
},
"actual_start_time": {
"value": "1421988300000"
},
"owner": {
"name": "Lincoln",
"id": "1871812265827162"
},
"priority": {
"name": "High",
"id": "2474460469828007"
},
"scheduled_end_time": {
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"estimated_effort_days": "15",
"task_type": {
"name": "Implementation",
"id": "1898428065971893"
},
"scheduled_start_time": {
"value": "1421988300000"
},
"status": {
"name": "Open",
"id": "1822002620862973"
}
}
}';
params = {"input_data": input_data};
response = invokeurl
[
url: url
type: POST
parameters: params
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks"
$headers = @{ "Accept" = "application/vnd.manageengine.sdp.v3+json"
"Authorization" = "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"
"Content-Type" = "application/x-www-form-urlencoded"}
$input_data = @'
{
"task": {
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"title": "Create SRS",
"additional_cost": "100",
"actual_end_time": {
"value": "1512974940000"
},
"actual_start_time": {
"value": "1421988300000"
},
"owner": {
"name": "Lincoln",
"id": "1871812265827162"
},
"priority": {
"name": "High",
"id": "2474460469828007"
},
"scheduled_end_time": {
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"estimated_effort_days": "15",
"task_type": {
"name": "Implementation",
"id": "1898428065971893"
},
"scheduled_start_time": {
"value": "1421988300000"
},
"status": {
"name": "Open",
"id": "1822002620862973"
}
}
}'
'@
$data = @{ 'input_data' = $input_data}
$response = Invoke-RestMethod -Uri $url -Method post -Body $data -Headers $headers
$response
#Python version - 3.10
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
input_data = '''{
"task": {
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"title": "Create SRS",
"additional_cost": "100",
"actual_end_time": {
"value": "1512974940000"
},
"actual_start_time": {
"value": "1421988300000"
},
"owner": {
"name": "Lincoln",
"id": "1871812265827162"
},
"priority": {
"name": "High",
"id": "2474460469828007"
},
"scheduled_end_time": {
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"estimated_effort_days": "15",
"task_type": {
"name": "Implementation",
"id": "1898428065971893"
},
"scheduled_start_time": {
"value": "1421988300000"
},
"status": {
"name": "Open",
"id": "1822002620862973"
}
}
}''''
data = urlencode({"input_data":input_data}).encode()
httprequest = Request(url, headers=headers,data=data, method="POST")
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"task": {
"percentage_completion": "30",
"estimated_effort_hours": "20",
"attachments": [],
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"project": {
"project_code": "test-project_code",
"id": "2206525788698287",
"title": "Create SRS",
"display_id": {
"display_value": "PJT-173",
"value": "173"
}
},
"title": "Create SRS",
"marked_technician": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "2443319112022586",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"overdue": false,
"additional_cost": "100",
"actual_end_time": {
"display_value": "Dec 11, 2017 12:19 PM",
"value": "1512974940000"
},
"id": "1504379411346066",
"actual_start_time": {
"display_value": "Jan 23, 2015 10:15 AM",
"value": "1421988300000"
},
"owner": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "1871812265827162",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"associated_entity": "project",
"module": "Milestone",
"priority": {
"color": "#ffffff",
"name": "High",
"id": "2474460469828007"
},
"created_by": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "1577080616582153",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"scheduled_end_time": {
"display_value": "Dec 11, 2017 12:19 PM",
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"deleted": false,
"milestone": {
"id": "2132942495432990"
},
"estimated_effort": "22845",
"created_date": {
"display_value": "Nov 10, 2016 11:44 AM",
"value": "1478758440000"
},
"estimated_effort_days": "15",
"task_type": {
"color": "#ffffff",
"name": "Implementation",
"id": "1898428065971893"
},
"scheduled_start_time": {
"display_value": "Jan 23, 2015 10:15 AM",
"value": "1421988300000"
},
"status": {
"in_progress": false,
"internal_name": "test-internal_name",
"stop_timer": false,
"color": "#ffffff",
"name": "Open",
"id": "1822002620862973"
}
},
"response_status": {
"status_code": 2000,
"status": "success"
}
}
Edit Milestone Task
This operation helps you update milestone tasks.
Url
<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}
Attributes
id (long)
Unique Identifier to identify the task
title (string)
Title of the task
description (html)
Contains description about the task
scheduled_start_time (datetime)
Date and time at which the task is scheduled to start
scheduled_end_time (datetime)
Date and time at which the task is scheduled to finish
actual_start_time (datetime)
Date and time at which the task has actually started
More Attributes Expand all
attachments (attachment)
Files that are attached to the task. Maximum of 10 files can be attached to a task.
$ curl <service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}\
-X PUT\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"\
-d input_data='{
"task": {
"owner": {
"name": "Lincoln",
"id": "2301935913214789"
},
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"title": "Create SRS",
"priority": {
"name": "High",
"id": "2328502781662753"
},
"scheduled_end_time": {
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"additional_cost": "100",
"actual_end_time": {
"value": "1512974940000"
},
"actual_start_time": {
"value": "1421988300000"
},
"estimated_effort_days": "15",
"task_type": {
"name": "Implementation",
"id": "1904788127933512"
},
"scheduled_start_time": {
"value": "1421988300000"
},
"status": {
"name": "Open",
"id": "2028758908906679"
}
}
}''
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
input_data = {
"task": {
"owner": {
"name": "Lincoln",
"id": "2301935913214789"
},
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"title": "Create SRS",
"priority": {
"name": "High",
"id": "2328502781662753"
},
"scheduled_end_time": {
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"additional_cost": "100",
"actual_end_time": {
"value": "1512974940000"
},
"actual_start_time": {
"value": "1421988300000"
},
"estimated_effort_days": "15",
"task_type": {
"name": "Implementation",
"id": "1904788127933512"
},
"scheduled_start_time": {
"value": "1421988300000"
},
"status": {
"name": "Open",
"id": "2028758908906679"
}
}
}';
params = {"input_data": input_data};
response = invokeurl
[
url: url
type: PUT
parameters: params
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}"
$headers = @{"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
$input_data = @'
{
"task": {
"owner": {
"name": "Lincoln",
"id": "2301935913214789"
},
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"title": "Create SRS",
"priority": {
"name": "High",
"id": "2328502781662753"
},
"scheduled_end_time": {
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"additional_cost": "100",
"actual_end_time": {
"value": "1512974940000"
},
"actual_start_time": {
"value": "1421988300000"
},
"estimated_effort_days": "15",
"task_type": {
"name": "Implementation",
"id": "1904788127933512"
},
"scheduled_start_time": {
"value": "1421988300000"
},
"status": {
"name": "Open",
"id": "2028758908906679"
}
}
}'
'@
$data = @{ 'input_data' = $input_data}
$response = Invoke-RestMethod -Uri $url -Method put -Body $data -Headers $headers
$response
#Python version - 3.10
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
input_data = '''{
"task": {
"owner": {
"name": "Lincoln",
"id": "2301935913214789"
},
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"title": "Create SRS",
"priority": {
"name": "High",
"id": "2328502781662753"
},
"scheduled_end_time": {
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"additional_cost": "100",
"actual_end_time": {
"value": "1512974940000"
},
"actual_start_time": {
"value": "1421988300000"
},
"estimated_effort_days": "15",
"task_type": {
"name": "Implementation",
"id": "1904788127933512"
},
"scheduled_start_time": {
"value": "1421988300000"
},
"status": {
"name": "Open",
"id": "2028758908906679"
}
}
}''''
data = urlencode({"input_data":input_data}).encode()
httprequest = Request(url, headers=headers,data=data, method="PUT")
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"task": {
"percentage_completion": "30",
"estimated_effort_hours": "20",
"attachments": [],
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"project": {
"project_code": "test-project_code",
"id": "1835820918950914",
"title": "Create SRS",
"display_id": {
"display_value": "PJT-173",
"value": "173"
}
},
"title": "Create SRS",
"marked_technician": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "2020729935683450",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"overdue": false,
"additional_cost": "100",
"actual_end_time": {
"display_value": "Dec 11, 2017 12:19 PM",
"value": "1512974940000"
},
"id": "1850904131920933",
"actual_start_time": {
"display_value": "Jan 23, 2015 10:15 AM",
"value": "1421988300000"
},
"owner": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "2301935913214789",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"associated_entity": "project",
"module": "Milestone",
"priority": {
"color": "#ffffff",
"name": "High",
"id": "2328502781662753"
},
"created_by": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "2035980242195913",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"scheduled_end_time": {
"display_value": "Dec 11, 2017 12:19 PM",
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"deleted": false,
"milestone": {
"id": "1965493380535100"
},
"created_date": {
"display_value": "Nov 10, 2016 11:44 AM",
"value": "1478758440000"
},
"estimated_effort_days": "15",
"task_type": {
"color": "#ffffff",
"name": "Implementation",
"id": "1904788127933512"
},
"scheduled_start_time": {
"display_value": "Jan 23, 2015 10:15 AM",
"value": "1421988300000"
},
"status": {
"in_progress": false,
"internal_name": "test-internal_name",
"stop_timer": false,
"color": "#ffffff",
"name": "Open",
"id": "2028758908906679"
}
},
"response_status": {
"status_code": 2000,
"status": "success"
}
}
Get Milestone Task
This operation helps you get milestone task.
Url
<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}
Attributes
id (long)
Unique Identifier to identify the task
title (string)
Title of the task
description (html)
Contains description about the task
scheduled_start_time (datetime)
Date and time at which the task is scheduled to start
scheduled_end_time (datetime)
Date and time at which the task is scheduled to finish
actual_start_time (datetime)
Date and time at which the task has actually started
More Attributes Expand all
attachments (attachment)
Files that are attached to the task. Maximum of 10 files can be attached to a task.
$ curl -G <service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}\
-X GET\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
response = invokeurl
[
url: url
type: GET
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}"
$headers = @{ "Accept" = "application/vnd.manageengine.sdp.v3+json"
"Authorization" = "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"
"Content-Type" = "application/x-www-form-urlencoded"}
$response = Invoke-RestMethod -Uri $url -Method get -Headers $headers
$response
#Python version - 3.8
#This script requires requests module installed in python.
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
httprequest = Request(url, headers=headers)
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"task": {
"percentage_completion": "30",
"estimated_effort_hours": "20",
"attachments": [],
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"project": {
"project_code": "test-project_code",
"id": "2264111658147478",
"title": "Create SRS",
"display_id": {
"display_value": "PJT-173",
"value": "173"
}
},
"title": "Create SRS",
"marked_technician": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "1535323003932447",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"overdue": false,
"additional_cost": "100",
"actual_end_time": {
"display_value": "Dec 11, 2017 12:19 PM",
"value": "1512974940000"
},
"id": "1812392449864730",
"actual_start_time": {
"display_value": "Jan 23, 2015 10:15 AM",
"value": "1421988300000"
},
"owner": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "1769738715543843",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"associated_entity": "project",
"module": "Milestone",
"priority": {
"color": "#ffffff",
"name": "High",
"id": "1609361103967137"
},
"created_by": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "2277660139615760",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"scheduled_end_time": {
"display_value": "Dec 11, 2017 12:19 PM",
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"deleted": false,
"milestone": {
"id": "2211898409226666"
},
"estimated_effort": "22845",
"created_date": {
"display_value": "Nov 10, 2016 11:44 AM",
"value": "1478758440000"
},
"estimated_effort_days": "15",
"task_type": {
"color": "#ffffff",
"name": "Implementation",
"id": "2193248305423023"
},
"scheduled_start_time": {
"display_value": "Jan 23, 2015 10:15 AM",
"value": "1421988300000"
},
"status": {
"in_progress": false,
"internal_name": "test-internal_name",
"stop_timer": false,
"color": "#ffffff",
"name": "Open",
"id": "1857239324475714"
}
},
"response_status": {
"status_code": 2000,
"status": "success"
}
}
Get List Milestone Task
This operation helps you get all milestone tasks.
Url
<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks
Attributes
id (long)
Unique Identifier to identify the task
title (string)
Title of the task
description (html)
Contains description about the task
scheduled_start_time (datetime)
Date and time at which the task is scheduled to start
scheduled_end_time (datetime)
Date and time at which the task is scheduled to finish
actual_start_time (datetime)
Date and time at which the task has actually started
More Attributes Expand all
attachments (attachment)
Files that are attached to the task. Maximum of 10 files can be attached to a task.
$ curl -G <service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks\
-X GET\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"\
--data-urlencode input_data='{}'
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
input_data = {};
params = {"input_data":input_data};
response = invokeurl
[
url: url
type: GET
parameters:params
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks"
$headers = @{ "Accept" = "application/vnd.manageengine.sdp.v3+json"
"Authorization" = "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"
"Content-Type" = "application/x-www-form-urlencoded"}
$input_data = @'{}'@
$data = @{ 'input_data' = $input_data}
$response = Invoke-RestMethod -Uri $url -Method get -Body $data -Headers $headers
$response
#Python version - 3.8
#This script requires requests module installed in python.
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
input_data = '''{}'''
url += "?" + urlencode({"input_data":input_data})
httprequest = Request(url, headers=headers)
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"response_status": [
{
"status_code": 2000,
"status": "success"
}
],
"list_info": {
"has_more_rows": false,
"row_count": 1
},
"tasks": [
{
"percentage_completion": "30",
"estimated_effort_hours": "20",
"email_before": "3600000",
"description": "The SRS must contain all the requirements for the feature",
"project": {
"project_code": "test-project_code",
"id": "1979225958246685",
"title": "Create SRS",
"display_id": {
"display_value": "PJT-173",
"value": "173"
}
},
"title": "Create SRS",
"marked_technician": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "2076667701496890",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"overdue": false,
"additional_cost": "100",
"actual_end_time": {
"display_value": "Dec 11, 2017 12:19 PM",
"value": "1512974940000"
},
"id": "2145983913783948",
"actual_start_time": {
"display_value": "Jan 23, 2015 10:15 AM",
"value": "1421988300000"
},
"owner": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "2419092744655162",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"associated_entity": "project",
"module": "Milestone",
"priority": {
"color": "#ffffff",
"name": "High",
"id": "1481689150742475"
},
"created_by": {
"email_id": "lincoln@zmail.com",
"is_technician": false,
"sms_mail": "linc123@xys_sms.co",
"phone": "022-1234567890",
"name": "Lincoln",
"mobile": "1234567890",
"id": "2334112382067270",
"photo_url": "https://contacts.zoho.com/file?exp\u003d10\u0026ID\u003d123\u0026t\u003duser\u0026height\u003d60\u0026width\u003d60",
"is_vip_user": false,
"department": null
},
"scheduled_end_time": {
"display_value": "Dec 11, 2017 12:19 PM",
"value": "1512974940000"
},
"estimated_effort_minutes": "45",
"deleted": false,
"milestone": {
"id": "2319798696982459"
},
"estimated_effort": "22845",
"created_date": {
"display_value": "Nov 10, 2016 11:44 AM",
"value": "1478758440000"
},
"estimated_effort_days": "15",
"task_type": {
"color": "#ffffff",
"name": "Implementation",
"id": "2069098922455543"
},
"scheduled_start_time": {
"display_value": "Jan 23, 2015 10:15 AM",
"value": "1421988300000"
},
"status": {
"in_progress": false,
"internal_name": "test-internal_name",
"stop_timer": false,
"color": "#ffffff",
"name": "Open",
"id": "2372589271608930"
}
}
]
}
Delete Milestone Task
This operation helps you delete milestone task.
Url
<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}
$ curl <service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}\
-X DELETE\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: application/x-www-form-urlencoded"
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
response = invokeurl
[
url: url
type: DELETE
headers: headers
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}"
$headers = @{ "Accept" = "application/vnd.manageengine.sdp.v3+json"
"Authorization" = "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"
"Content-Type" = "application/x-www-form-urlencoded"}
$response = Invoke-RestMethod -Uri $url -Method delete -Headers $headers
$response
#Python version - 3.10
from urllib.error import HTTPError
from urllib.request import urlopen,Request
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}"
headers ={"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization" : "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
"Content-Type" : "application/x-www-form-urlencoded"}
httprequest = Request(url, headers=headers,method="DELETE")
try:
with urlopen(httprequest) as response:
print(response.read().decode())
except HTTPError as e:
print(e.read().decode())
{
"response_status": {
"status_code": 2000,
"status": "success"
}
}
Add Attachment To A Milestone Task
This operation helps you to Add attachment to a milestone task. Here, the input must be given as multipart - form data. Mandatory field: filename
Mandatory Fields :- filename
Url
<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}/_uploads
Attributes
filename (FILE)
The path of the file to be uploaded must be given with ’@’ at the beginning of the path.
addtoattachment (BOOLEAN)
Denotes whether to add the file as an attachment to the associated entity.
files (FILES)
The details of the file is contained here.
show attribute
size (LONG)
The size of the file that is uploaded.
content_type (STRING)
The type of the content of the file.
file_id (LONG)
The file_id is used to add that file as an attachment to the entity
$ curl <service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}/_uploads\
-X POST\
-H "Accept: application/vnd.manageengine.sdp.v3+json"\
-H "Authorization: Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"\
-H "Content-Type: multipart/form-data"\
-F "filename=@local_file_path" -F "addtoattachment=true"\
// Deluge Sample script
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}/_uploads";
headers = {"Accept":"application/vnd.manageengine.sdp.v3+json",
"Content-Type": "multipart/form-data",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"};
file_list = List();
param1 = {"paramName":"filename", "content":"local_file_path"};
file_list.add(param1);
response = invokeurl
[
url: url
type: POST
headers: headers
files: file_list
];
info response;
#Powershell version - 5.1
$url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}/_uploads"
$filePath = "local_file_path"
$addtoattachment = "true"
$boundary = [System.Guid]::NewGuid().ToString()
$headers = @{
"Accept" = "application/vnd.manageengine.sdp.v3+json"
"Authorization" = "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx"
"Content-Type" = "multipart/form-data; boundary=`"$boundary`""
}
$content = [System.Text.Encoding]::GetEncoding('iso-8859-1').GetString([System.IO.File]::ReadAllBytes($filePath))
$body = (
"--$boundary",
"Content-Disposition: form-data; name=`"addtoattachment`"`r`n",
"$addtoattachment",
"--$boundary",
"Content-Disposition: form-data; name=`"filename`"; filename=`"$(Split-Path $filePath -Leaf)`"",
"Content-Type: $([System.Web.MimeMapping]::GetMimeMapping($filePath))`r`n",
$content,
"--$boundary--`r`n"
) -join "`r`n"
$response = Invoke-RestMethod -Uri $url -Method post -Headers $headers -Body $body
$response
#Python version - 3.10
from urllib.error import HTTPError
from urllib.request import Request,urlopen
import mimetypes
import ntpath
import uuid
url = "<service domain|custom domain>/app/<portal>/api/v3/projects/{project_id}/milestones/{milestone_id}/tasks/{task_id}/_uploads"
file_path = "local_file_path"
add_to_attachments = "true"
boundary = uuid.uuid4()
headers = {
"Content-Type": f"multipart/form-data; boundary={boundary}",
"Accept": "application/vnd.manageengine.sdp.v3+json",
"Authorization": "Zoho-oauthtoken 1000.7xxx98976ab0xxxxxx19901e7551be57.bxxxx921ed64c04f79622bebcfxxxxxx",
}
with open(file_path, "rb") as f:
content = f.read()
body = (
bytes(f'--{boundary}\r\nContent-Disposition: form-data; name="addtoattachment"\r\n\r\n{add_to_attachments}\r\n', "utf-8")
+ bytes(f'--{boundary}\r\nContent-Disposition: form-data; name="filename"; filename="{ntpath.basename(file_path)}"\r\nContent-Type: {mimetypes.guess_type(file_path)[0] or "application/octet-stream"}\r\n\r\n', "utf-8")
+ content
+ bytes(f"\r\n--{boundary}--", "utf-8")
)
httprequest = Request(url, data=body, headers=headers)
try:
with urlopen(httprequest) as response:
print(response.read().decode("utf-8"))
except HTTPError as e:
print(e.read().decode())
{
"response_status": [
{
"status_code": 2000,
"status": "success"
}
],
"files": [
{
"content_type": "application/zip",
"size": "36171",
"file_id": "4001",
"name": "test_file.txt",
"content_url": "/projects/3421234312443133/milestones/3421234312443123/tasks/43234334341234564/_uploads/4001"
}
]
}