#### Для стабильной работы нужны следующие модули:
- types
- json
- requests
-----------
#### Чтобы работать с модулем нужно его сначала импортировать следующим образом:
```python
from BossLike import BosslikeExecutors
```
-----------
После обращаемся к классу следующим образом, он в свою очередь принимает один параметр: key - ключ api:
P.S api key получаем на сайте [bosslike.ru](https://bosslike.ru/)
```python
from BossLike import BosslikeExecutors as bl
bl("kEY")
```
В последующем описании мы будем использовать сокращения bl
-----------
#### У класса есть методы:
- appheaders
- users_me
- socials
- delete_social
- check_profile
- show_like
- check_like
- bost_tasks
- task_do
- task_check
- errors
Каждый метод возвращает объект!
-----------
#### appheaders - принимает один параметр типа dict. Благодаря данному методу можно добавить в запрос к api дополнительные headers.
Пример использования:
```python
b = bl("kEY")
data = {
'key':'value'
}
b.appheaders(data)
```
-----------
#### users_me - Не принимает не одного значения а только возвращает объект (Возвращает информацию о пользователе).
Пример использования:
```python
b = bl("kEY")
data = b.users_me()
print(data)
```
Возвращает объект:
```python
namespace(data=namespace(user=namespace(avatar='', email='userlogin@__APP_ID.ru', email_confirm=1, id='123', login='Userlogin', money=500, name='John Doe', point='1489', status='1')), status=0, success=True)
```
К объекту можно обратиться следующим образом:
```python
print(data.data.user.id)
```
Выведет id пользования.
-----------
Таким образом работают все методы. Подробнее о каждом методе ниже!
-----------
#### socials - Не принимает не одного значения а только возвращает объект (Возвращает список привязанных социальных сетей)
Работает также как и users_me
-----------
#### delete_social - Принимает один параметр: номер социальной сети. (Отвязать социальную сеть от аккаунта пользователя)
###### номера социальных сетей:
- 1: Вконтакте
- 2: Фейсбук
- 3: Инстаграм
- 4: Ютуб
- 5: Твиттер
- 7: Одноклассники
- 8: Телеграм
Пример использования:
```python
b = bl("kEY")
data = b.delete_social("Number")
print(data)
```
Возвращает сообщение об успехе или ошибку (Социальная сеть не привязана)
-----------
### Следующие методы (check_profile, show_like, check_like) работают в связке с друг другом позволяя привязать аккаунт соцсети через like (Не все соцсети можно привязать!):
#### check_profile - Принимает два параметра: это url аккаунта соц сети и type соцсети. Возвращает сообщение об успешной проверке профиля и token для доступа к следующим этапам.
Тип социальной сети:
- 1: Вконтакте
- 3: Инстаграм
- 5: Твиттер
###### Также может вернуть ошибку: 422 Отсутствуют необходимые параметры / ошибка валидации данных!
#### show_like - Принимает один параметр: Токен из операции check_profile.Возвращает сообщение об успехе, ссылку на пост для лайка и token для доступа к следующему этапу.
###### Также может вернуть ошибку: 422 Отсутствуют необходимые параметры / ошибка валидации данных!
#### check_like - Принимает один параметр: Токен из операции show_like. Возвращает сообщение об успешной привязке социальной сети и информацию об этом аккаунте
###### Также может вернуть ошибку: 422 Отсутствуют необходимые параметры / ошибка валидации данных!
Не все соцсети можно привязать!
-----------
### Следующие методы:
#### bost_tasks - Принимает да обязательных параметров: Тип социальной сети, Тип заданий. Два необязательных: jsons, i. Возвращает список заданий.
Тип социальной сети:
- 1: Вконтакте
- 2: Фейсбук
- 3: Инстаграм
- 4: Ютуб
- 5: Твиттер
- 7: Одноклассники
- 8: Телеграм
Тип заданий:
- 0: Все типы
- 1: Лайк
- 2: Репост/Ретвит
- 3: Подписка
- 4: Комментарий
- 8: Голосование
Пример использования:
```python
b = bl("kEY")
data = b.bost_tasks(1, 1)
print(data.data.items[0].id)
```
Вернёт первого задания в списки про лайки а именно id!
```python
data = b.bost_tasks(1, 1, jsons=True)
data = b.bost_tasks(1, 1, jsons=True, i=0)
print(data)
```
Возвращает id из списка под ключом 0
А вот параметром i можно указать определенный ключ
-----------
#### task_do - Принимает один обязательный параметр: ID задания, из метода bost_tasks. Два необязательных: url, point. Возвращает ссылку на задание в соц.сети, время задержки перед началом выполнения, комментарий, который нужно оставить для выполнения задания или порядковый номер ответа на голосование...
Необязательные параметры:
###### Вернёт только url:
```python
data = task_do(1, url=True)
```
###### Вернёт только point сколько заработаешь:
```python
data = task_do(1, point=True)
```
###### Вернёт url, point:
```python
data = task_do(1, url=True, point=True)
```
##### Также следующие ошибки:
- 404 Задание не найдено
- 422 Ошибка валидации данных
##### Следующий метод: Проверка выполнения задания
#### task_check - Принимает один параметр: ID задания.
Возвращает количество баллов пользователя после выполнения задания и не только...
Подробнее читайте после авторизации на сайте [bosslike.ru](https://bosslike.ru/botapi/)
-----------
#### errors - Обработка ошибок (по умолчанию встроена и включена в следующих методах: users_me, socials, delete_social, check_profile, show_like, check_like, task_check)
Принимает один обязательный параметр и два необязательный
Возвращает сообщения ошибки
###### Обязательный параметр:
conclusion - нужно передать объект, который возвращает один из методов представленный выше
###### Необязательные параметры:
dop - нужен для того что именно выводить если ошибка не найдена (по умолчанию выводится conclusion сам объект)
i - нужен для уточнения номера ошибка (массива) по умолчанию равен 0
Если не хотите что бы метод сразу обрабатавал ошибку, это можно выключить передов параметр Errors со значением False. В сам метод!
###### Вот и всё!