Inicio rápido de GraphQL
Este inicio rápido te muestra cómo usar el Explorador GraphQL para:
- confirmar que tu cuenta funciona con una consulta simple
- encontrar tu
groupIdytemplateId - enviar un documento de prueba con los campos mínimos requeridos
- consultar periódicamente el reporte de tarea para confirmar que la creación del documento ha finalizado
- trasladar el mismo flujo a Node.js, Python o C#
Antes de Empezar
Necesitas:
- Una cuenta de Legalesign a la que puedas acceder
- Al menos un grupo y una plantilla en tu cuenta
- Una clave API - cómo obtener una clave API
Elige Autenticación
El Explorador usa tu sesión iniciada en Legalesign. En tu propio código, GraphQL soporta autenticación SRP para acceso completo al esquema y claves API para un subconjunto soportado.
| Modo | Cobertura | Encabezado | Mejor para |
|---|---|---|---|
| SRP | Esquema completo de GraphQL | Authorization: Bearer <access-token> | Integraciones completas |
| Clave API | Solo subconjunto soportado | Authorization: Bearer <api-key> | Automatización del lado servidor y flujos comunes de enviar/leer |
Este inicio rápido usa autenticación SRP en los ejemplos de lenguaje porque funciona en todo el esquema GraphQL. Si usas una clave API del Portal para desarrolladores, revisa la referencia GraphQL de clave API y los distintivos de autenticación en las páginas de referencia.
Abre el Explorador GraphQL
Ve al Explorador GraphQL.
Si has iniciado sesión en Legalesign, la autenticación es automática en el Explorador.
Copia y pega las consultas siguientes en el Explorador GraphQL para comenzar. Más adelante, usarás el mismo graphql en tu propio código.
Consulta Tu Usuario
Comienza con una consulta inocua para confirmar que el Explorador funciona:
query MyUser {
user {
id
firstName
lastName
email
}
}
Si esto tiene éxito, tu sesión en el Explorador está funcionando y estás listo para buscar los IDs necesarios para un envío.
query MyGroups {
user {
memberConnection(first: 10) {
groupMembers {
group {
id
name
}
}
}
}
}
Siguiente, lista los grupos a los que pertenece tu usuario:
query GroupTemplates($groupId: ID!) {
group(id: $groupId) {
id
name
templateConnection(first: 10) {
templates {
id
title
}
}
}
}
Consulta las plantillas en ese grupo:
{
"groupId": "<your-group-id>"
}
Usa estas variables:
mutation SendDocument($input: DocumentSendSettingsInput!) {
send(input: $input)
}
Pega esta mutación en el Explorador:
{
"input": {
"groupId": "<your-group-id>",
"templateId": "<your-template-id>",
"title": "Test Document",
"recipients": [
{
"firstName": "Jane",
"lastName": "Smith",
"email": "jane@example.com",
"order": 0
}
]
}
}
Agrega estas variables y reemplaza los valores de marcador:
query GetTask($id: ID!) {
task(id: $id) {
data
report {
status
batchId
documents
errors
}
}
}
Luego del send, usa el ID de tarea devuelto para consultar la tarea con:
{
"id": "<task-id-from-send>"
}
Usa estas variables:
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);
Una vez que tengas tu token o clave API, envía una petición POST GraphQL con un encabezado Authorization: