GraphQL Schnellstart
Dieser Schnellstart zeigt Ihnen, wie Sie den GraphQL Explorer verwenden, um:
- zu bestätigen, dass Ihr Konto mit einer einfachen Abfrage funktioniert
- Ihre
groupIdundtemplateIdzu finden - ein Testdokument mit den minimal erforderlichen Feldern zu senden
- den Aufgabenbericht abzufragen, um die abgeschlossene Dokumentenerstellung zu bestätigen
- denselben Ablauf in Node.js, Python oder C# zu übertragen
Bevor Sie anfangen
Sie benötigen:
- API-Zugang für Ihr Konto aktiviert. Falls Sie diesen noch nicht haben, kontaktieren Sie uns.
- Ein Legalesign-Konto, in das Sie sich einloggen können
- Mindestens eine Gruppe und eine Vorlage in Ihrem Konto
Wählen Sie die Authentifizierung
Der Explorer nutzt Ihre angemeldete Legalesign-Sitzung. In Ihrem eigenen Code unterstützt GraphQL SRP-Authentifizierung für den vollständigen Schema-Zugriff und API-Schlüssel für einen unterstützten Teilbereich.
| Modus | Abdeckung | Header | Am besten für |
|---|---|---|---|
| SRP | Volles GraphQL-Schema | Authorization: Bearer <access-token> | Komplettintegration |
| API-Schlüssel | Nur unterstützter Teilbereich | Authorization: Bearer <api-key> | Serverseitige Automatisierung und häufige Sende-/Leseabläufe |
Dieser Schnellstart verwendet SRP-Authentifizierung in den Sprachenbeispielen, da sie über das volle GraphQL-Schema funktioniert. Wenn Sie einen Developer Portal API-Schlüssel nutzen, prüfen Sie die API-Key GraphQL-Referenz und die Auth-Badges auf den Referenzseiten.
Öffnen Sie den GraphQL Explorer
Gehen Sie zum GraphQL Explorer.
Wenn Sie in Legalesign eingeloggt sind, erfolgt die Authentifizierung im Explorer automatisch.
Kopieren Sie die unten stehenden Abfragen in den GraphQL Explorer, um loszulegen. Später verwenden Sie dasselbe graphql in Ihrem eigenen Code.
Abfragen Ihres Benutzers
Starten Sie mit einer harmlosen Abfrage, um zu bestätigen, dass der Explorer funktioniert:
query MyUser {
user {
id
firstName
lastName
email
}
}
Wenn dies erfolgreich ist, funktioniert Ihre Explorer-Sitzung und Sie sind bereit, die IDs abzurufen, die für einen Versand benötigt werden.
Abfragen Ihrer Gruppen
Listen Sie als nächstes die Gruppen auf, zu denen Ihr Benutzer gehört:
query MyGroups {
user {
memberConnection(first: 10) {
groupMembers {
group {
id
name
}
}
}
}
}
Kopieren Sie die id für die Gruppe, von der Sie senden möchten. Das ist Ihre groupId.
Abfragen der Vorlagen in dieser Gruppe
Fragen Sie nun die Vorlagen in dieser Gruppe ab:
query GroupTemplates($groupId: ID!) {
group(id: $groupId) {
id
name
templateConnection(first: 10) {
templates {
id
title
}
}
}
}
Verwenden Sie diese Variablen:
{
"groupId": "<your-group-id>"
}
Kopieren Sie die id für die Vorlage, die Sie senden möchten. Das ist Ihre templateId.
Senden Sie Ihr erstes Dokument
Fügen Sie diese Mutation in den Explorer ein:
mutation SendDocument($input: DocumentSendSettingsInput!) {
send(input: $input)
}
Fügen Sie diese Variablen hinzu und ersetzen Sie die Platzhalterwerte:
{
"input": {
"groupId": "<your-group-id>",
"templateId": "<your-template-id>",
"title": "Test Document",
"recipients": [
{
"firstName": "Jane",
"lastName": "Smith",
"email": "jane@example.com",
"order": 0
}
]
}
}
Wenn die Eingabe ungültig ist, gibt die Mutation sofort einen Validierungsfehler zurück.
Wenn die Mutation erfolgreich ist, gibt sie eine Aufgaben-ID zurück. Legalesign verarbeitet Sendungen asynchron, daher startet die Aufgabe den Versandauftrag, anstatt auf die Zustellung zu warten.
Abfragen des Aufgabenberichts
Polling ist gut für den Einstieg. Für die Produktion können Sie auf Subscriptions umsteigen, um den Versandfortschritt in Echtzeit zu verfolgen.
Nach send verwenden Sie die zurückgegebene Aufgaben-ID, um die task-Abfrage zu polllen:
query GetTask($id: ID!) {
task(id: $id) {
data
report {
status
batchId
documents
errors
}
}
}
Verwenden Sie diese Variablen:
{
"id": "<task-id-from-send>"
}
Das report-Feld ermöglicht es Ihnen, zu bestätigen, wann die Dokumentenerstellung nach einem gültigen Versand, der die asynchrone Aufgabe gestartet hat, abgeschlossen ist.
Überwachen Sie report.status, bis es einen Endzustand erreicht:
COMPLETEDbedeutet, dass die Dokumentenerstellung abgeschlossen istFAILEDbedeutet, dass die Dokumentenerstellung nicht erfolgreich abgeschlossen wurde
Solange die Aufgabe noch läuft, können Zwischenzustände wie PENDING oder READY angezeigt werden.
Für den Einstieg und zum Prototyping ist das Polling der task-Abfrage eine einfache Möglichkeit, den Fortschritt zu prüfen. Für die Produktion sind Echtzeit-Updates mit Subscriptions besser geeignet.
Siehe:
- task query
- TaskReport
- Troubleshoot Send Validation
- Subscription Examples
- Track Send Tasks with Subscriptions
Verwenden Sie beim Testen eine echte Empfänger-E-Mail-Adresse, die Sie kontrollieren, damit Sie bestätigen können, dass der Versand wie erwartet abgeschlossen wurde.
Sie können groupId und templateId auch aus den URLs Ihres Dashboards und des Formular-Editors extrahieren – sie sind die einzigen langen alphanumerischen Werte in diesen URLs.
Zum Code wechseln
Für den programmgesteuerten Zugriff wählen Sie zuerst einen Authentifizierungsmodus und erhalten ein Token oder einen API-Schlüssel. Siehe Authentifizieren mit der API.
Authentifizieren und eine Anfrage machen
Sobald Sie Ihr Token oder Ihren API-Schlüssel haben, senden Sie eine GraphQL-POST-Anfrage mit einem Authorization-Header:
const GRAPHQL_ENDPOINT = 'https://graphql.uk.legalesign.com/graphql';
const TOKEN = '<token-or-api-key>';
async function graphql(token, query, variables = {}) {
const response = await fetch(GRAPHQL_ENDPOINT, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${token}`
},
body: JSON.stringify({ query, variables })
});
return response.json();
}
async function main() {
const result = await graphql(TOKEN, `
query {
user {
id
firstName
lastName
email
}
}
`);
console.log(JSON.stringify(result, null, 2));
}
main().catch(console.error);
Nächste Schritte
- Wenn Sie eine sprachspezifische Einrichtung benötigen, verwenden Sie Node.js Setup oder C# Setup
- Wenn Sie zuerst Ihre eigene Vorlage erstellen möchten, folgen Sie Datei als Vorlage hochladen
- Lesen Sie Dokument senden für das vollständige Node.js-Codebeispiel
- Durchsuchen Sie die send-Mutationsreferenz