Skip to content

verdigado/gruene_app_auth_client_api

Repository files navigation

gruene_app_auth_client_api (EXPERIMENTAL)

Keycloak Apo Authentication API All end points with required "Signature" header expect a comma seperated key-value string. Required keys are "signature", "keyId" (device ID) and "created" (unix time in milliseconds). e.g. keyId:device_id,created:1680253758079,signature:base64encodedSignature see https://datatracker.ietf.org/doc/html/draft-cavage-http-signatures-12

This Dart package is automatically generated by the OpenAPI Generator project:

  • API version: 1.0.0
  • Build package: org.openapitools.codegen.languages.DartDioClientCodegen

Requirements

Installation & Usage

pub.dev

To use the package from pub.dev, please include the following in pubspec.yaml

dependencies:
  gruene_app_auth_client_api: 1.0

Github

If this Dart package is published to Github, please include the following in pubspec.yaml

dependencies:
  gruene_app_auth_client_api:
    git:
      url: https://github.com/GIT_USER_ID/GIT_REPO_ID.git
      #ref: main

Local development

To use the package from your local drive, please include the following in pubspec.yaml

dependencies:
  gruene_app_auth_client_api:
    path: /path/to/gruene_app_auth_client_api

Getting Started

Please follow the installation procedure and then run the following:

import 'package:gruene_app_auth_client_api/gruene_app_auth_client_api.dart';


final api = GrueneAppAuthClientApi().getAppAuthenticatorApi();
final String realmId = realmId_example; // String | The realm ID
final String key = key_example; // String | Keycloak Action token (JWT)
final String clientId = clientId_example; // String | The current requested Client
final String tabId = tabId_example; // String | Keycloak tab ID
final String deviceId = deviceId_example; // String | Mobile device ID
final String registrationToken = registrationToken_example; // String | Mobile device firebase registration token
final String deviceOs = deviceOs_example; // String | Device OS
final String publicKey = publicKey_example; // String | Base64 encoded public key
final String keyAlgorithm = keyAlgorithm_example; // String | PublicKey algorithm
final String signatureAlgorithm = signatureAlgorithm_example; // String | PublicKey algorithm
final bool granted = true; // bool | Was access granted?
final String signature = signature_example; // String | Signature of the decrypted secret, which was send by keycloak + algorithm

try {
    api.realmsRealmIdLoginActionsActionTokenGet(realmId, key, clientId, tabId, deviceId, registrationToken, deviceOs, publicKey, keyAlgorithm, signatureAlgorithm, granted, signature);
} catch on DioError (e) {
    print("Exception when calling AppAuthenticatorApi->realmsRealmIdLoginActionsActionTokenGet: $e\n");
}

Documentation for API Endpoints

All URIs are relative to https://saml.gruene.de

Class Method HTTP request Description
AppAuthenticatorApi realmsRealmIdLoginActionsActionTokenGet GET /realms/{realmId}/login-actions/action-token Setup Authenticator & Authentication
AppAuthenticatorChallengeApi realmsRealmIdChallengeResourceDeviceIdGet GET /realms/{realmId}/challenge-resource/{deviceId} Get current authentication challenge for this device

Documentation For Models

Documentation For Authorization

All endpoints do not require authorization.

Author