Sessões

Atualizada
Cover image for: Sessões

Um objeto de sessão representa o acesso a uma fonte específica.

As sessões são sempre criadas com um estado pendente, até que a API possa verificar o acesso ao serviço da fonte de destino.

Se o serviço da fonte de destino revogar o acesso, a sessão passará para um estado expirado.

A sessão não é atualizável pelo cliente.

Atributos

nome tipo descrição
id corda Identificador de recursos.
resource string, sempre session Identificador de tipo de recurso.
organisation ID da organização A organização à qual a sessão está associada.
key ID da chave A chave associada a este recurso.
user ID do usuário O usuário ao qual a sessão está associada.
source fonte aninhada A instância de origem à qual a sessão está associada.
state corda Um dos seguintes: pending , active , failed , expired .
error corda Um código referente ao motivo pelo qual a sessão expirou.
date_created data hora Quando o recurso foi criado.
date_expired data hora Quando o recurso expirou.

Estados

pending
A sessão ainda está sendo inicializada.
active
A sessão está pronta para ser usada para enviar tarefas.
failed
A inicialização da sessão falhou.
expired
A sessão foi invalidada.

Erros

Uma sessão pode ter dois tipos de erros: erros de inicialização e erros de expiração.

Erros de inicialização de sessão normalmente ocorrem devido a um nome de usuário ou senha inválidos, a necessidade de autenticação 2FA ou o serviço recusando o acesso à origem por algum outro motivo. Esses erros terão o tipo de erro init_failed .

A maioria das sessões acabará por expirar. Mais detalhes da duração da sessão podem ser encontrados nos documentos específicos do serviço. No entanto, existem vários gatilhos para a expiração da sessão:

service
O serviço de terceiros invalidou a sessão. Isso geralmente ocorre devido a tempos limite da sessão dentro do serviço de terceiros (ou seja, uma sessão pode durar apenas 24 horas). No entanto, isso também pode ser causado pelo proprietário da origem que altera suas credenciais, pois isso muitas vezes invalida a sessão existente ou pode ser acionado por um recurso de segurança dentro do serviço, como um sistema de detecção de intrusos.
api
A API invalida periodicamente as sessões inativas.
organisation
A organização invalidou a sessão, possivelmente em nome do usuário final.
admin
Um administrador da API invalidou a sessão.

Criar POST /sessions

Parâmetros

nome tipo descrição
source requeridos A fonte a qual esta sessão será associada. O conteúdo deve seguir o esquema de criação de origem .
payload requeridos A carga útil de inicialização da sessão. O conteúdo requerido depende do serviço ao qual a fonte pertence.

Usando 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"
    }
}'

Usando 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)

Recuperar GET /sessions/{session ID}

Usando cURL

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

Usando ricloud-py

import ricloud

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

Lista

GET /sessions

nome tipo descrição
key filtro de identificação de chave Filtre por um ID da chave.
user filtro de ID do usuário Filtrar por um ID do usuário.
source filtro de ID de origem Filtrar por um ID de origem.
state filtro de string Filtrar pelo estado da sessão.
date_created filtro de data e hora Filtrar por quando a sessão foi criada.
date_expired filtro de data e hora Filtrar por quando a sessão expirou.

Usando cURL

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

Usando ricloud-py

import ricloud

sessions = ricloud.Session.list()

Excluir DELETE /sessions/{session ID}

Essa interação expira a sessão e exclui todos os dados armazenados em cache associados a ela na API. A instância real do recurso de sessão é persistida para o registro.

Usando cURL

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

Usando ricloud-py

import ricloud

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

# OR

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

session.delete()

Como podemos ajudar?

Nossa equipe de suporte está aqui para ajudar!

Nosso horário de atendimento é de segunda a sexta, das 9h às 17h GMT. A hora é atualmente 9:37 AM GMT.

Nosso objetivo é responder a todas as mensagens dentro de um dia útil.

Nossa equipe de suporte incrível

© 2008 - 2024 Reincubate Ltd. Todos os direitos reservados. Registrado na Inglaterra e no País de Gales #5189175, VAT GB151788978. Reincubate® e Camo® são marcas registradas. Política de Privacidade & termos.