GraphQL · ¿Me avisan si cambia?
Vigilancia de RUT
Tus listas de RUT, verificadas contra cada publicación del SII, con las novedades —también las del Boletín Concursal— por API, correo o webhook. Los ejemplos de abajo son la petición y la respuesta real de cada operación, no una aproximación.
Lo que descuenta cada operación es lo mismo por REST, SOAP, GraphQL y MCP —pagas por el dato, no por el protocolo—; la tabla completa está en Empezar.
POST /graphql
Las novedades de tu cartera
novedades no descuenta, como /v1/vigilancia/novedades: cada novedad ya se descontó al entregarse. Se pagina por despues y filtra por desde y lista; retenidas dice cuántas esperan a que tu cuenta tenga consultas. Solo con API key.
Nunca descuenta: cada novedad ya se descontó al entregarse.
{
novedades(primero: 100) {
novedades { rut razon_social descripcion entregada_en }
hay_mas
retenidas
}
}
# consulta.graphql = el bloque de arriba (jq lo empaqueta)
curl -s -i https://api.datario.cl/graphql \
-H "Authorization: Bearer dtr_TU_KEY" \
-H "Content-Type: application/json" \
--data "{\"query\": $(jq -Rs . consulta.graphql)}"
import requests
query = open("consulta.graphql").read()
r = requests.post(
"https://api.datario.cl/graphql",
json={"query": query},
headers={"Authorization": "Bearer dtr_TU_KEY"},
timeout=10,
)
cuerpo = r.json()
for e in cuerpo.get("errors", []):
print(e["extensions"]["code"], e["message"])
print(cuerpo.get("data"))
consumo = cuerpo["extensions"]["consumo"]
print(consumo["consultas_cobradas"], "cobradas")
import { readFileSync } from "node:fs";
const query = readFileSync("consulta.graphql", "utf8");
const r = await fetch("https://api.datario.cl/graphql", {
method: "POST",
headers: {
"Authorization": "Bearer dtr_TU_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({ query }),
});
const cuerpo = await r.json();
for (const e of cuerpo.errors ?? []) {
console.error(e.extensions.code, e.message);
}
console.log(cuerpo.data);
console.log(cuerpo.extensions.consumo);
La respuesta, con su consumo
{
"data": {
"novedades": {
"novedades": [],
"hay_mas": false,
"retenidas": 0
}
},
"extensions": {
"consumo": {
"consultas_cobradas": 0,
"ruts_resueltos": 0,
"paginas_busqueda": 0,
"plan_restante": null,
"saldo_restante": null,
"por_operacion": {}
}
}
}
Por GraphQL se leen las novedades. Las listas —crear, agregar RUT, quitar— y el webhook se administran por REST: gestionar las listas y el webhook.
Probar en la consola Este producto por REST Este producto por SOAP Este producto por MCP Qué es Vigilancia de RUT