Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

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

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, работа клиента не гарантируется.