Сейчас как раз этим и занимаюсь - созданием задач через API. Вот мой недавний код по созданию задачи и прикреплению к ней файлов.
if (CModule::IncludeModule("tasks"))
{
$arFields = Array(
"TITLE" => $DATA["APPEND_FIELDS"]["Тема"],
"DESCRIPTION" => $DATA['REQTEXT'],
"RESPONSIBLE_ID" => $DATA['RESPONSIBLE'], //ответственный по задаче
"GROUP_ID" => 14 //в какую группу добавляем
);
$obTask = new CTasks;
$task_ID = $obTask->Add($arFields);
if($task_ID>0)
{
if(!empty($DATA['FILES']))
{
//подцепим еще файлы к задаче
foreach($DATA['FILES'] as $file)
{
$arFields = Array(
"TASK_ID" => $task_ID,
"FILE_ID" => $file
);
$obTaskFiles = new CTaskFiles;
$result = $obTaskFiles->Add($arFields);
if(!$result)
$files_problem=true;
}
}
return array($ID,$files_problem);
}
else
{
//if($e = $APPLICATION->GetException())
return $res;
}
}