Сессии

обновленный
Cover image for: Сессии

Объект сеанса представляет доступ к определенному источнику.

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

Если служба целевого источника аннулирует доступ, сеанс перейдет в истекшее состояние.

Сессия не обновляется клиентом.

Атрибуты

название тип описание
id строка Идентификатор ресурса.
resource строка, всегда session Идентификатор типа ресурса.
organisation идентификатор организации Организация, с которой связан сеанс.
key идентификатор ключа Ключ, связанный с этим ресурсом.
user Логин пользователя Пользователь, с которым связан сеанс.
source вложенный источник Исходный экземпляр, с которым связан сеанс.
state строка Один из: pending , active , failed , expired .
error строка Код, ссылающийся на причину истечения сеанса.
date_created Дата и время Когда ресурс был создан.
date_expired Дата и время Когда ресурс истек.

состояния

pending
Сессия все еще инициализируется.
active
Сессия готова к использованию для отправки задач.
failed
Не удалось инициализировать сеанс.
expired
Сессия была признана недействительной.

ошибки

Сеанс может иметь два типа ошибок: ошибки инициализации и ошибки истечения.

Ошибки инициализации сеанса обычно возникают из-за неверного имени пользователя или пароля, необходимости аутентификации 2FA или службы, отказывающей в доступе к источнику по какой-либо другой причине. Эти ошибки будут иметь init_failed ошибки init_failed .

Большинство сессий в конечном итоге истекает. Более подробную информацию о времени жизни сессии можно найти в документации по сервису. Однако существуют разные триггеры для истечения срока действия сессии:

service
Сторонний сервис аннулировал сеанс. Обычно это происходит из-за превышения времени ожидания сеанса в сторонней службе (т. Е. Сеанс может длиться только 24 часа). Однако это также может быть вызвано тем, что владелец источника изменил свои учетные данные, поскольку это часто делает недействительным существующий сеанс, или он может быть вызван функцией безопасности в службе, такой как система обнаружения вторжений.
api
API периодически аннулирует неактивные сеансы.
organisation
Организация аннулировала сеанс, возможно, от имени конечного пользователя.
admin
Администратор API аннулировал сеанс.

Создать POST /sessions

параметры

название тип описание
source требуется Источник этого сеанса будет связан с. Содержимое должно соответствовать схеме создания источника .
payload требуется Полезная нагрузка инициализации сеанса. Требуемое содержимое зависит от службы, к которой принадлежит источник.

Использование cURL

curl https://ricloud-api.reincubate.com/sessions \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
    "source": {
      "user": 1,
      "type": "icloud.account",
      "identifier": "john.appleseed@reincubate.com"
    },
    "payload": {
      "password": "1234"
    }
}'

Использование ricloud-py

import ricloud

source = {
  'user': 1,
  'type': 'icloud.account',
  'identifier': 'john.appleseed@reincubate.com',
}

payload = {
  'password': '1234',
}

session = ricloud.Session.create(source=source, payload=payload)

Получить GET /sessions/{session ID}

Использование cURL

curl https://ricloud-api.reincubate.com/sessions/<session ID> \
  -H 'Authorization: Token <your key_token>'

Использование ricloud-py

import ricloud

session = ricloud.Session.retrieve(<session ID>)

Список

GET /sessions

название тип описание
key фильтр идентификатора ключа Фильтр по идентификатору ключа.
user фильтр идентификатора пользователя Фильтр по идентификатору пользователя.
source фильтр идентификатора источника Фильтр по идентификатору источника.
state строковый фильтр Фильтр по состоянию сеанса.
date_created фильтр даты и времени Фильтровать по тому, когда сеанс был создан.
date_expired фильтр даты и времени Фильтровать по истечении времени сеанса.

Использование cURL

curl https://ricloud-api.reincubate.com/sessions \
  -H 'Authorization: Token <your key_token>'

Использование ricloud-py

import ricloud

sessions = ricloud.Session.list()

Удалить DELETE /sessions/{session ID}

Это взаимодействие истекает сеанс и удаляет любые кэшированные данные, связанные с ним в API. Фактический экземпляр ресурса сеанса сохраняется для записи.

Использование cURL

curl https://ricloud-api.reincubate.com/sessions/<session ID> \
  -X DELETE \
  -H 'Authorization: Token <your key_token>'

Использование ricloud-py

import ricloud

session = ricloud.Session.delete_with_id(<session ID>)

# OR

session = ricloud.Session.retrieve(<session ID>)

session.delete()

Как мы можем помочь?

Наша служба поддержки здесь, чтобы помочь!

Наш офис работает с понедельника по пятницу с 9:00 до 17:00 по Гринвичу. Время в настоящее время 5:28 ДП с GMT.

Мы стремимся отвечать на все сообщения в течение одного рабочего дня.

Наша отличная команда поддержки

© 2008 - 2024 Reincubate Ltd. Все права защищены. Зарегистрировано в Англии и Уэльсе #5189175, VAT GB151788978. Reincubate® и Camo® являются зарегистрированными товарными знаками. Политика конфиденциальности & условия.