|
|
(не показано 9 промежуточных версий 3 участников) |
Строка 1: |
Строка 1: |
| | {{#seo: |
| | |title=ПланФикс API: Работа с файлами |
| | |titlemode=append |
| | |keywords=планфикс, файлы, документы, апи, api |
| | |description=файлы api |
| | }} |
| | |
| Функции для работы с файлами: | | Функции для работы с файлами: |
| #[[ПланФикс API file.download|??file.download / Скачать файл??]] | | #[[ПланФикс API file.upload|file.upload / Добавить файл]] |
| | <!-- #[[ПланФикс API file.uploadNewVersion|file.uploadNewVersion / Загрузить новую версию файла]] --> |
| | #[[ПланФикс API file.download|file.download / Скачать файл]] |
| #[[ПланФикс API file.get|file.get / Получение информации о файле]] | | #[[ПланФикс API file.get|file.get / Получение информации о файле]] |
| #[[ПланФикс API file.getListForProject|file.getListForProject / Список файлов в проекте]] | | #[[ПланФикс API file.getListForProject|file.getListForProject / Список файлов в проекте]] |
Строка 7: |
Строка 16: |
| #[[ПланФикс API file.getListForClient|file.getListForClient /Список файлов контрагента]] | | #[[ПланФикс API file.getListForClient|file.getListForClient /Список файлов контрагента]] |
| #[[ПланФикс API file.getHistory|file.getHistory / Получение истории по файлу]] | | #[[ПланФикс API file.getHistory|file.getHistory / Получение истории по файлу]] |
| #[[ПланФикс API file.uploadNewVersion|file.uploadNewVersion / Загрузить новую версию файла]] | | #[[ПланФикс API file.delete|file.delete / Удаление файлов]] |
| #[[ПланФикс API file.getGroupList|file.getGroupList / Список доступных групп файлов]]
| |
| #[[ПланФикс API file.getCountForGroups|file.getCountForGroups / Получение количества файлов для групп]]
| |
| | |
| == file.download / скачать файл ==
| |
| (!Под вопросом). Позволяет скачать файл.
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.download">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <file>
| |
| <id></id>
| |
| </file>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответом будет не стандартный пакет в формате XML а прямой файл. Поэтому надо будет парсить HTTP-ответ. Типа 200 - все ок, 403 - доступ к файлу жапрещен, 404 - фалй не найден.
| |
| | |
| | |
| == file.get / получение информации о файле ==
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.get">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <file>
| |
| <id></id>
| |
| </file>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответ:
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <response status="ok">
| |
| <file>
| |
| <id></id>
| |
| <name>имя файла</name>
| |
| <version>версия</version>
| |
| <description>описание</description>
| |
| <date>дата загрузки файла</date>
| |
| <sourceType>смотри раздел Константы. Типы файлов.</sourceType>
| |
| <size>размер в байтах</size>
| |
| | |
| <task>
| |
| <id></id>
| |
| <title></title>
| |
| </task>
| |
| | |
| <project>
| |
| <id></id>
| |
| <title></title>
| |
| </project>
| |
| <!-- пользователь который загрузил данный файл -->
| |
| <user>
| |
| <id></id>
| |
| <name></name>
| |
| </user>
| |
| </file>
| |
| </response>
| |
| </source>
| |
| | |
| == file.getListForProject / список файлов ==
| |
| Получение списка файлов для проекта.
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.getListForProject">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <project>
| |
| <id></id>
| |
| </project>
| |
| <fileGroup></fileGroup>
| |
| <pageCurrent></pageCurrent>
| |
| <pageSize></pageSize>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| Параметр '''fileGroup''' - не обязательный.
| |
| | |
| Ответ:
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <response status="ok">
| |
| <files count="x" totalCount="x">
| |
| <file>
| |
| <id></id>
| |
| <name>имя файла</name>
| |
| <version>версия</version>
| |
| <description>описание</description>
| |
| <date>дата загрузки файла</date>
| |
| <sourceType>смотри раздел Константы. Типы файлов.</sourceType>
| |
| <size>размер в байтах</size>
| |
| | |
| <task>
| |
| <id></id>
| |
| <title></title>
| |
| </task>
| |
| | |
| <project>
| |
| <id></id>
| |
| <title></title>
| |
| </project>
| |
| <!-- пользователь который загрузил данный файл -->
| |
| <user>
| |
| <id></id>
| |
| <name></name>
| |
| </user>
| |
| </file>
| |
| <file>
| |
| <!-- ... -->
| |
| </file>
| |
| <!-- ... -->
| |
| </files>
| |
| </response>
| |
| </source>
| |
| Формат такого ответа получают все запросы на список файлов.
| |
| | |
| | |
| == file.getListForTask / список файлов для задачи ==
| |
| Получение списка файлов для задачи.
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.getListForTask">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <task>
| |
| <id></id>
| |
| </task>
| |
| <fileGroup></fileGroup>
| |
| <pageCurrent></pageCurrent>
| |
| <pageSize></pageSize>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответ: имеет такой же формат как и в функции '''file.getListForProject'''
| |
| | |
| == file.getListForUser / список файлов загруженных пользователем ==
| |
| Получение списка файлов которые загрузил пользователь. Данную функцию можно вызывать с правами администратора для любого пользователя, либо получать список собственных файлов.
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.getListForUser">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <user>
| |
| <id></id>
| |
| </user>
| |
| <fileGroup></fileGroup>
| |
| <pageCurrent></pageCurrent>
| |
| <pageSize></pageSize>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответ: имеет такой же формат как и в функции '''file.getListForProject'''
| |
| | |
| == file.getListForClient /список файлов контрагента ==
| |
| Получение списка файлов для контрагента/клиента.
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.getListForClient">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <client>
| |
| <id></id>
| |
| </client>
| |
| <fileGroup></fileGroup>
| |
| <pageCurrent></pageCurrent>
| |
| <pageSize></pageSize>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответ: имеет такой же формат как и в функции '''file.getListForProject'''
| |
| | |
| | |
| == file.getHistory / получение истории по файлу ==
| |
| Позволяет получить полную историю по изменениям файла.
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.getHistory">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <file>
| |
| <id></id>
| |
| </file>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответ: имеет такой же формат как и в функции '''file.getListForProject'''
| |
| | |
| == file.uploadNewVersion / загрузить новую версию файла ==
| |
| Функция позволяет загрузить новую версию файла.
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.uploadNewVersion">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <file>
| |
| <id>идентификатор обновляемого файла</id>
| |
| <description>новое описание файла</description>
| |
| <name></name>
| |
| <!-- тело файла закодированное base64 -->
| |
| <body></body>
| |
| </file>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответ:
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <response status="ok">
| |
| <file>
| |
| <id></id>
| |
| </file>
| |
| </response>
| |
| </source>
| |
| | |
| | |
| == file.getGroupList / список доступных групп файлов ==
| |
| Получаем текстовое описание групп файлов которое у нас присутствует.
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.getGroupList">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответ:
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <response status="ok">
| |
| <fileGroups count="x" totalCount="x">
| |
| <fileGroup>
| |
| <id></id>
| |
| <name></name>
| |
| </fileGroup>
| |
| <fileGroup>
| |
| <!-- ... -->
| |
| </fileGroup>
| |
| <!-- ... -->
| |
| </fileGroups>
| |
| </response>
| |
| </source>
| |
| | |
| | |
| == file.getCountForGroups / получение количества файлов для групп ==
| |
| Результатом выполнения функции будет список групп и количества файлов в ней
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <request method="file.getGroupList">
| |
| <account><!-- имя аккаунта --></account>
| |
| <sid><!-- ключ сессии, полученный после аутентификации --></sid>
| |
| <!-- следующие параметры взаимо исключающие -->
| |
| <!-- для задачи -->
| |
| <task>
| |
| <id></id>
| |
| </task>
| |
| <!-- в рамках проекта -->
| |
| <project>
| |
| <id></id>
| |
| </project>
| |
| <!-- для контрагента -->
| |
| <client>
| |
| <id></id>
| |
| </client>
| |
| <!-- для указанного опльзователя -->
| |
| <user>
| |
| <id></id>
| |
| </user>
| |
| <signature></signature>
| |
| </request>
| |
| </source>
| |
| | |
| Ответ:
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| <response status="ok">
| |
| <fileGroups count="x" totalCount="x">
| |
| <fileGroup>
| |
| <id></id>
| |
| <name></name>
| |
| <fileCount>количество файлов в группе</fileCount>
| |
| </fileGroup>
| |
| <fileGroup>
| |
| <!-- ... -->
| |
| </fileGroup>
| |
| <!-- ... -->
| |
| </fileGroups>
| |
| </response>
| |
| </source>
| |
| | |
|
| |
|
| == Константы ==
| |
| === Типы файлов ===
| |
| *'''FILESYSTEM''' - обычный файл
| |
| *'''INTERNET''' - внешний файл, хранящийся на внешнем ресурсе.
| |
|
| |
|
| == Перейти == | | == Перейти == |
| [[ПланФикс API]] | | [[Список функций]] |