Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/carono/turbotext-api
Неофициальный клиент сайта www.turbotext.ru
https://github.com/carono/turbotext-api
api client php
Last synced: about 5 hours ago
JSON representation
Неофициальный клиент сайта www.turbotext.ru
- Host: GitHub
- URL: https://github.com/carono/turbotext-api
- Owner: carono
- License: mit
- Created: 2017-10-24T11:50:07.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2020-06-15T06:17:58.000Z (over 4 years ago)
- Last Synced: 2024-04-16T02:37:03.796Z (7 months ago)
- Topics: api, client, php
- Language: PHP
- Homepage: https://bonica.pro
- Size: 62.5 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
[![Latest Stable Version](https://poser.pugx.org/carono/turbotext-api/v/stable)](https://packagist.org/packages/carono/turbotext-api)
[![Total Downloads](https://poser.pugx.org/carono/turbotext-api/downloads)](https://packagist.org/packages/carono/turbotext-api)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/carono/turbotext-api/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/carono/turbotext-api/?branch=master)Введение
========
Данный клиент разработан для работы с сайтом https://www.turbotext.ru.
Класс клиента генерируется автоматически на основе документации https://www.turbotext.ru/api-info/
Разработано по заказу https://bonica.proИнсталяция
==========
`composer require carono/turbotext-api`Использование
=============
```php
// Получение баланса
$client = new \carono\turbotext\Client();
$client->apiKey = 'your-api-key';
$response = $client->order()->getBalance();
// Создание заказа
$config = new OrderConfig();
$config->order_title = 'Заголовок';
$config->order_type = 1;
$config->folder_id = 0;
$config->order_description = 'Описание';
$config->order_text = 'Текст';
$config->order_size_from = 500;
$config->order_size_to = 600;
$config->order_price = 30;
$response = $client->order()->createOrder($config);
```|Метод|Описание
|-----|--------
|$client->order()|Работа с заказами на копирайтинг/рерайтинг/переводы
|$client->user()|Работа со списками исполнителей
|$client->microTask()|Работа с микрозадачами
|$client->message()|Работа с личными сообщениямиРабота с заказами на копирайтинг/рерайтинг/переводы
===================================================
```php
$client->order();
```|Метод|Описание|Входные данные|Выходные данные
|-----|--------|--------------|---------------
|getFolders|Возвращает все папки пользователя||**folders** (array) - массив с папками
**id** (int) - уникальный идентификатор папки
**name** (text) - имя папки
|getBalance|Возвращает количество доступных средств||**balance** (float) - количество денег на балансе
**blocked_money** (float) - количество замороженных средств для выполнения заказов и микрозадач
|createFolder|Создаёт новую папку|**name** (text) - имя новой папки|**folder_id** (int) - уникальный идентификатор созданной папки
|getOrders|Возвращает все заказы пользователя в папке folder_id. Если folder_id не указано, возвращает все заказы. |**folder_id** (text) - уникальный идентификатор папки (необязательный параметр)|**orders** (array) - массив с заказами
**id** (int) - уникальный идентификатор (номер) заказа
**name** (text) - название заказа
**price** (float) - стоимость за 1000 знаков
**status** (int) - статус заказа (1 - в поиске исполнителя, 2 – в работе, 3 – ожидает проверки, 4 – на доработке, 5 – одобрен и оплачен)
|createOrder|Создаёт новый заказ|**order_title** (text) - название заказа
**order_type** (int) - тип заказа (1 - копирайтинг, 2 - рерайтинг)
**order_description** (text) - задание для копирайтера, описание заказа
**order_text** (text) - статья для рерайта, если вы заказываете рерайтинг
**order_size_from** (int) - минимальное количество знаков, которое должно быть в тексте (от 300 до 98000)
**order_size_to** (int) - максимальное количество знаков, которое должно быть в тексте (от 300 до 99000)
**folder_id** (int) - идентификатор папки, в которую нужно добавить заказ
**order_unique** (text) - значение уникальности текста. Необязательный параметр
**order_time** (int) - количество часов за которое нужно выполнить заказ (от 2 до 96). Необязательный параметр, значение по умолчанию - 10.
**order_price_for_total** (int) - Нужна ли стоимость за весь заказ? 1 - да, 0 - стоимость за 1000 символов. Необязательный параметр, значение по умолчанию - 0.
**order_price** (int) - стоимость за 1000 знаков с пробелами (копирайтинг от 29, рерайтинг от 22), если order_price_for_total равен 1, то необходимо указать стоимость за весь заказ
**order_who_can_work** (int) - кто может выполнить заказ. 0 - любой исполнитель 1 - только исполнитель определённого уровня (нужно указать уровень в поле order_who_can_work_value) 2 - только исполнители из белого списка (нужно указать id списка в поле order_who_can_work_value) 3 - только один определённый исполнитель (нужно указать id исполнителя в поле order_who_can_work_value). Параметр необязательный. Значение по умолчанию - 0.
**order_who_can_work_value** (int) - в случае, если вы ограничили заказ, сделав его доступным определённой группе исполнителей параметром order_who_can_work, в этом параметре необходимо уточнить свой выбор: В случае, если вы хотите сделать заказ доступным только исполнителям определённого уровня, то укажите в этом параметре цифру, соответствующую уровню (1 - новичок, 2 - базовый уровень, 3 - высокий уровень, 4 - профи). В случае, если вы хотите сделать заказ доступным только для определённого белого списка, то укажите id списка в этом поле. В случае, если вы хотите сделать персональный заказ только для одного конкретного исполнителя, то укажите в этом поле его id
**order_need_anons** (int) - Нужен ли вам анонс? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**order_need_corrector** (int) - Нужно ли проверить текст корректором? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**order_need_unique** (int) - Нужно ли проверить текст на уникальность? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**order_need_image** (int) - Нужно ли прикрепить к заказу картинку? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**draft** (int) - Сохранить заказ как черновик? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**time_to_check** (int) - количество часов на проверку заказа (от 1 до 180). Необязательный параметр, значение по умолчанию - 72.
**keywords** (text) - ключевые слова (до 5000 символов). Необязательный параметр.|**order_id** (int) - уникальный идентификатор созданного заказа
|createTranslateOrder|Создаёт новый заказ на перевод|**order_title** (text) - название заказа
**order_original_text** (text) - статья для перевода
**lang1** (int) - язык оригинала: 1 - Русский 2 - Английский 3 - Украинский 4 - Французский 5 - Немецкий 6 - Испанский 7 - Итальянский 8 - Китайский
**lang2** (text) - язык на выходе 1 - Русский 2 - Английский 3 - Украинский 4 - Французский 5 - Немецкий 6 - Испанский 7 - Итальянский 8 - Китайский
**order_description** (text) - задание для переводчика, описание заказа
**order_size_from** (int) - минимальное количество знаков, которое должно быть в тексте (от 300 до 98000)
**order_size_to** (int) - максимальное количество знаков, которое должно быть в тексте (от 300 до 99000)
**order_time** (int) - количество часов за которое нужно выполнить заказ (от 2 до 96). Необязательный параметр, значение по умолчанию - 10.
**order_who_can_work** (int) - кто может выполнить заказ. 0 - любой исполнитель 1 - только исполнитель определённого уровня (нужно указать уровень в поле order_who_can_work_value) 2 - только исполнители из белого списка (нужно указать id списка в поле order_who_can_work_value) 3 - только один определённый исполнитель (нужно указать id исполнителя в поле order_who_can_work_value). Параметр необязательный. Значение по умолчанию - 0.
**order_who_can_work_value** (int) - в случае, если вы ограничили заказ, сделав его доступным определённой группе исполнителей параметром order_who_can_work, в этом параметре необходимо уточнить свой выбор: В случае, если вы хотите сделать заказ доступным только исполнителям определённого уровня, то укажите в этом параметре цифру, соответствующую уровню (1 - новичок, 2 - базовый уровень, 3 - высокий уровень, 4 - профи). В случае, если вы хотите сделать заказ доступным только для определённого белого списка, то укажите id списка в этом поле. В случае, если вы хотите сделать персональный заказ только для одного конкретного исполнителя, то укажите в этом поле его id
**order_price_for_total** (int) - Нужна ли стоимость за весь заказ? 1 - да, 0 - стоимость за 1000 символов. Необязательный параметр, значение по умолчанию - 0.
**order_price** (int) - стоимость за 1000 знаков с пробелами (от 49), если order_price_for_total равен 1, то необходимо указать стоимость за весь заказ
**folder_id** (int) - идентификатор папки, в которую нужно добавить заказ
**order_need_anons** (int) - Нужен ли вам анонс? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**order_need_unique** (int) - Нужно ли проверить текст на уникальность? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**order_need_image** (int) - Нужно ли прикрепить к заказу картинку? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**draft** (int) - Сохранить заказ как черновик? 1 - да, 0 - нет. Необязательный параметр, значение по умолчанию - 0
**time_to_check** (int) - количество часов на проверку заказа (от 1 до 180). Необязательный параметр, значение по умолчанию - 72.
**order_unique** (text) - значение уникальности текста. Необязательный параметр|**order_id** (int) - уникальный идентификатор созданного заказа
|getOrder|Получает информацию о заказе order_id|**order_id** (int) - уникальный идентификатор (номер) заказа.|**name** (text) - название заказа
**price** (float) - стоимость за 1000 знаков
**status** (int) - статус заказа (1 - в поиске исполнителя, 2 – в работе, 3 – ожидает проверки, 4 – на доработке, 5 – одобрен и оплачен)
**worker_id** (int) - уникальный идентификатор исполнителя, работающего над заказом. Если равно 0, значит над заказом никто не работает.
**description** (text) - задание для копирайтера, описание заказа
**date_add** (datetime) - дата публикации заказа
**date_upd** (datetime) - дата последнего обновления заказа
**type** (int) - тип заказа (1 - копирайтинг, 2 - рерайтинг)
**min_ch** (int) - минимальное необходимое количество символов
**max_ch** (int) - максимальное необходимое количество символов
**title** (text) - заголовок статьи
**anons** (text) - анонс
**text** (text) - текст статьи
**symbol_count** (int) - количество символов в тексте статьи
**tags** (text) - теги
**category** (text) - категория, выбранная копирайтером
**image** (text) - картинка, прикреплённая к заказу
**unique** (float) - значение уникальности текста (если была заказана проверка)
**order_time** (int) - количество часов на выполнение заказа
|deleteOrder|Удаляет заказ order_id|**order_id** (int) - уникальный идентификатор (номер) заказа.|
|rejectOrder|Отправить заказ на доработку|**order_id** (int) - уникальный идентификатор (номер) заказа
**text** (text) - причина, по которой вы отправляете заказ на доработку|
|declineOrder|Отклонить заказ|**order_id** (int) - уникальный идентификатор (номер) заказа
**text** (text) - причина, по которой вы отказываетесь от заказа|
|acceptOrder|Принять заказ|**rating** (int) - оценка для заказа: 5 - Отлично 4 - Неплохо 3 - Средненько 2 - Плохо 1 - Никуда не годится Параметр необязательный. Значение по умолчанию - 0. |
|moveOrder|Переместить заказ в определённую папку|**order_id** (int) - уникальный идентификатор (номер) заказа
**folder_id** (int) - уникальный идентификатор папки, в которую нужно переместить заказ. |
|getConversation|Просмотереть общение по заказу|**order_id** (int) - уникальный идентификатор (номер) заказа|**messages_array** (array) - массив, содержащий список сообщений. Каждый элемент массива содержит:
**from_id** (int) - ID пользователя от кого сообщение
**date** (date) - дата отправки
**text** (text) - текст сообщения
|unassignAuthor|Открепить заказ от просрочившего исполнителя||
|extendTimeOrder|Продлить время заказа||
|editOrder|Редактировать заказ|**order_price_for_total** (int) - Нужна ли стоимость за весь заказ? 1 - да, 0 - стоимость за 1000 символов. Необязательный параметр, значение по умолчанию - 0.
**order_price** (int) - стоимость за 1000 знаков с пробелами (копирайтинг от 29, рерайтинг от 22), если order_price_for_total равен 1, то необходимо указать стоимость за весь заказ
**order_unique** (text) - требования к уникальности
**order_who_can_work** (int) - кто может выполнить заказ. 0 - любой исполнитель 1 - только исполнитель определённого уровня (нужно указать уровень в поле order_who_can_work_value) 2 - только исполнители из белого списка (нужно указать id списка в поле order_who_can_work_value) 3 - только один определённый исполнитель (нужно указать id исполнителя в поле order_who_can_work_value).
**order_who_can_work_value** (int) - в случае, если вы ограничили заказ, сделав его доступным определённой группе исполнителей параметром order_who_can_work, в этом параметре необходимо уточнить свой выбор: В случае, если вы хотите сделать заказ доступным только исполнителям определённого уровня, то укажите в этом параметре цифру, соответствующую уровню 1 - новичок 2 - базовый уровен 3 - высокий уровень 4 - профи В случае, если вы хотите сделать заказ доступным только для определённого белого списка, то укажите id списка в этом поле. В случае, если вы хотите сделать персональный заказ только для одного конкретного исполнителя, то укажите в этом поле его id |Работа со списками исполнителей
===============================
```php
$client->user();
```|Метод|Описание|Входные данные|Выходные данные
|-----|--------|--------------|---------------
|getUser|Возвращает информацию о пользователе|**user_id** (int) - уникальный идентификатор пользователя|**user_name** (text) - ник пользователя
**user_rating** (int) - рейтинг пользователя в системе
**user_type** (int) - тип пользователя (1 - исполнитель, 2 - заказчик, 3 - корректор)
|getLists|Возвращает все белые списки пользователя||**lists** (array) - массив со списками
**id** (int) - уникальный идентификатор списка
**name** (text) - имя списка
|getList|Возвращает всех исполнителей, которые присутствуют в определённом белом списке|**list_id** (int) - уникальный идентификатор списка|**users** (array) - массив с исполнителями
**user_id** (int) - уникальный идентификатор пользователя
**name** (string) - ник пользователя
|addToList|Добавляет пользователя в список|**list_id** (int) - уникальный идентификатор списка, в который нужно добавить пользователя
**user_id** (int) - уникальный идентификатор пользователя|
|removeFromList|Удаляет пользователя из списка|**list_id** (int) - уникальный идентификатор списка, из которого нужно удалить пользователя
**user_id** (int) - уникальный идентификатор пользователя|
|addToBlackList|Добавляет пользователя в черный список|**user_id** (int) - уникальный идентификатор пользователя|
|removeFromBlackList|Удаляет пользователя из черного списка|**user_id** (int) - уникальный идентификатор пользователя|Работа с микрозадачами
======================
```php
$client->microTask();
```|Метод|Описание|Входные данные|Выходные данные
|-----|--------|--------------|---------------
|getMicrotasksFolders|Возвращает все папки для микрозадач||**folders** (array) - массив с папками
**id** (int) - уникальный идентификатор папки
**name** (text) - имя папки
|createMicrotasksFolder|Создаёт новую папку для микрозадач|**name** (text) - имя новой папки|**folder_id** (int) - уникальный идентификатор созданной папки
|getMicrotasksOrders|Возвращает все микрозадачи в папке folder_id. Если folder_id не указано, возвращает все микрозадачи. |**folder_id** (int) - уникальный идентификатор папки (необязательный параметр)|**orders** (array) - массив с микрозадачами
**id** (int) - уникальный идентификатор (номер) задачи
**name** (text) - название задачи
**price** (float) - стоимость за выполнение задачи
**active** (int) - статус задание (1 - активно, 0 – выключено)
|createMicrotask|Создаёт новую микрозадачу|**microtask_title** (text) - название микрозадачи
**microtask_descr** (text) - подробное описание задания
**microtask_price** (int) - стоимость задания в рублях (целое число больше или равное 2)
**microtask_folder_id** (int) - идентификатор папки, в которую нужно добавить микрозадачу
**microtask_time** (int) - количество часов за которое нужно выполнить микрозадачу (от 1 до 240). Необязательный параметр, значение по умолчанию - 12.
**limit_per_user** (int) - лимит для одного исполнителя (сколько заданий может выполнить 1 исполнитель). 0 - без ограничений. Необязательный параметр, значение по умолчанию - 0.
**limit_per_day** (int) - лимит в сутки. 0 - без ограничений. Необязательный параметр, значение по умолчанию - 0.
**limit_total** (int) - лимит на общее количество выполнений задания. 0 - без ограничений. Необязательный параметр, значение по умолчанию - 0.
**who_can_work** (int) - кто может выполнить заказ. 0 - любой исполнитель, 2 - только исполнители из белого списка (нужно указать id списка в поле who_can_work_value), 3 - только один определённый исполнитель (нужно указать id исполнителя в поле order_who_can_work_value). Параметр необязательный. Значение по умолчанию - 0.
**who_can_work_value** (int) - в случае, если вы ограничили заказ, сделав его доступным определённой группе исполнителей параметром who_can_work, в этом параметре необходимо уточнить свой выбор: В случае, если вы хотите сделать заказ доступным только для определённого белого списка, то укажите id списка в этом поле. В случае, если вы хотите сделать персональный заказ только для одного конкретного исполнителя, то укажите в этом поле его id |**microtask_id** (int) - уникальный идентификатор созданной микрозадачи
|getMicrotasksTasks|Возвращает все отчёты о выполненных заданиях, ожидающие проверки, для микрозадачи microtask_id. Если microtask_id не указано, возвращает все отчёты, ожидающие проверки. |**microtask_id** (int) - уникальный идентификатор микрозадачи (необязательный параметр)|**tasks** (array) - массив с отчётами
**id** (int) - уникальный идентификатор (номер) отчёта
**user_id** (int) - уникальный идентификатор исполнителя
**price** (int) - стоимость за выполнение задачи
**text** (text) - текст отчёта
|microtasksRejectTask|Отправить задание на доработку или отказаться от него|**task_id** (int) - уникальный идентификатор (номер) отчёта по задаче
**text** (text) - причина, по которой вы отправляете задачу на доработку или отклоняете
**decline** (int) - в случае, если параметр decline равен 1, то задание будет отклонено без возможности доработки. Необязательный параметр, значение по умолчанию - 0. |
|microtasksAcceptTask|Принять и оплатить задачу|**task_id** (int) - уникальный идентификатор (номер) отчёта по задаче|
|microtasksPause|Временно остановить выполнение микрозадачи|**task_id** (int) - уникальный идентификатор (номер) микрозадачи|
|microtasksPlay|Включить выполнение ранее остановленной микрозадачи|**task_id** (int) - уникальный идентификатор (номер) отчёта по задаче|Работа с личными сообщениями
============================
```php
$client->message();
```|Метод|Описание|Входные данные|Выходные данные
|-----|--------|--------------|---------------
|pmGetSent|Получить список пользователей, кому вы отправляли личные сообщения||
|pmGetReceived|Получить список пользователей, которые вам отправляли личные сообщения||
|pmSend|Отправить личное сообщение|**user_id** (int) - ID пользователя, которому нужно отправить сообщение
**message** (text) - текст сообщения|
|pmGetConversation|Получить переписку с определённым пользователем|**user_id** (int) - ID пользователя, переписку с которым нужно получить|**messages_array** (array) - массив, содержащий список сообщений. Каждый элемент массива содержит:
**from_id** (int) - ID пользователя от кого сообщение
**to_id** (int) - ID пользователя кому сообщение
**date** (date) - дата отправки
**unread** (bool) - флаг прочитано сообщение или нет
**text** (text) - текст сообщенияВнимание
========
На данный момент, не все методы были проверены на работоспособность, а так же нет автоматических тестов для проверки.
До выхода релиза 1.0.0, работа клиента не гарантируется.