Evite utilizar estes métodos para consultar o status das assinaturas frequentemente. Os webhooks são uma forma mais rápida e eficiente de fazer isso (e o nosso backend agradece )
Resgatando um documento específico
No Altair, você pode testar com o item Resgatar documento da collection pronta. Não esqueça de completar a query com o ID de um documento existente para buscar:
# Se copiar a query, lembre de remover os comentários
query {
document(id: "ID_DO_DOCUMENTO") {
id
name
refusable
sortable
created_at
files { original signed pades }
signatures {
public_id
name
email
created_at
action { name }
link { short_link } # Link de assinatura se signatário for adicionado por "name" ao invés de "email"
user { id name email phone }
user_data { name email phone } # Dados relacionados ao lock_user_data na criação do documento
email_events {
sent # Timestamp de confirmação de envio do email
opened # Timestamp abertura do email (pode não registrar em alguns clientes de email)
delivered # Timestamp de confirmação do recebimento do email no cliente
refused # Timestamp de erro no envio do email
reason # Mensagem de erro retornada ao ocorrer erro no envio
}
viewed { ...event } # Quando o signatário visualizar
signed { ...event } # Quando o signatário assinar
rejected { ...event } # Quando o signatário rejeitar
signed_unapproved { ...event } # Quando signatário assinar, mas pendente de aprovação biométrica
biometric_approved { ...event } # Quando biometria do signatário que estiver pendente de aprovação for aprovada
biometric_rejected { ...event } # Quando biometria do signatário que estiver pendente de aprovação for rejeitada
}
}
}
fragment event on Event {
ip
port
reason
created_at
geolocation {
country
countryISO
state
stateISO
city
zipcode
latitude
longitude
}
}
Da mesma forma, você pode usar fragments como uma forma de evitar repetição nas queries com o GraphQL.
Você também pode consultar vários documentos ao mesmo tempo:
query {
primeiro: document(id: "ID_DO_DOCUMENTO_1") { name }
segundo: document(id: "ID_DO_DOCUMENTO_2") { name }
terceiro: document(id: "ID_DO_DOCUMENTO_3") { name }
}
E, assim como mostra na imagem acima, você também pode nomear as queries. (OBS: O nome não pode conter somente números)
Listando documentos
Também é possível retornar páginas contendo múltiplos documentos:
query {
documents(limit: 60, page: 1) {
total
data {
id
name
refusable
sortable
created_at
signatures {
public_id
name
email
created_at
action { name }
link { short_link }
user { id name email }
viewed { created_at }
signed { created_at }
rejected { created_at }
}
files { original signed }
}
}
}
Resgatando documentos de uma pasta
Também é possível resgatar os documentos contidos em uma pasta:
query{
documentsByFolder(folder_id: "ID_DA_PASTA", limit: 60, page: 1) {
data {
id
name
qualified
sandbox
created_at
deleted_at
}
has_more_pages
}
}
A query em si é praticamente igual à de listar documentos, a única diferença é que pode-se especificar um id de uma pasta para realizar a busca. As informações retornadas também são do mesmo tipo que a requisição anterior.
Você pode conferir o que é cada um desses parâmetros direto na documentação completa da API GraphQL, no menu Docs do Altair. Se você não sabe como fazer isso, confira o nosso tutorial em Usando o Altair