Documentação da API
Classes Principais
Toda a funcionalidade do Conector pode ser acessada através dessas duas classes.
Client
- class rapconector.client.Client(base_url, *args, **kwargs)
Cliente da API.
Observação: qualquer parâmetro não listado abaixo será repassado diretamente para o construtor do
requests.Session.- Parâmetros:
base_url (str) – URL do conector.
email (str, optional) – E-mail para autenticação.
password (str, optional) – Senha para autenticação.
default_timeout (number, optional) – Timeout padrão para ser utilizado em todas as requisições.
- Retorna:
Instância da classe.
- with_document_id(document_id)
Retorna uma instância de
Documentcom somente o campodocument_idpreenchido. Útil para evitar requisições adicionais. Por exemplo:# 2 requisições: uma para get_document() e outra para get_receipt() receipt = conector.get_document(372).get_receipt() # 1 única requisição, pois `with_document_id` cria um objeto vazio receipt = conector.with_document_id(372).get_receipt()
- Parâmetros:
document_id (int) – Identificador do documento.
- Tipo de retorno:
- get_group(group_id)
Exibe as informações básicas de um grupo de documentos, incluindo os slots ocupados e disponíveis para a inserção de novos documentos.
IMPORTANTE:: Novos documentos só devem ser inseridos em grupos parcialmente ocupados caso o documento seja do tipo do slot disponível e que contenha dados complementares aos demais documentos.
- Parâmetros:
group_id (str) – Identificador do grupo de documentos.
- Retorna:
O documento especificado, caso exista.
Nonecaso contrário.- Tipo de retorno:
- list_groups(group_type=None, page=None, limit=None)
Lista todos os grupos de documentos, incluindo seus slots ocupados e disponíveis para a inserção de novos documentos.
IMPORTANTE:: Novos documentos só devem ser inseridos em grupos parcialmente ocupados caso o documento seja do tipo do slot disponível e que contenha dados complementares aos demais documentos.
- Parâmetros:
group_type (DocumentGroupType, optional) – Tipo do grupo de documentos, utilizado para a filtragem dos resultados.
page (int, optional) – Número da página utilizada na paginação dos resultados.
limit (int, optional) – Quantos items retornar por página.
- Retorna:
Lista de grupos de documentos.
- Tipo de retorno:
list(DocumentGroup)
- delete_group(group_id)
Deleta um grupo de documentos da base de dados do Conector, incluindo todos os documentos nele contidos.
IMPORTANTE: Essa operação apaga apenas os documentos do registro local, de forma que não deleta os documentos preservados no registro do Serviço RAP. Para a remoção dos documentos do registro do RAP é necessário revogá-los antes deletar os dados no Conector.
- Parâmetros:
group_id (str) – Identificador do grupo de documentos a ser removido.
- Retorna:
Número de documentos removidos.
- Tipo de retorno:
int
- get_document(id_or_security_code_or_your_number)
Exibe as informações básicas de um documento, incluindo o código de segurança que se torna disponível após o documento ser gerado e o recibo após o documento ser registrado.
Cada documento possui um código de segurança baseado no seu contexto. No caso do Diploma Digital esse código de segurança é o Código de Validação do Diploma.
- Parâmetros:
id_or_security_code (int or str) – Identificador do documento. Pode ser o ID em si, o código de segurança ou o “yourNumber” do documento.
- Retorna:
O documento especificado.
- Tipo de retorno:
- list_documents(state=None, document_type=None, cpf=None, page=None, start_date=None, end_date=None, limit=None)
Lista todos os documentos processados pelo RAP Conector, indicando para cada documento o seu estado atual.
- Parâmetros:
state (DocumentStateCode, optional) – Código de estado para utilizar como filtro. O retorno incluirá todos os documentos que já passaram pelo estado especificado. Nesse contexto,
currentStaterepresenta o estado corrente da consulta e não o estado atual do documento.document_type (DocumentType, optional) – Tipo de documento, para utilizar como filtro.
cpf (str, optional) – CPF do diplomado, para utilizar como filtro.
start_date (string, optional) – Parâmetro para filtragem, de forma que a resposta só ira conter documentos criados após essa data. Formato da data é o definido em RFC 3339, seção 5.6 (exemplo:
2021-03-21).end_date (string, optional) – Complementar do
start_date. Deve ser fornecido caso ele não seja nulo.page (int, optional) – Número da página utilizada na paginação dos resultados.
limit (int, optional) – Quantos items retornar por página.
- Retorna:
Lista de documentos.
- Tipo de retorno:
list(Document)
- insert_document(document_type, document_data, document_file=None)
Insere um novo documento ou um lote de documentos.
IMPORTANTE: As etapas de processamento dos documentos possuem uma ordem lógica bem definida que deve ser respeitada. Inicialmente deve ser gerada, assinada e registrada a Documentação Acadêmica. Após isso, deve ser gerado, assinado e registrado o Diploma Digital associado. Por último (opcionalmente) pode ser processada a Representação Visual do Diploma.
IMPORTANTE: Os arquivos PDF anexados em base64 no JSON da Documentação Acadêmica ou inseridos no campo
document_filepara a Representação Visual, devem estar preferencialmente no formato de preservação PDF/A (www.pdfa.org). Caso algum arquivo esteja no formato PDF comum, o Conector tentará a conversão automática que se for malsucedida, fará com que o documento entre no estado de erro de geração.- Parâmetros:
document_type (
DocumentType) – Código do tipo do documento.document_data (str) – Dados e metadados do documento, em formato JSON. No caso da inserção em lote, o JSON esperado é um array onde cada item representa (e obedece o schema) da inserção de um único documento. Caso o lote seja do tipo
DocumentType.VISUAL_REP_DEGREE, deve ser adicionado nos metadados de cada documento o atributoattachmentcontendo o nome e a extensão do arquivo utilizado no parâmetrodocument_filepara que a representação visual do diploma seja associada ao documento correspondente.document_file (tuple or list(tuple), optional) – Arquivo(s) do documento, onde um arquivo é uma tupla
name (str), file (IOBase), mime_type (str).
- Retorna:
O identificador do documento inserido, ou uma lista de identificadores no caso da inserção em lote.
- Tipo de retorno:
int or list(int)
- retrieve_file(document_type, client_id, your_number)
Recupera o arquivo de um documento diretamente do Serviço de Preservação usando os metadados do documento preservado.
- Parâmetros:
document_type (
ExternalDocumentType) – Código do tipo do documento.client_id (string) – Identificador da instituição cliente.
your_number (string) – Identificador do documento no contexto do cliente.
- Retorna:
Um objeto
requests.Response, com a propriedadestreamsetada paraTrue. Para exemplos de como realizar o download do arquivo de forma eficiente, ver https://stackoverflow.com/a/39217788 e https://2.python-requests.org/en/master/user/quickstart/#raw-response-content.- Tipo de retorno:
requests.Response
- authenticate_document(document_type, document_file)
Verifica a autenticidade de um documento no contexto do registro do Serviço RAP.
- Parâmetros:
document_type (
ExternalDocumentType) – Código do tipo do documento.document_file (tuple or list(tuple), optional) – Arquivo para verificar, onde um arquivo é uma tupla
(name (str), file (IOBase), mime_type (str)).
- Tipo de retorno:
- validate_document(document_type, document_data, schema_version, document_format)
Verifica a conformidade do documento em relação às normas do diploma digital.
- Parâmetros:
document_type (
DocumentType) – Código do tipo do documento a ser validado.document_data (str) – O documento, como uma string.
schema_version (str) – A versão do schema a ser utilizado para validação.
document_format (
DocumentFormat) – O formato do documento a ser validado (JSON ou XML).
- Tipo de retorno:
- get_signature_config()
Lista as configurações de assinatura dos documentos incluindo os assinadores, seus substitutos e as respectivas tags.
O schema é:
[ { "documentName": "string", "documentType": 0, "signatureConfig": [ { "tagName": "string", "signers": [ { "id": "string", "name": "string", "substitutes": [ { "id": "string", "name": "string" } ] } ] } ] } ]
- Retorna:
Objeto JSON contendo informações sobre as configurações de assinatura.
- Tipo de retorno:
dict
- healthcheck()
Retorna dados sobre a saúde do serviço. Por exemplo:
{ "status": "pass", "version": "1", "releaseId": "0.7.8", "checks": { "conector": [ { "status": "pass", "version": "0.7.8" } ], "RAP": [ { "status": "pass", "version": "1.0.0" } ], "database": [ { "status": "pass" } ] } }
- Retorna:
Objeto JSON contendo informações sobre o estado do serviço.
- Tipo de retorno:
dict
Document
- class rapconector.document.Document(client, json)
Representação de um documento no Conector.
- document_id
Identificador do documento.
- document_type
Tipo do documento. Possivelmente nulo. Ver
DocumentTypeouExternalDocumentType, dependendo de onde a instância foi encontrada.
- group_id
Identificador do grupo ao qual o documento pertence. Possivelmente nulo.
- your_number
Identificador do documento no contexto do cliente. Possivelmente nulo.
- current_state
Código de estado atual do documento. Possivelmente nulo. Ver
DocumentStateCode.
- security_code
Código de segurança do documento. Possivelmente nulo.
- receipt
Recibo do documento. Possivelmente nulo.
- authorization
Estado de autorização do documento. Possivelmente nulo. Ver
DocumentAuthorizationState.
- versions
Outras versões desse documento. Ver
VersionedDocumentData.
- update(document_type=None, document_data=None, document_file=None, revocation_data=None, update_description=None)
Atualiza o dados de um documento, quais sejam: tipo, JSON com dados e/ou arquivo gerado.
Após atualização, o documento retorna ao estado inicial reniciando sua geração/processamento. Documentos com estado de registro válido não são afetados por essa operação.
Nos casos em que um documento já está em estado válido de registro (estado 10) ou suspenso, é necessário revogar todo o seu respectivo grupo de documentos e reiniciar o processo de registro fazendo a inserção de novos documentos na ordem correta.
- Parâmetros:
document_type (
DocumentTypeouExternalDocumentType) – Código do tipo do documento.document_data (str, optional) – Dados do documento (string JSON).
document_file (tuple or list(tuple), optional) – Arquivo(s) do documento, onde um arquivo é uma tupla
(name (str), file (IOBase), mime_type (str)). Opcional somente casorevocation_dataseja informado.revocation_data (DocumentRevocationData, optional.) – Dados para a revogação do documento. Vale notar que em casos de atualização dos dados de revogação do documento, o processamento não é reiniciado e o estado de revogação se mantém. Opcional somente caso
document_fileseja informado.update_description (str, optional) – Mensagem de atualização.
- Retorna:
O identificador do documento atualizado.
- Tipo de retorno:
int
- delete(cascade=False, force=False)
Deleta este documento da base de dados do RAP Conector.
ATENÇÃO: Essa operação apaga os registros apenas no Conector local, de forma que não deleta documentos preservados no contexto do Serviço RAP. Para remoção do(s) documento(s) no contexto do RAP é necessário revogá-lo(s) antes de ter seus dados deletados do Conector local.
- Parâmetros:
cascade (bool, optional) – Se deve ocorrer remoção em cascata de documentos dependentes.
force (bool, optional) – Força remoção documento no registro local ignorando o estado atual do mesmo no registro do Serviço RAP.
- Retorna:
Número de documentos removidos.
- Tipo de retorno:
int
- get_state()
Exibe o estado atual do documento.
Em caso de erro, suspensão, re-ativação ou revogação de documento, o campo aditionalInfo indicará a razão de entrada em cada estado.
As informações de suspensão, ativação e revogação podem ser utilizadas para mapear o histórico do documento conforme previsão na nota técnica referente a diplomas digitais: ver item 7.12 da Nota Técnica No. 13/2019/DIFES/SESU/SESU.
- Tipo de retorno:
- get_history()
Retorna o histórico de processamento do documento.
- Tipo de retorno:
list(DocumentStateChange)
- get_receipt()
Retorna o recibo do documento. Por exemplo:
{ "doc_type": "string", "status": "string", "dlt_id": "string", "group_id": "string", "client_id": "string", "mime_type": "string", "our_number": "string", "your_number": "string", "client_signature": "string", "data": {}, "register_path": [], "created_at": "string", "updated_at": "string", "__v": int, "doc_hash": "string", "register_root": "string", "tx_date": "string", "tx_receipt": "string", "UUID": "string", "status_detail": "string", }
- Tipo de retorno:
dict
- download_file(version)
Faz download de uma versão específica do arquivo do documento em formato XML.
Caso seja indicado
DocumentVersion.SIGNED, o serviço irá retornar o estado atual do documento assinado. Caso a coleta de assinaturas ainda não tenha sido finalizada, esse documento pode ainda não representar o documento final assinado. Recomenda-se seu download quando o documento alcançar o status registrado no serviço (estadoDocumentStateCode.VALID).A chamada desse método com parâmetro
versioncontendoDocumentVersion.REGISTEREDfaz o Conector realizar o download do arquivo diretamente do Serviço de Preservação. Esse arquivo só existe após o registro do documento no Serviço (estadoDocumentStateCode.VALID). O acesso ao arquivo do Serviço de Preservação pode ser útil nos casos em que a cópia local foi corrompida. Caso a instituição escolha não enviar os documentos para registro, a versão de registro do arquivo não existirá.- Parâmetros:
version (DocumentVersion) – Versão desejada do documento.
- Retorna:
Um objeto
requests.Response, com a propriedadestreamsetada paraTrue. Para exemplos de como realizar o download do arquivo de forma eficiente, ver https://stackoverflow.com/a/39217788 e https://2.python-requests.org/en/master/user/quickstart/#raw-response-content.- Tipo de retorno:
requests.Response
- generate_json_visualization()
Gera um JSON para visualização do arquivo de um documento.
- Retorna:
O JSON em forma de um dicionário Python.
- Tipo de retorno:
dict`
- generate_html_visualization()
Gera uma página HTML para visualização do arquivo de um documento.
- Retorna:
Um objeto
requests.Response, com a propriedadestreamsetada paraTrue. Para exemplos de como realizar o download do arquivo de forma eficiente, ver https://stackoverflow.com/a/39217788 e https://2.python-requests.org/en/master/user/quickstart/#raw-response-content.- Tipo de retorno:
requests.Response
- suspend(reason)
Suspende o documento.
- Parâmetros:
reason (str) – Motivo da suspensão do documento.
- Retorna:
Se o documento foi suspenso.
- Tipo de retorno:
bool
- activate(reason)
Ativa o documento.
- Parâmetros:
reason (str) – Motivo da re-ativação do documento.
- Retorna:
Se o documento foi re-ativado.
- Tipo de retorno:
bool
- revoke(reason)
Revoga um documento no contexto do Conector e no contexto do Serviço RAP.
- Parâmetros:
reason (str) – Motivo da revogação do documento.
- Retorna:
Se o documento foi marcado como “irá ser revogado”.
- Tipo de retorno:
bool
- retry_processing(step=None)
Caso o documento esteja em um estado de falha, tenta reiniciar a etapa desejada do processamento.
- Parâmetros:
step (
DocumentProcessingStep, optional) – Qual etapa para re-executar. Caso omitido, a etapa tentará ser inferida a partir docurrent_statedo documento.- Retorna:
Trueem caso de sucesso.- Tipo de retorno:
bool
- set_authorization(desired_auth_status, description)
Atualiza o estado de autorização de um documento para permitir ou proibir a assinatura e registro de um documento após a revisão manual do arquivo gerado pelo Conector.
Atenção: documentos com a revisão manual desativada terão seu estado de autorização atualizado para authorized automaticamente pelo Conector.
- Parâmetros:
desired_auth_status (
DocumentAuthorizationState) – Estado de autorização desejado.description (str) – Descrição textual para o novo estado de autorização.
- Retorna:
Trueem caso de sucesso.- Tipo de retorno:
bool
- repair_timestamp()
Repara o carimbo de tempo da assinatura de arquivamento do documento registrado no Serviço de Preservação do RAP.
- Retorna:
Trueem caso de sucesso.- Tipo de retorno:
bool
Classes Principais para Documentos Externos
De forma análoga, a funcionalidade do Conector voltada aos diplomas digitais externos pode ser acessada através da seguinte classe, que tem a API modelada para ser o mais próximo possível do cliente tradicional:
ExternalClient
- class rapconector.client.ExternalClient(base_url, *args, **kwargs)
Cliente da API, para diplomas digitais externos.
Observação: qualquer parâmetro não listado abaixo será repassado diretamente para o construtor do
requests.Session.- Parâmetros:
base_url (str) – URL do conector.
email (str, optional) – E-mail para autenticação.
password (str, optional) – Senha para autenticação.
default_timeout (number, optional) – Timeout padrão para ser utilizado em todas as requisições.
- Retorna:
Instância da classe.
- list_documents(state=None, document_type=None, cpf=None, page=None, start_date=None, end_date=None, limit=None)
Lista todos os documentos processados pelo RAP Conector, indicando para cada documento o seu estado atual.
- Parâmetros:
state (DocumentStateCode, optional) – Código de estado para utilizar como filtro. O retorno incluirá todos os documentos que já passaram pelo estado especificado. Nesse contexto,
currentStaterepresenta o estado corrente da consulta e não o estado atual do documento.document_type (ExternalDocumentType, optional) – Tipo de documento, para utilizar como filtro.
cpf (str, optional) – CPF do diplomado, para utilizar como filtro.
start_date (string, optional) – Parâmetro para filtragem, de forma que a resposta só ira conter documentos criados após essa data. Formato da data é o definido em RFC 3339, seção 5.6 (exemplo:
2021-03-21).end_date (string, optional) – Complementar do
start_date. Deve ser fornecido caso ele não seja nulo.page (int, optional) – Número da página utilizada na paginação dos resultados.
limit (int, optional) – Quantos items retornar por página.
- Retorna:
Lista de documentos.
- Tipo de retorno:
list(Document)
- insert_document(document_type, document_data, document_file=None)
Insere um novo documento ou um lote de documentos.
IMPORTANTE: As etapas de processamento dos documentos possuem uma ordem lógica bem definida que deve ser respeitada. Inicialmente deve ser gerada, assinada e registrada a Documentação Acadêmica Externa. Em seguida, deve ser gerado, assinado e registrado o Diploma Digital Externo associado.
- Parâmetros:
document_type (
ExternalDocumentType) – Código do tipo do documento.document_data (str) – Dados e metadados do documento, em formato JSON. No caso da inserção em lote, o JSON esperado é um array onde cada item representa (e obedece o schema) da inserção de um único documento. Caso o documento seja do tipo
ExternalDocumentType.EXTERNAL_ACADEMIC_DOC, deve ser passado no parâmetrodocument_fileo arquivo XML assinado da Documentação Acadêmica.document_file (tuple or list(tuple), optional) – Arquivo(s) do documento, onde um arquivo é uma tupla
name (str), file (IOBase), mime_type (str).
- Retorna:
O identificador do documento inserido, ou uma lista de identificadores no caso da inserção em lote.
- Tipo de retorno:
int or list(int)
- authenticate_document(document_type, document_file)
Verifica a autenticidade de um documento no contexto do registro do Serviço RAP.
- Parâmetros:
document_type (
ExternalDocumentType) – Código do tipo do documento.document_file (tuple or list(tuple), optional) – Arquivo para verificar, onde um arquivo é uma tupla
(name (str), file (IOBase), mime_type (str)).
- Tipo de retorno:
- delete_group(group_id)
Deleta um grupo de documentos da base de dados do Conector, incluindo todos os documentos nele contidos.
IMPORTANTE: Essa operação apaga apenas os documentos do registro local, de forma que não deleta os documentos preservados no registro do Serviço RAP. Para a remoção dos documentos do registro do RAP é necessário revogá-los antes deletar os dados no Conector.
- Parâmetros:
group_id (str) – Identificador do grupo de documentos a ser removido.
- Retorna:
Número de documentos removidos.
- Tipo de retorno:
int
- get_document(id_or_security_code_or_your_number)
Exibe as informações básicas de um documento, incluindo o código de segurança que se torna disponível após o documento ser gerado e o recibo após o documento ser registrado.
Cada documento possui um código de segurança baseado no seu contexto. No caso do Diploma Digital esse código de segurança é o Código de Validação do Diploma.
- Parâmetros:
id_or_security_code (int or str) – Identificador do documento. Pode ser o ID em si, o código de segurança ou o “yourNumber” do documento.
- Retorna:
O documento especificado.
- Tipo de retorno:
- get_group(group_id)
Exibe as informações básicas de um grupo de documentos, incluindo os slots ocupados e disponíveis para a inserção de novos documentos.
IMPORTANTE:: Novos documentos só devem ser inseridos em grupos parcialmente ocupados caso o documento seja do tipo do slot disponível e que contenha dados complementares aos demais documentos.
- Parâmetros:
group_id (str) – Identificador do grupo de documentos.
- Retorna:
O documento especificado, caso exista.
Nonecaso contrário.- Tipo de retorno:
- get_signature_config()
Lista as configurações de assinatura dos documentos incluindo os assinadores, seus substitutos e as respectivas tags.
O schema é:
[ { "documentName": "string", "documentType": 0, "signatureConfig": [ { "tagName": "string", "signers": [ { "id": "string", "name": "string", "substitutes": [ { "id": "string", "name": "string" } ] } ] } ] } ]
- Retorna:
Objeto JSON contendo informações sobre as configurações de assinatura.
- Tipo de retorno:
dict
- healthcheck()
Retorna dados sobre a saúde do serviço. Por exemplo:
{ "status": "pass", "version": "1", "releaseId": "0.7.8", "checks": { "conector": [ { "status": "pass", "version": "0.7.8" } ], "RAP": [ { "status": "pass", "version": "1.0.0" } ], "database": [ { "status": "pass" } ] } }
- Retorna:
Objeto JSON contendo informações sobre o estado do serviço.
- Tipo de retorno:
dict
- list_groups(group_type=None, page=None, limit=None)
Lista todos os grupos de documentos, incluindo seus slots ocupados e disponíveis para a inserção de novos documentos.
IMPORTANTE:: Novos documentos só devem ser inseridos em grupos parcialmente ocupados caso o documento seja do tipo do slot disponível e que contenha dados complementares aos demais documentos.
- Parâmetros:
group_type (DocumentGroupType, optional) – Tipo do grupo de documentos, utilizado para a filtragem dos resultados.
page (int, optional) – Número da página utilizada na paginação dos resultados.
limit (int, optional) – Quantos items retornar por página.
- Retorna:
Lista de grupos de documentos.
- Tipo de retorno:
list(DocumentGroup)
- retrieve_file(document_type, client_id, your_number)
Recupera o arquivo de um documento diretamente do Serviço de Preservação usando os metadados do documento preservado.
- Parâmetros:
document_type (
ExternalDocumentType) – Código do tipo do documento.client_id (string) – Identificador da instituição cliente.
your_number (string) – Identificador do documento no contexto do cliente.
- Retorna:
Um objeto
requests.Response, com a propriedadestreamsetada paraTrue. Para exemplos de como realizar o download do arquivo de forma eficiente, ver https://stackoverflow.com/a/39217788 e https://2.python-requests.org/en/master/user/quickstart/#raw-response-content.- Tipo de retorno:
requests.Response
- validate_document(document_type, document_data, schema_version, document_format)
Verifica a conformidade do documento em relação às normas do diploma digital.
- Parâmetros:
document_type (
DocumentType) – Código do tipo do documento a ser validado.document_data (str) – O documento, como uma string.
schema_version (str) – A versão do schema a ser utilizado para validação.
document_format (
DocumentFormat) – O formato do documento a ser validado (JSON ou XML).
- Tipo de retorno:
- with_document_id(document_id)
Retorna uma instância de
Documentcom somente o campodocument_idpreenchido. Útil para evitar requisições adicionais. Por exemplo:# 2 requisições: uma para get_document() e outra para get_receipt() receipt = conector.get_document(372).get_receipt() # 1 única requisição, pois `with_document_id` cria um objeto vazio receipt = conector.with_document_id(372).get_receipt()
- Parâmetros:
document_id (int) – Identificador do documento.
- Tipo de retorno:
Tipos de retorno
As classes abaixo representam os tipos de objetos que são retornados pelo Conector.
DocumentAuthenticityResult
- class rapconector.document.DocumentAuthenticityResult(json)
Resultado da autenticação de um documento.
Observação: o único campo que tem garantia de estar preenchido é o campo
validos outros campos podem ou não estar preenchidos, de acordo com a validade do documento.- dlt_id
Identificador da blockchain em que o documento está registrado.
- tx_receipt
Código do recibo da transação de registro do documento na blockchain escolhida.
- doc_hash
Hash do documento registrado na blockchain.
- valid
Booleano que indica se o status do documento é válido no serviço RAP.
- register_root
Raiz da estrutura de dados utilizada para registro do documento na blockchain.
- client_id
Identificador da instituição no serviço RAP.
- your_number
Identificador único do documento no serviço RAP.
- register_date
Data e hora de registro do documento na blockchain (timestamp Unix).
- confirmations
Número de confirmações da transação de registro do documento na blockchain.
- revocation_date
Data e hora da revogação do documento na blockchain (timestamp Unix).
DocumentGroup
DocumentSignature
- class rapconector.document.DocumentSignature(json)
Representação de uma assinatura em um documento.
- signer
Nome do assinante.
- signer_id
Identificador do assinante.
- signature_date
Data e hora em que a assinatura foi coletada, em string no formato ISO 8601.
- tag
Tag da assinatura.
- state
Estado da assinatura. Ver
DocumentSignatureState.
- archiving_signature
Se a assinatura é uma assinatura de arquivamento.
- substitute_signer
Nome do assinante substituto, caso exista.
- substitute_signature_state
Estado da assinatura substituta, caso exista. Ver
DocumentSignatureState.
- created_at
Data e hora em que a assinatura foi criada no RAP Conector, em string no formato ISO 8601.
DocumentState
- class rapconector.document.DocumentState(json)
Representação do estado atual do processamento de um documento.
- current_state
Código de estado atual do documento. Ver
DocumentStateCode.
- description
Descrição textual do estado atual do documento.
- additional_info
Informações adicionais sobre o estado atual do documento.
- signatures
Assinaturas do documento. Ver
DocumentSignature. Possivelmente nulo.
- revocation
Motivo de revogação do documento. Ver
DocumentRevocationData. Possivelmente nulo.
- last_update
Data e a hora da última vez que algum dado do documento sofreu alteração, no formato ISO 8601. Possivelmente nulo.
DocumentStateChange
- class rapconector.document.DocumentStateChange(previous_state, current_state, description, timestamp, additional_info)
Representação do histórico de processamento de um documento.
- previous_state
Código de estado anterior do documento. Ver
DocumentStateCode.
- current_state
Código de estado atual do documento. Ver
DocumentStateCode.
- timestamp
Timestamp (str) referente à mudança de estado do documento.
- description
Descrição textual do estado do documento.
- additional_info
Informações adicionais sobre o estado do documento.
DocumentValidationResult
Enumerações
Enums para facilitar o tratamento de strings e constantes númericas comumente utilizadas e retornadas pelo Conector.
DocumentFormat
DocumentProcessingStep
- class rapconector.document.DocumentProcessingStep
Enumeração das possíveis etapas de processamento para re-executar.
- PROCESSING = 'restart-processing'
Para re-executar o processamento de um documento.
- GENERATION = 'retry-generation'
Para re-executar o processo de geração de um documento.
- SIGNATURE = 'retry-signature'
Para re-executar o processo da última assinatura de um documento.
- ALL_SIGNATURES = 'restart-signatures'
Para re-executar o processo de todas assinaturas de um documento que ainda não esteja no estado válido, ou esteja em um estado de erro de assinatura.
- REVOCATION = 'retry-revocation'
Para re-executar o processo de revogação de um documento.
- REGISTRATION = 'retry-registration'
Para re-executar o processo de registro de um documento.
DocumentRevocationReason
- class rapconector.document.DocumentRevocationReason
Enumeração das possíveis justificativas para revogação de um documento.
- ERRO_DE_FATO = 'Erro de Fato'
Erro de Fato.
- ERRO_DE_DIREITO = 'Erro de Direito'
Erro de Direito.
- DECISAO_JUDICIAL = 'Decisão Judicial'
Decisão Judicial.
- REEMISSAO_PARA_COMPLEMENTO_DE_INFORMACAO = 'Reemissão para Complemento de Informação'
Reemissão para Complemento de Informação.
- REEMISSAO_PARA_INCLUSAO_DE_HABILITACAO = 'Reemissão para Inclusão de Habilitação'
Reemissão para Inclusão de Habilitação.
- REEMISSAO_PARA_ANOTACAO_DE_REGISTRO = 'Reemissão para Anotaçao de Registro'
Reemissão para Anotaçao de Registro.
DocumentSignatureState
- class rapconector.document.DocumentSignatureState
Enumeração dos possíveis estados de uma
DocumentSignature.- NOT_SIGNED = 0
Não assinado.
- PROCESSING = 1
Assinatura em processamento, no caso da assinatura principal.
- SUBSTITUTE_PROCESSING = 1
Assinatura substituta concluída.
- SIGNED = 2
Assinatura concluída.
DocumentStateCode
- class rapconector.document.DocumentStateCode
Enumeração dos possíveis estados de um
Document.- UNKNOWN = 0
Desconhecido
- READY_TO_CREATE = 1
Pronto para gerar
- CREATED = 2
Gerado
- SIGNING_STARTING = 3
Iniciando assinatura
- SIGNING_STARTED = 4
Assinatura iniciada
- SIGNING_IN_PROGRESS = 5
Assinando documento
- SIGNED = 6
Documento assinado
- READY_FOR_REGISTRATION = 7
Pronto para registrar
- REGISTRATION_STARTED = 8
Registro iniciado
- REGISTRATION_FINISHED = 9
Processo finalizado
- VALID = 10
Documento válido
- SUSPENDED = 11
Documento suspenso
- REVOCATION_STARTED = 12
Iniciando revogação
- REVOCATION_IN_PROGRESS = 13
Revogando
- REVOKED = 14
Documento revogado
- ERROR_DURING_CREATION_PREPARATION = 500
Erro ao preparar a geração
- ERROR_DURING_CREATION = 501
Erro na geração
- ERROR_DURING_SIGNING_STARTING = 502
Erro ao iniciar a assinatura
- ERROR_DURING_SIGNING = 503
Erro ao assinar o documento
- ERROR_DURING_REGISTRATION = 504
Erro ao iniciar o registro
- ERROR_FINISHING_REGISTRATION = 505
Erro ao finalizar o registro
- ERROR_DURING_REVOCATION = 506
Erro na revogação
DocumentType
- class rapconector.document.DocumentType
Enumeração dos possíveis tipos de um
Document.- PARTIAL_ACADEMIC_TRANSCRIPT = 1
Histórico escolar parcial. Equivalente a
partial_academic_transcript.
- DIGITAL_DEGREE = 2
Diploma digital. Equivalente a
digital_degree.
- FINAL_ACADEMIC_TRANSCRIPT = 3
Histórico escolar final. Equivalente a
final_academic_transcript.
- ACADEMIC_DOC_MEC_DEGREE = 4
Documentação acadêmica. Equivalente a
academic_doc_mec_degree.
- VISUAL_REP_DEGREE = 5
Representação visual. Equivalente a
visual_rep_degree.
- DEGREE_REVOCATION_LIST = 8
Lista de diplomas anulados. Equivalente a
degree_revocation_list.
- AUDIT_FILE_REGISTRAR = 9
Arquivo de fiscalização da IES registradora. Equivalente a
audit_file_registry.
- AUDIT_FILE_ISSUER = 10
Arquivo de fiscalização da IES emissora. Equivalente a
audit_file_issuer.
- DIGITAL_CURRICULUM = 11
Currículo escolar digital. Equivalente a
digital_curriculum.
- VISUAL_REP_CURRICULUM = 12
Representação Visual do Currículo Escolar. Equivalente a
visual_rep_curriculum.
- VISUAL_REP_TRANSCRIPT = 13
Representação Visual do Histórico Escolar Integral. Equivalente a
visual_rep_transcript.
DocumentVersion
ExternalDocumentType
DocumentRevocationData
Deixada por último pois não é exatamente uma classe de enumeração, mas sim uma classe para ajudar a construir os dados de revogação de um documento.
- class rapconector.document.DocumentRevocationData(reason, notes='')
Representa dados sobre a revogação de um documento.
Inicializa um objeto contendo dados sobre a revogação de um documento.
- Parâmetros:
reason (DocumentRevocationReason) – String contendo a justificativa da revogação.
notes (str, optional) – Observações adicionais sobre a revogação.
- as_json()
Serializa os dados sobre a revogação, em formato JSON.
Exceções
Exceções que podem ser levantadas pelos métodos das classes principais.
AuthenticationError
- class rapconector.errors.AuthenticationError
Credenciais de autenticação incorretas fornecidas ao Conector.
NotFoundError
- class rapconector.errors.NotFoundError
Objeto não encontrado no Conector.
ServerError
- class rapconector.errors.ServerError
Erro inesperado no servidor do Conector.