GraphQL
Zur Verwaltung der Plattformressourcen steht eine GraphQL-Schnittstelle unter
https://login.urbanstack.de/realms/udh/data-hub/graphql
zur Verfügung.
Zur Entwicklung der Abfragen ist GraphiQL unter https://login.urbanstack.de/realms/udh/data-hub/graphiql verfügbar.
Die verfügbaren Abfragen und Mutationen können in GraphiQL eingesehen werden.
Authentifizierung
Zur Authentifizierung können Bearer Tokens eingesetzt werden wenn die Abfrage dies erfordert.
Dies geschieht im von der Plattform bereitgestellen GraphiQL-Editor automatisch. Die Queries und Mutations werden mit den Berechtigungen des eingeloggten Benutzers ausgeführt. Sollte es einmal einen Fehler bei der Authentifizierung geben (unauthorized), kann dieser meistens durch ein Neuladen der Seite behoben werden.
Hilfsbibliothek
Über die in JupyterLab integrierte Hilfsbibliothek kann ein authentifizierter GraphQL-Client erstellt werden:
from _ import login, GraphQLRequest
auth = login()
auth.graphql.execute(GraphQLRequest("{ tenants { tenant } }"))
{
"tenants": [
{ "tenant": "anderermandant" },
{ "tenant": "meinmandant" },
{ "tenant": "weiterer" },
{ "tenant": "nocheinmandant" }
]
}
auth.graphql.execute(GraphQLRequest("query ($tenant:String!) { tenant(tenant:$tenant) { projects { project } } }", variable_values={"tenant": "knuffingen"}))
{
"tenant": {
"projects": [
{
"project": "trainstation"
}
]
}
}