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.28b0.tar.gz (9.9 kB view details)

Uploaded Source

File details

Details for the file yandex_connect-0.28b0.tar.gz.

File metadata

  • Download URL: yandex_connect-0.28b0.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/2.7.10

File hashes

Hashes for yandex_connect-0.28b0.tar.gz
Algorithm Hash digest
SHA256 b3582fec191e83fbe54ab69af2a56a1e981a87bc2500372a1a149277cb7ab49e
MD5 d33e545b417146e20fa809c6dac5ed29
BLAKE2b-256 963f7ce57f986e756cea74a16c12db6136a22baa06cd1df1bfc7b13196b68d3e

See more details on using hashes here.

Supported by

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