ПланФикс API: Задачи
Список функций для управления задачами
task.add Добавление задачи
Добавление:
<?xml version="1.0" encoding="UTF-8"?>
<request method="task.add">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<task>
<title><!-- Название задачи --></title>
<description><!-- О чем эта задача --></description>
<importance><!-- Срочность --></importance>
<status><!-- Статус --></status>
<checkResult>{true|false}</checkResult><!-- Является ли задача задачей с обязательной проверкой результата -->
<!-- Создатель задачи -->
<owner>
<id></id>
</owner>
<!-- Над задача -->
<parent>
<id></id>
</parent>
<!-- В рамках какого проекта поставлена задача -->
<project>
<id></id>
</project>
<!-- Контрагент -->
<client>
<id></id>
</client>
<startTime><!-- Время начала (приступить к работе) --></startTime>
<endTime><!-- Время окончания (закончить работу До) --></endTime>
<!-- список исполнителей -->
<Workers>
<!-- список пользователей -->
<Users>
<id><!-- идентификатор логина --></id>
<id></id>
<!-- ... -->
</Users>
<Groups>
<id></id>
<id></id>
<!-- ... -->
</Groups>
</Workers>
<!-- периодичность задачи, необязательный параметр -->
<periodicity>
<!-- ежедневно -->
<daily>
<type>{EVERY|EVERY_WORKING|AFTER_COMPLETE}</type>
<shift></shift>
</daily>
<!-- еженедельно -->
<weekly>
<type>{EVERY|AFTER_COMPLETE}</type>
<shift></shift>
<days><!-- список дней через запятую --></days>
</weekly>
<!-- ежемесячно -->
<monthly>
<type>{AFTER_COMPLETE|DAY_OF_MONTH|BY_CONDITION}</type>
<month></month>
<day></day>
<dayType></dayType>
</monthly>
</periodicity>
</task>
</request>
Добавляемые даты могут задаваться в двух форматах. Первый формат короткий, указывается только число, год и месяц. Второй формат - полный, дополнительно указывается время начала/завершения, если того требует задача. Периодичность - не обязательный параметр. Внутри тега periodicity может быть только один из перечисленных элементов: daily, weekly, monthly.
Ответ при удачном выполнении операции:
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<task>
<id></id>
</task>
</response>
task.update Обновление задачи
Запрос на обновление информации:
<?xml version="1.0" encoding="UTF-8"?>
<request method="task.update">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<task>
<id></id>
<title><!-- Название задачи --></title>
<description><!-- О чем эта задача --></description>
<importance><!-- Срочность --></importance>
<status><!-- Статус --></status>
<checkResult>{true|false}</checkResult><!-- Является ли задача задачей с обязательной проверкой результата -->
<!-- Создатель задачи -->
<owner>
<id></id>
</owner>
<!-- Над задача -->
<parent>
<id></id>
</parent>
<!-- В рамках какого проекта поставлена задача -->
<project>
<id></id>
</project>
<!-- Контрагент -->
<client>
<id></id>
</client>
<startTime><!-- Время начала (приступить к работе) --></startTime>
<endTime><!-- Время окончания (закончить работу До) --></endTime>
<!-- список исполнителей -->
<workers>
<!-- список пользователей -->
<users>
<id><!-- идентификатор логина --></id>
<id></id>
<!-- ... -->
</users>
<groups>
<id></id>
<id></id>
<!-- ... -->
</groups>
</workers>
<!-- периодичность задачи, необязательный параметр -->
<periodicity>
<!-- ежедневно -->
<daily>
<type>{EVERY|EVERY_WORKING|AFTER_COMPLETE}</type>
<shift></shift>
</daily>
<!-- еженедельно -->
<weekly>
<type>{EVERY|AFTER_COMPLETE}</type>
<shift></shift>
<days><!-- список дней через запятую --></days>
</weekly>
<!-- ежемесячно -->
<monthly>
<type>{AFTER_COMPLETE|DAY_OF_MONTH|BY_CONDITION}</type>
<month></month>
<day></day>
<dayType></dayType>
</monthly>
</periodicity>
</task>
</request>
Ответ при удачном выполнении запроса:
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<task>
<id></id>
</task>
</response>
task.get Получение карточки задачи
Запрос на получение:
<?xml version="1.0" encoding="UTF-8"?>
<request method="task.get">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<id></id>
</request>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<task>
<id></id>
<title><!-- Название задачи --></title>
<description><!-- О чем эта задача --></description>
<importance><!-- Срочность --></importance>
<status><!-- Статус --></status>
<checkResult>{true|false}</checkResult><!-- Является ли задача задачей с обязательной проверкой результата -->
<!-- Создатель задачи -->
<owner>
<id></id>
<name></name>
</owner>
<!-- Над задача -->
<parent>
<id></id>
</parent>
<!-- В рамках какого проекта поставлена задача -->
<project>
<id></id>
<title></title>
</project>
<!-- Контрагент -->
<client>
<id></id>
<name></name>
</client>
<beginDateTime><!-- Время создания задачи --></beginDateTime>
<startTime><!-- Время начала (приступить к работе) --></startTime>
<endTime><!-- Время окончания (закончить работу До) --></endTime>
<!-- Сквозной номер -->
<general></general>
<isOverdued><!-- Задача не выполнена в срок --></isOverdued>
<isCloseToDeadline><!-- Задача близка к дедлайну --></isCloseToDeadline>
<isNotAcceptedInTime><!-- Задача не принята вовремя --></isNotAcceptedInTime>
<!-- Помещена в избранные -->
<starred>{true|false}</starred>
</task>
</response>
task.getList Список задач
Получение списка задач:
<?xml version="1.0" encoding="UTF-8"?>
<request method="task.getList">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<!-- список какого пользователя мы хотим посмотреть -->
<login>
<id></id>
</login>
<target>
Входящие/исходящие/Все
</target>
<!-- фильтр по проекту, не обязательное поле -->
<project>
<id></id>
</project>
<sort></sort>
<status><!-- смотри константы --></status>
<pageCurrent></pageCurrent>
<pageSize></pageSize>
<filter></filter>
</request>
Параметр filter может принимать следующие значения: ACTIVE (активные задачи), OVERDUE (просроченные задачи), MY (мои задачи). Значение параметра может представлять комбинацию допустимых значений, например:
<filter>ACTIVE MY</filter>
Значения параметра target:
- all - все
- in - входящие, значение по умолчанию
- out - исходящие
Значения параметра sort смотри в Типы сортировок
task.attachFile Прикрепить файл (скорее всего перенесем эту функцию)
Константы
Срочность
- LOW - Не срочная
- AVERAGE - Обычная
- HIGH - Срочная
Статус
- DRAFT - Черновик
- ACTIVE - Активный но еще не принятый
- ACCEPTED - Принятый
- COMPLETED - Завершенный
- DELAYED - Отложенный
- REJECTED - Отклоненный
- DONE - Выполненный
- CANCELED - Отмененный
Переодичность, тип
- DAYLY - ежедневно
- WEEKLY - еженедельно
- MONTHLY - ежемесячно