Client for interacting with a RAP Conector API instance
Project description
rap-conector-client
Instalação
O cliente é distribuído como um pacote pip tradicional. Para instalar:
$ pip install rap-conector-client
Exemplos de uso
Uso básico do cliente
O ponto de partida para o uso da API é a classe Client
. A partir dela, é possível por exemplo receber instâncias da classe Document
:
>>> import rapconector
>>> conector = rapconector.Client('{{ URL_DO_CONECTOR }}/api')
>>> doc = conector.get_document(25)
>>> doc.current_state
503
A partir dessa instância, é possível interagir com o documento no Conector:
>>> receipt = doc.get_receipt()
>>> receipt['status']
'preserved'
>>> receipt['group_id']
'350'
Caso deseje interagir com um documento sem precisar antes fazer uma requisição
para pegar o objeto do documento, é possível utilizar a função
with_document_id()
da
classe principal:
>>> conector.with_document_id(39).suspend('Suspendendo o documento com id 39.')
True
Além disso, também são disponibilizadas algumas classes de enumeração para melhorar a legibilidade do código:
>>> from rapconector.document import DocumentStateCode
>>> doc.current_state == DocumentStateCode.ERROR_DURING_SIGNING
True
Download e validação de um arquivo
Por questões de performance, os métodos que interagem com arquivos do Conector
não fornecem suporte a parâmetros do tipo string. Sendo assim, é
necessário passar file handles abertos para os métodos que fazem upload, e os
métodos que fazem download de arquivos retornam um objeto
requests.Response
com a propriedade stream=True
, para que a
aplicação tenha controle total sobre o processo de download:
>>> from rapconector.document import DocumentType, DocumentVersion
>>>
>>> res = conector.with_document_id(17).download_file(DocumentVersion.SIGNED)
>>> with open('diploma.xml', 'wb') as f:
>>> for chunk in res.iter_content(chunk_size=4096):
>>> f.write(chunk)
>>>
>>> with open('diploma.xml', 'r') as f:
>>> authenticity = conector.authenticate_document(
>>> DocumentType.ACADEMIC_DOC_MEC_DEGREE,
>>> ('diploma.xml', f, 'application/xml'))
>>>
>>> authenticity.valid
True
Documentação
A documentação completa de todas as versões disponíveis do pacote podem ser encontradas neste link.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for rap-conector-client-0.9.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7b466014daf55053c0c675e629d2d06f9337837f63aff195b9f1d2fad2a82dc |
|
MD5 | ea87820fd7fb1003c56984d0caa536bc |
|
BLAKE2b-256 | 1b27df00369a838c60dbc7f7b25648d666fda1756fd697f36e6da2565d6bc672 |
Hashes for rap_conector_client-0.9.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14724724b688fed9ffba33d9685fd086d765467c142b82abb15973d153c3b35b |
|
MD5 | ffa08aab573ff31ba9b52859d69256b4 |
|
BLAKE2b-256 | 68b719c1081f0d91da33562832b9e134d537886d7b7e416b2ba827af38f1cc36 |