Описание:
Получение токена для вызова методов API требующих авторизации.
Этот метод апи не требует авторизации.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
*email (строка) - Email зарегистрированного пользователя.
*password (строка) - Пароль зарегистрированного пользователя.
curl -d '{"email":"test@localhost", "password":"123321"}' -H "Content-Type: application/json" -X POST https://api.printdoc.io/v1/auth
{
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTQ5NDY0NjF9.ZgiK8xrAhYNJir2PysGkalT-B6gt1e4byprY9BcjS8o"
}
Полученный токен из поля «token», необходимо передавать в заголовке «Authorization» с префиксом «Token», для всех апи требующих авторизации.
Получим все шаблоны для авторизированного пользователя.
curl -i https://api.printdoc.io/v1/template -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTQ5NDY0NjF9.ZgiK8xrAhYNJir2PysGkalT-B6gt1e4byprY9BcjS8o"
Полученный токен из поля «token», имеет срок жизни - 1 час. После сгорания токена его необходимо получить заного.
{
"reasons": [
"Authentication failed."
],
"exception": "AuthenticationFailed"
}
Описание:
Получение всех активных шаблонов авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
curl -i https://api.printdoc.io/v1/template -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTQ5NDY0NjF9.ZgiK8xrAhYNJir2PysGkalT-B6gt1e4byprY9BcjS8o"
{
"message": "Your templates.",
"templates": [
{
"template_id": 1,
"template_name": "тестовый",
"template": "templates/test@localhost/2021-03-06/(1) Programma_provedenia_regionalnykh_UTS_24_11_2018.docx",
"update_date": "2021-03-06",
"category": [
{
"category_id": 1,
"category_name": "категория 1"
}
],
"linked_docs": [
{
"document_id": 2,
"document_name": "(2) (1) Programma_provedenia_regionalnykh_UTS_24_11_2018.docx"
},
{
"document_id": 1,
"document_name": "(1) (1) Programma_provedenia_regionalnykh_UTS_24_11_2018.docx"
}
]
}
]
}
Параметры:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Создание нового шаблона для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: FORMDATA
Параметры запроса:
* - Обязательное поле.
Если имя загружаемого файла шаблона уже есть в системе, к имени будет добавлен префикс (n).
Где n - количество повторений загружаемого имени файла.
Загруженному первый раз файлу шаблона, будет присвоен префикс: (1)
curl -X POST -F 'template_name="тестовый документ 2"' -F "category_id=1" -F "file=@nc-1611340958506.docx" https://api.printdoc.io/v1/template -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUwNTA0NTV9.nnIvlEP8cbuTCAu-Dd_v6rEkFoWag5-F-lN-mjqw1G8" -H "Content-Type: multipart/form-data"
{
"message": "The template тестовый документ 2 has been added.",
"template_id": 3,
"template_name": "тестовый документ 2",
"template_file": "(1) nc-1611340958506.docx",
"category": [
{
"category_id": 1,
"category_name": "категория 1"
}
]
}
Параметры:
{
"message": "XXX"
}
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Изменение существующего шаблона для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
Будут изменены только те поля, которые были указаны. Значения остальных полей, не поменяется.
Если Вы хотите убрать установленную у шаблона категорию, в поле «category_id», передайте значение - 0.
Для примера, поменяем название, ид категории, у шаблона с template_id=1.
curl -X PATCH -F 'template_name="новое название тестовый документ"' -F "category_id=2" -F "template_id=1" https://api.printdoc.io/v1/template -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUwNjE5MDd9.3P2i3_yHNyoiU3AXK-TeAZJhk9QIIoC8n9TCUcHU1bQ" -H "Content-Type: multipart/form-data"
{
"message": "The template новое название тестовый документ has been updated.",
"template_id": 1,
"template_name": "новое название тестовый документ",
"template_file": "(1) Programma_provedenia_regionalnykh_UTS_24_11_2018.docx",
"category": [
{
"category_id": 2,
"category_name": "категория 2"
}
]
}
Параметры:
{
"message": "XXX"
}
Где XXX:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Удаление существующего шаблона для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
*template_id (массив) - Ид шаблона(ов) для удаления
Можно удалить один или несколько шаблонов за один вызов.
delete_linked_docs (булево) - Удалить связанные с шаблоном документы
Удалим шаблон с template_id=1.
И связанные с этим шаблоном документы.
curl -d '{"template_id": [1], "delete_linked_docs": true}' -H "Content-Type: application/json" -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUwNjE5MDd9.3P2i3_yHNyoiU3AXK-TeAZJhk9QIIoC8n9TCUcHU1bQ" -X DELETE https://api.printdoc.io/v1/template
{
"message":"Templates (including documents) removed.",
"deleted_templates_id":[1],
"delete_linked_docs_id":[2,1]
}
Параметры:
{
"message": "XXX"
}
Где XXX:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Получение всех активных документов авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
curl -i https://api.printdoc.io/v1/docx -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTQ5NDY0NjF9.ZgiK8xrAhYNJir2PysGkalT-B6gt1e4byprY9BcjS8o"
{
"message":"Your documents.",
"documents":[
{
"document_id":3,
"document_name":"новый документ 1",
"template_id":3,
"category": [
{
"category_id": 1,
"category_name": "категория 1"
}
],
}
]
}
Параметры:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Создание нового документа для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
Создадим новый документ на основе шаблона с template_id=3.
Передадим в шаблон параметры: {"param1": [1,2,3], "param2": "Hello document."}, которые отразятся в документе.
curl -d '{"template_id": 3, "data": {"param1": [1,2,3], "param2": "Hello document."}}' -H "Content-Type: application/json" -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUxMDE2NjF9.Z3rO0DOgJrv3nREVQMu53EOhvWHexsqvV4XNMUX5ihU" -X POST https://api.printdoc.io/v1/docx
{
"message": "Document created. You can download by link in the browser.",
"download_by_name": "https://api.printdoc.io/v1/download/2-1-nc-1611340958506-docx/token/9924d9936dafd83175d7dc4fb06e9fd2",
"download_by_id": "https://api.printdoc.io/v1/download/4/token/9924d9936dafd83175d7dc4fb06e9fd2"
}
Параметры:
{
"message": "XXX"
}
Где XXX:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Изменение существующего документа для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
*document_id (число) - Ид документа для изменения
document_name (строка) - Новое название для существующего документа.
Название должно быть уникальным!
category_id (число) - Ид категории для документа.
Будут изменены только те поля, которые были указаны. Значения остальных полей, не поменяется.
Если Вы хотите убрать установленную у документа категорию, в поле «category_id», передайте значение - 0.
Для примера, поменяем название, у документа с document_id=3.
curl -d '{"document_id": 3, "document_name": "легко меняем название документа"}' -H "Content-Type: application/json" -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUxMDE2NjF9.Z3rO0DOgJrv3nREVQMu53EOhvWHexsqvV4XNMUX5ihU" -X PATCH https://api.printdoc.io/v1/docx
{
"message":"Document updated.",
"document_id":3,
"document_name":"легко меняем название документа",
"category": [
{
"category_id": 2,
"category_name": "категория 2"
}
]
}
Параметры:
{
"message": "XXX"
}
Где XXX:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Удаление существующего документа для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
*document_id (массив) - Ид шаблона(ов) для удаления
Можно удалить один или несколько документов за один вызов.
Удалим документ с document_id=3.
curl -d '{"document_id": [3]}' -H "Content-Type: application/json" -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUwNjE5MDd9.3P2i3_yHNyoiU3AXK-TeAZJhk9QIIoC8n9TCUcHU1bQ" -X DELETE https://api.printdoc.io/v1/docx
{
"message":"Documents removed.",
"deleted_documents_id":[3]
}
Параметры:
{
"message": "XXX"
}
Где XXX:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Получение всех категорий авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
curl -i https://api.printdoc.io/v1/category -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTQ5NDY0NjF9.ZgiK8xrAhYNJir2PysGkalT-B6gt1e4byprY9BcjS8o"
{
"message":"Your categories.",
"categories":[
{
"category_id":2,
"category_name":"Категория 2"
},
{
"category_id":1,
"category_name":"Категория 1"
}
]
}
Параметры:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Создание новой категории для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
*category_name (строка) - Название новой категории.
Название должно быть уникальным!
Создадим новую категорию с названием: Супер-категория.
curl -d '{"category_name": "Супер-категория"}' -H "Content-Type: application/json" -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUxMDE2NjF9.Z3rO0DOgJrv3nREVQMu53EOhvWHexsqvV4XNMUX5ihU" -X POST https://api.printdoc.io/v1/category
{
"message":"Category (Супер-категория) created.",
"category_id":3,
"category_name":"Супер-категория"
}
Параметры:
{
"message": "XXX"
}
Где XXX:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Изменение существующей категории для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
*category_id (число) - Ид категории для изменения
*category_name (строка) - Новое название для существующей категории.
Название должно быть уникальным!
Для примера, поменяем название, у категории с category_id=3.
curl -d '{"category_id": 3, "category_name": "новое название для категории"}' -H "Content-Type: application/json" -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUxMDE2NjF9.Z3rO0DOgJrv3nREVQMu53EOhvWHexsqvV4XNMUX5ihU" -X PATCH https://api.printdoc.io/v1/category
{
"message":"Category updated.",
"category_id":3
}
Параметры:
{
"message": "XXX"
}
Где XXX:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}
Описание:
Удаление существующей категории для авторизированного пользователя.
Этот метод апи требует авторизации.
Этот метод апи требует передачи заголовка «Authorization» с токеном.
Тип: JSON
Параметры запроса:
* - Обязательное поле.
*category_id (массив) - Ид категории(й) для удаления
Можно удалить одну или несколько категорий за один вызов.
Удалим категорию с category_id=3.
curl -d '{"category_id": [3]}' -H "Content-Type: application/json" -H "Authorization: Token eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MTUwNjE5MDd9.3P2i3_yHNyoiU3AXK-TeAZJhk9QIIoC8n9TCUcHU1bQ" -X DELETE https://api.printdoc.io/v1/category
{
"message":"Category deleted.",
"category_id":[3]
}
Параметры:
{
"message": "XXX"
}
Где XXX:
{
"reasons": [
"Signature has expired."
],
"exception": "Unauthorized"
}
{
"reasons": [
"Authorization header not present."
],
"exception": "Unauthorized"
}