ПланФикс API: Проекты: различия между версиями

Материал из Planfix
Перейти к: навигация, поиск
Нет описания правки
 
(не показано 16 промежуточных версий 3 участников)
Строка 1: Строка 1:
Список функций позволяющий манипулировать с проектами.
{{#seo:
|title=ПланФикс API: Проекты
|titlemode=append
|keywords=планфикс, проекты, api, апи
|description=проекты api
}}


Функции позволяют управлять проектом:
#[[ПланФикс API project.add|project.add / Создать проект]]
#[[ПланФикс API project.update|project.update / Обновить данные по проекту]]
#[[ПланФикс API project.get|project.get / Получить информацию о проекте]]
#[[ПланФикс API project.getList|project.getList / Список проектов]]


== progect.add Создать проект ==
<source lang="xml">
<request method="project.add">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<project>
<title><!-- Обязательное поле --></title>
<description></description>
<!-- Автор проекта -->
<owner>
<id></id>
</owner>
<!-- контрагент -->
<client>
<id></id>
</client>
<!-- статус проекта -->
<status></status>
<hidden>{true|false}</hidden><!-- Скрытый -->
<HasEndDate>{true|false}</HasEndDate>
<EndDate><!-- Дата завершения проекта --></EndDate>
</project>
</request>
</source>
Если не передать автора (owner), или указать id=0, то будет использован в качестве автора пользователь текущей сессии. Контрагент не обязательный параметр.
Ответ при успешном создании проекта:
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<project>
<id></id>
</project>
</response>
</source>
== project.update Обновить данные по проекту ==
Запрос на обновление данных:
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<request method="project.update">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<project>
<id></id>
<title></title>
<description></description>
<!-- Автор проекта -->
<owner>
<id></id>
</owner>
<!-- контрагент -->
<client>
<id></id>
</client>
<!-- статус проекта -->
<status></status>
<hidden>{true|false}</hidden><!-- Скрытый -->
<HasEndDate>{true|false}</HasEndDate>
<EndDate><!-- Дата завершения проекта --></EndDate>
</project>
</request>
Результатом удачного выполнения запроса является следующий ответ:
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<project>
<id></id>
</project>
</response>
</sorce>
</source>
== project.get Получить информацию о проекте ==
Запрос на получение информации о проекте
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<request method="project.get">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<id><!-- идентификатор проекта --></id>
</request>
</source>
Ответ:
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<project>
<id></id>
<title></title>
<description></description>
<!-- Автор проекта -->
<owner>
<id></id>
<name></name>
</owner>
<!-- контрагент -->
<client>
<id></id>
<name></name>
</client>
<!-- статус проекта -->
<status></status>
<hidden>{true|false}</hidden><!-- Скрытый -->
<hasEndDate>{true|false}</hasEndDate>
<endDate><!-- Дата завершения проекта --></endDate>
<beginDate><!-- дата создания проекта --></beginDate>
<isOverdued><!-- просроченный ли проект --></isOverdued>
<!-- осталось 25% времени до завершения или прошло 75% отведенного времени на выполнение его -->
<isCloseToDeadline>{true|false}</isCloseToDeadline>
</project>
</response>
</source>
В противном случае будет возвращен ответ с ошибкой.
== project.getList Список проектов ==
Функция для получения списка проектов
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<request method="project.getList">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<login>
<id></id>
</login>
<target><!-- Вкладки --></target>
<status><!-- Статусы проектов --></status>
<sortType><!-- Типы сортировок --></sortType>
<pageCurrent><!-- Текущая страница, начало с 1 --></pageCurrent>
<pageSize><!-- Размер страницы, какое количество необходимо показать/получить --></pageSize>
<client>
<id></id>
</client>
</request>
</source>
Все параметры, за исключением '''account''', '''sid''', не являются обязательными. Если опустить параметр '''login''', то будет получен список проектов доступных для текущего пользователя, необходимо помнить что только администраторы могут смотреть проекты других участников. Допустимые значения для target, status, sortType.
== Используемые константы ==
=== Статусы проектов ===
*'''DRAFT''' - черновик
*'''COMPLETED''' - завершен
*'''ACTIVE''' - активен
== Возвращаемые ошибки ==
* 2001 - проект не существует


== Перейти ==
== Перейти ==
[[ПланФикс API]]
*[[Список функций]]

Текущая версия от 11:22, 18 ноября 2017