Skip to main content

API Yandex Connect

Project description

yandex_connect

Библиотека python для использования API Yandex connect / Яндекс коннект. В настоящий момент реализованы все функции Directory, версии 6.

https://tech.yandex.ru/connect/directory/api/about-docpage/

Установка

git clone https://github.com/zt50tz/yandex-connect
cd yandex-connect
python setup.py install

Либо:

pip install yandex-connect

Получение токена

Необходимо зарегистрировать приложение на странице https://oauth.yandex.ru/

from yandex_connect import token_get_by_code
token_get_by_code()

Пример

from yandex_connect import YandexConnectDirectory
api = YandexConnectDirectory('<OAuth TOKEN>', org_id=None)  # создание
api.user_add('test', 'test234test')  # добавление сотрудника
api.user_list_full()  # просмотр всех сотрудников

Сервис использует идентификационные номера для всех объектов, а не значимые алиасы, что может быть усложняющим фактором при быстрой разработке, либо при исполнении функций из командной строки. То есть, для того, чтобы получить информацию о пользователе, необходимо выполнить следующий код:

api.user_info(1000000000000000)

>> {u'nickname': u'test', u'id': 1000000000000000}

Он не особо удобный для чтения и написания. В связи с этим добавлена возможность выполнить и такой код:

api.user_info('test@test.ru')

>> {u'nickname': u'test', u'id': 1000000000000000}

Так же, это справедливо для методов относительно групп. То есть, вместо:

api.group_member_add(1, 1000000000000000)

Можно написать:

api.group_member_add("group_users@test.ru", "test@test.ru")

Везде где используются параметры user_id и group_id можно использовать как ID, так и почту.

Отладка

Что то может пойти не так. Чтобы увидеть какие данные уходят и возвращаются, можно использовать следующий код:

import logging
logger = logging.getLogger('YandexConnectRequest')
logger.setLevel(logging.DEBUG)

Методы

Сотрудники
  • user_info — Получение информации о сотруднике
  • user_list - Получение списка сотрудников
  • user_list_full - Получение полного списка сотрудников, без страниц
  • user_add - Добавление сотрудника
  • user_upd - Изменение сотрудника
  • user_alias_add - Добавление алиаса для сотрудника
Отделы
  • department_list - Получение списка отделов
  • department_list_full - Получение полного списка отделов
  • department_info - Получение информации об отделе
  • department_add - Добавление отдела
  • department_upd - Изменение отдела
  • department_del - Удаление отдела
Команды
  • group_list - Список команд
  • group_list_full - Полный список команд
  • group_info - Получение информации о команде
  • group_add - Добавление команды
  • group_upd - Изменение команды
  • group_member_list - Участники команды
  • group_member_add - Добавить участника команды. В качестве параметра user_id можно использовать массив ID/почт.
  • group_member_del - Удалить участника команды
  • group_member_update - Изменение участников команды
Домены
  • domain_list - Получение списка доменов
  • domain_add - Добавить домен
  • domain_del - Удалить домен
Организации
  • organization_list - Список организаций

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yandex_connect-0.29b0.tar.gz (9.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page