Table of Contents

GraphQL-Authentifizierung

Wählen Sie die Anmeldung passend zum eingerichteten OAuth-Zugang. Die Beispiele verwenden den GraphQL-Endpunkt des gewünschten Mandanten.

Client-ID und Client-Secret

Der BpQlApplication-Konstruktor mit Token-Endpunkt holt die Tokens selbst.

using var qlApp = new BpQlApplication(endpoint, tokenEndpoint, clientId, clientSecret);

microtech-ERP-Benutzer

using var qlApp = await BpQlApplication.LoginWithCredentialsAsync(
    endpoint,
    clientId,
    username,
    password,
    redirectUri,
    clientSecret: clientSecret);

LoginWithCredentialsAsync meldet einen microtech-ERP-Benutzer ohne Browser an. Die redirectUri muss beim OAuth-Client registriert sein.

Anmeldung im Browser

using var qlApp = await BpQlApplication.LoginWithBrowserAsync(
    endpoint,
    clientId,
    redirectPort: 8400);

LoginWithBrowserAsync öffnet den Systembrowser. Registrieren Sie dafür http://localhost:8400/callback als Redirect-URI. Bei einem vertraulichen Client übergeben Sie zusätzlich clientSecret.

Refresh-Token weiterverwenden

Mit onTokensUpdated können Sie erneuerte GraphQlTokenSet-Werte speichern. Übergeben Sie das zuletzt gespeicherte Refresh-Token beim nächsten Start wieder an FromRefreshTokenAsync. Für einen Dienst ohne Browser:

using var qlApp = await BpQlApplication.FromRefreshTokenAsync(
    endpoint,
    clientId,
    refreshToken,
    onTokensUpdated: tokens => tokenStore.Save(tokens.RefreshToken));

Speichern Sie Tokens geschützt; tokenStore steht hier für Ihre eigene Ablage. Ein abgelaufenes oder widerrufenes Refresh-Token erfordert eine erneute Anmeldung.

Vorhandenes Bearer-Token

using var qlApp = new BpQlApplication(endpoint, token);

Bei diesem Zugang erneuert das SDK das Token nicht selbst.