我试图在WorkFront(以前称为AtTask)的项目中添加一个新任务。我已经成功地创建了一个CURL连接来发布请求,但是API只接受任务名称和持续时间值。任何dateTime字段都将被忽略。有什么建议我可以做什么来设置任务的截止日期或所需的完成日期吗?这一定很简单,但我却有点忽略了它。
$taskName = urlencode($_GET['newtask']);
$attask_newtask_url = 'https://[my server name]/attask/api/v4.0/task';
$now = time()+2880;
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $attask_newtask_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array(
'name'=>$taskName,
'projectID'=>[my project id],
'sessionID'=>$sessionID,
'duration'=> (720/1440),
'projectedStartDate'=>"07/27/2011"
)));
如有任何帮助,不胜感激。
谢谢
预计持续时间是一个不可编辑的系统计算字段。要更改开始日期,您需要编辑plannedStartDate。
例如,你的代码应该是。
$taskName = urlencode($_GET['newtask']);
$attask_newtask_url = 'https://[my server name]/attask/api/v4.0/task';
$now = time()+2880;
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $attask_newtask_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array(
'name'=>$taskName,
'projectID'=>[my project id],
'sessionID'=>$sessionID,
'duration'=> (720/1440),
'plannedStartDate'=>"07/27/2011"
)));