implementação do cliente ricloud-py
O cliente ricloud-py é uma implementação direta da interface da API do ricloud v3 . Ele também inclui algumas implementações de exemplos de casos de uso comuns e algumas implementações básicas de recuperação de dados de repositórios de armazenamento de terceiros (AWS S3 e Google Cloud Storage).
Instalação
A maneira mais simples de obter o cliente é instalá-lo no PyPi .
pip install ricloud==3.0.0
Você também pode obter o código do repositório do GitHub .
Configuração
Um key_token
é necessário para autenticar na API. Se você já é um cliente, entre em contato com o suporte empresarial para obter uma chave de avaliação para a API ricloud v3 .
O ricloud-py pode ser configurado de duas maneiras:
- Via o atributo
token
em um móduloricloud
importado.
import ricloud ricloud.token = '<your key_token>'
- Crie um arquivo
.ricloud.ini
em seu diretório pessoal com o seguinte conteúdo.
[api] token = <you key_token>
Veja a referência do arquivo .ricloud.ini
para mais detalhes.
Uso
O cliente expõe uma classe para cada recurso da API e um conjunto de métodos para interagir com eles.
>>> import ricloud >>> org = ricloud.Organisation.retrieve() >>> print(org.name) My Organisation >>> org.update(name='Changed Organisation') >>> print(org.name) Changed Organisation
Implementações de Amostra
O cliente inclui implementações de amostra para várias interações comuns.
Estes podem ser acessados através do comando samples
iCloud
A implementação de amostra do iCloud oferece uma maneira rápida de recuperar dados de uma conta do iCloud por meio da linha de comando.
Reincubar o relé
A amostra do serviço Reincubate Relay implementa um conjunto de comandos necessários para criar uma sessão, configurar uma assinatura e acionar pesquisas manualmente.
Ponto final do Webhook
O cliente inclui uma implementação simples de terminal de webhook que escuta as notificações de eventos de API recebidas e imprime informações no console.
É recomendável usar um utilitário como o ngrok para expor com segurança o ponto de extremidade local à Internet. Por padrão, o ponto de extremidade do webhook está vinculado à porta 8080 em sua máquina.
ngrok http -bind-tls=true 8080
Você pode ver o endereço do ponto de extremidade do ngrok exposto publicamente na linha Forwarding
, como https://abcd1234.ngrok.io
.
Em seguida, você pode iniciar o listener executando o comando ricloud event listen
. Se o seu cliente estiver configurado corretamente, ele criará automaticamente uma configuração de webhook usando a URL especificada no comando e a definirá como a configuração padrão de webhook da chave atualmente em uso.
ricloud event listen --webhook-url https://abcd1234.ngrok.io
.ricloud.ini
arquivo .ricloud.ini
Seção: api
token
O token usado para autenticar os endpoints da API.
url
O URL base da API. Padrão: https://ricloud-api.reincubate.com
.
max_retries
Quantas vezes tentar novamente uma solicitação se ela falhar devido a um erro de conexão ou servidor. Padrão: 3
await_for
Adiciona o cabeçalho Ricloud-Await
com o valor especificado para ativar o mecanismo de resposta em espera . Padrão: 0
Seção: webhooks
secret
O segredo de configuração do webhook a ser usado ao verificar cargas úteis de notificação de eventos recebidos. Isso é definido automaticamente se você usar a opção --webhook-url
no comando ricloud event listen
.
delta
A variação permitida entre quando o evento foi enviado e quando foi recebido, em segundos. Padrão: 600
Seção: logging
log_level
Seção: samples
output_directory
O diretório de saída padrão para qualquer resultado baixado como parte de um script de amostra. Se o caminho do diretório for relativo, ele será criado em relação ao diretório de trabalho atual.
user_identifier
O cliente criará um recurso de usuário ao executar scripts de amostra. O valor padrão para o identificador deste usuário é ricloud-py
, mas pode ser facilmente customizado através desta opção.
Isso pode ser útil para distinguir o uso entre diferentes desenvolvedores dentro da mesma organização, por exemplo.
[api] token = <your key_token> url = https://ricloud-api.reincubate.com max_retries = 1 [logging] log_directory = logs log_level = WARNING [samples] output_directory = output user_identifier = ricloud-py