Esempi di Query Complesse
Questi esempi mostrano query nidificate che recuperano dati correlati in una singola richiesta. Per dettagli sugli argomenti di connessione, consulta le pagine di riferimento del tipo genitore (ad esempio Document, Group). Per concetti di paginazione, consulta Come Funziona la Paginazione.
Organizzazione con Gruppi e Membri
Vedi: Organisation type · Group type · GroupMember type
query GetOrganisationWithGroups($id: ID!) {
organisation(id: $id) {
id
name
retention
created
groupConnection(first: 10) {
totalCount
pageInfo {
hasNextPage
endCursor
}
groups {
id
name
publicName
credit
memberConnection(first: 5) {
totalCount
groupMembers {
id
name
canAdminister
canCreateSend
canEdit
isActive
lastLogin
user {
id
name
email
}
}
}
}
}
}
}
Gruppo con Modelli e Documenti
Vedi: Group type · Template type · Document type
query GetGroupWithContent($id: ID!, $from: AWSDateTime, $to: AWSDateTime) {
group(id: $id) {
id
name
credit
licensesRemaining
templateConnection(first: 20, archived: false) {
totalCount
templates {
id
title
pageCount
valid
locked
tags
created
lastSent
}
}
documentConnection(first: 20, from: $from, to: $to) {
totalCount
documents {
id
name
status
created
senderName
senderEmail
recipients {
id
firstName
lastName
email
status
signedDateTime
}
}
}
}
}
Modello con Elementi e Ruoli
Vedi: Template type · TemplateElement type · Role type · DirectLink type
query GetTemplateWithDetails($id: ID!) {
template(id: $id) {
id
title
pageCount
pageDimensions
fileName
link
valid
locked
tags
roles {
id
name
roleType
signerIndex
ordinal
experience
}
elementConnection(first: 100) {
totalCount
templateElements {
id
elementType
ax
ay
bx
by
page
label
optional
role
signer
validation
value
}
}
directLinks {
id
name
link
emailValidation
redirectLink
}
}
}
Documento con Destinatari ed Elementi
Vedi: Document type · Recipient type · AuditLogItem type
query GetDocumentWithDetails($id: ID!) {
document(id: $id) {
id
name
link
status
hash
created
modified
senderName
senderEmail
batchId
batchName
template {
id
title
}
recipients {
id
firstName
lastName
email
role
roleType
status
authentication
emailOpenedDateTime
documentFirstViewedDateTime
signedDateTime
sentDateTime
emailProblem
}
elementConnection(first: 100) {
totalCount
documentElements {
id
elementType
ax
ay
bx
by
page
label
value
role
signer
}
}
auditLog {
id
name
email
status
description
created
code
ip
}
}
}
Lotto con Documenti e Destinatari
Vedi: Batch type · Document type
query GetBatchWithDocuments($id: ID!) {
batch(id: $id) {
id
name
enforceOrder
type
creatorName
documentCount
inProgressCount
rejectedCount
completedCount
bouncedCount
created
status
progress
documentConnection(first: 50) {
totalCount
documents {
id
name
status
created
recipients {
id
firstName
lastName
email
status
signedDateTime
}
}
}
}
}
Utente con Organizzazioni e Gruppi
Vedi: User type · GroupMember type · Webhook type
query GetUserWithMemberships($id: ID) {
user(id: $id) {
id
name
firstName
lastName
email
timeZone
companySize
companyRole
lastDocumentSentAt
lastValidTemplateMadeAt
uploadedTemplatesCount
organisationConnection {
totalCount
organisations {
id
name
created
}
}
memberConnection(first: 20) {
totalCount
groupMembers {
id
canAdminister
canCreateSend
canEdit
isActive
lastLogin
group {
id
name
publicName
credit
}
}
}
webhooks {
id
url
event
enabled
created
groupId
}
}
}
Gruppo con Contatti e Gruppi di Contatti
Vedi: Group type · Contact type · ContactGroup type
query GetGroupWithContacts($id: ID!) {
group(id: $id) {
id
name
contactConnection(first: 50) {
totalCount
contacts {
id
name
firstName
lastName
email
timeZone
phoneNumber
}
}
contactGroupConnection(first: 20) {
totalCount
contactGroups {
id
name
colour
contacts {
id
name
email
}
}
}
}
}
Gruppo con Esperienze e Programmazioni
Vedi: Group type · Experience type · Schedule type · Attachment type
query GetGroupWithSettings($id: ID!) {
group(id: $id) {
id
name
experienceConnection(first: 10) {
totalCount
experiences {
id
name
defaultExperience
language
allowSignatureReuse
canReassign
created
}
}
scheduleConnection(first: 10) {
totalCount
schedules {
id
name
default
active
items {
id
daysAfter
frequency
subject
message
when
timeOfDay
skipWeekend
}
}
}
attachmentConnection(first: 10) {
totalCount
attachments {
id
filename
extension
description
autoAttach
created
createdBy
}
}
}
}
Organizzazione con Fatturazione e Fatture
Vedi: Organisation type · Billing type · Invoice type · Quotas type
query GetOrganisationWithBilling($id: ID!) {
organisation(id: $id) {
id
name
billing {
id
customerName
address1
postcode
created
billingContactEmail
technicalContactEmail
taxRate
docSendCredit
userLimit
userCount
alertCount
planName
paymentSystem
currency
invoiceConnection(first: 20) {
totalCount
invoices {
id
created
invoiceNumber
subTotal
totalIncTax
currency
link
}
}
}
quotas {
docSendCredit
contactPrimaryEmail
contactSecondaryEmail
contactTechnicalEmail
}
}
}
Esempi di Ricerca e Filtro
Filtra Documenti per Stato e Intervallo di Date
query FilterDocuments($groupId: ID!, $from: AWSDateTime!, $to: AWSDateTime!, $status: String!) {
group(id: $groupId) {
id
name
documentConnection(
first: 50
from: $from
to: $to
status: $status
) {
totalCount
documents {
id
name
status
created
senderName
senderEmail
}
}
}
}
Cerca Modelli
query SearchTemplates($groupId: ID!, $search: String!) {
group(id: $groupId) {
id
name
templateConnection(
first: 20
search: $search
archived: false
) {
totalCount
templates {
id
title
created
lastSent
tags
}
}
}
}
Filtra Contatti
query FilterContacts($groupId: ID!, $filter: AWSJSON!) {
group(id: $groupId) {
id
name
contactConnection(
first: 50
filter: $filter
) {
totalCount
contacts {
id
name
firstName
lastName
email
}
}
}
}