daf-graphql-client
v0.5.1
Published
Datafordeler GraphQL klient
Maintainers
Readme
Datafordeler GraphQL klient
Denne klient gør det nemt at hente data fra Datafordelerens GraphQL tjenester.
| ⚠️ | Klienten er under aktiv udvikling og er ikke stabil. Brug af klienten er på eget ansvar, vi garanterer ikke at den virker korrekt. | | --- | -------------------------------------------------------------------------------------------------------------------------------------- |
Hurtigt eksempel
Her er et fuldt eksempel på hvordan klienten bruges:
Den første fil bygger en query:
import { BuildQuery_MAT_SamletFastEjendom } from "daf-graphql-client/MAT/v1/SamletFastEjendom/build.js";
import { MAT_MatrikulærtElementStatus } from "daf-graphql-client/MAT/v1/types.js";
import { LongVariable } from "daf-graphql-client/variables.js";
// Byg en query som kan hente en SFE's lokalId og seneste sags lokalId
export const sfeQuery = BuildQuery_MAT_SamletFastEjendom({
filter: {
status: { eq: MAT_MatrikulærtElementStatus.Gældende },
BFEnummer: { eq: LongVariable("bfe") },
},
nodes: {
id_lokalId: true,
senesteSagLokalId: true,
},
});Den næste fil bruger den byggede query til at hente data fra Datafordeleren:
import { sfeQuery } from "./bygQuery.js";
import { FetchQuery_MAT_SamletFastEjendom } from "daf-graphql-client/MAT/v1/SamletFastEjendom/fetch.js";
import { ApiKeyAuthenticator } from "daf-graphql-client/authentication.js";
import type { QueryFetchConfiguration } from "daf-graphql-client/types.js";
const config: QueryFetchConfiguration = {
authentication: new ApiKeyAuthenticator("..."), // indsæt din API nøgle til Datafordeleren her
};
// Vælg hvilken dato du gerne vil se data for
const bitemporality = {
registreringstid: new Date(),
virkningstid: new Date("2024"),
};
// Sæt den variabel som vi byggede ind i vores query
const variables = {
bfe: 000000, // vælg et BFE-nummer at prøve med her
};
// Start en klient med den angivne query og variabler
const sfeQueryClient = new FetchQuery_MAT_SamletFastEjendom(config, sfeQuery, bitemporality, variables);
// Du kan løbende logge resultaterne imens de hentes
for await (const SFE of sfeQueryClient.streamInstances()) {
console.log(SFE);
}
// Eller du kan vente på at de alle sammen er hentet
const SFEs = await sfeQueryClient.getInstances();
console.log(SFEs);
// Du kan hente alle SFEer bortset fra den første og sidste
const mostSFEs = await sfeQueryClient.getInstances(1, -1);
console.log(mostSFEs);
// Du kan også bare hente den første SFE hvis du ved at der ikke er andre
const sfe = await sfeQueryClient.getInstance(true);
console.log(sfe);Autentificering
Se hvordan du autentificerer din klient med datafordeleren her: autentificering.md.
Registeroversigt
Se hvilke registre klienten understøtter: registre.md.
