Search packages, repositories and app categories

Package detailsv1.0.3

uaepass_api

Flutter UAE PASS package for Authentication API (Login , Logout , Get user profile).

AndroidiOS
30-day downloads
121
Likes
11
Pub points
150

Install package

flutter pub add uaepass_api

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

The uaepass_api package is a Flutter plugin designed for seamless integration with the UAE PASS authentication system, enabling developers to implement login, logout, and user profile retrieval functionalities within Android and iOS applications. It simplifies secure access to government services by leveraging UAE PASS's digital identity framework. The package handles authentication flows and token management, ensuring compliance with UAE's digital identity standards. It is ideal for public sector and enterprise apps requiring trusted user verification.

Use cases

  • Government service apps
  • Enterprise identity integration
  • Secure user login systems
  • Digital onboarding workflows
  • Mobile app authentication

Key features

  • UAE PASS login support
  • User profile retrieval
  • Secure token handling
  • Cross-platform compatibility (Android & iOS)
  • Easy integration with Flutter

Suitable for

  • Public sector applications
  • Government digital initiatives
  • Secure mobile apps
  • Developers targeting UAE users
  • Apps requiring eID authentication

Considerations

  • Requires UAE PASS account setup
  • Depends on external API availability
  • Needs proper configuration for production
  • Limited to UAE-based services
  • May require additional compliance checks

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

uaepass_api

Un-official UAE PASS Flutter package for authentication capability.

Why uaepass_api?

  • 🚀 Easy to use
  • ⚡ Fullscreen window
  • ❤ Supports app installed scenario
  • ❤ Supports app not installed scenario
  • 🛡️ Null safety

Getting Started

  • Add the plugin to your pubspec.yaml file
uaepass_api: ^1.0.3
  • Run flutter pub get
flutter pub get
  • Import the package
import 'package:uaepass_api/uaepass_api.dart';

UaePassAPI uaePassAPI =UaePassAPI(
    clientId: "<clientId>",
    redirectUri: "<redirectUri>",
    clientSecrete: "<clientSecrete>",
    appScheme: "<Your App Scheme>",
    language: "en",
    isProduction: false);
  • Get user code
    String? code =  await uaePassAPI.signIn(context);
  • Get user AccessToken
    String? token =  await uaePassAPI.getAccessToken(code);
  • Get user info
    String? token =  await uaePassAPI.getUserProfile(token);
  • Logout
  await uaePassAPI.logout(context);

iOS Setup

  • Add the following to your Info.plist file
  <key>LSApplicationQueriesSchemes</key>
    <array>
      <string>uaepass</string>
      <string>uaepassqa</string>
      <string>uaepassdev</string>
      <string>uaepassstg</string>
    </array>
  <key>CFBundleURLTypes</key>
  <array>
    <dict>
      <key>CFBundleTypeRole</key>
      <string>Editor</string>
      <key>CFBundleURLName</key>
      <string>You App URL Scheme here</string>
      <key>CFBundleURLSchemes</key>
      <array>
        <string>You App URL Scheme here</string>
      </array>
    </dict>
  </array>

Android Setup

  • Update android:launchMode="singleTask" the AndroidManifest.xml file

 <activity
            android:name=".MainActivity"
            android:exported="true"

            android:launchMode="singleTask"

            android:theme="@style/LaunchTheme"
            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
            android:hardwareAccelerated="true"
            android:windowSoftInputMode="adjustResize">
            .....

            </activity>

  • Set up the intent filter in your AndroidManifest.xml file
            <intent-filter >
                <action android:name="android.intent.action.VIEW" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />


                <data
                    android:host="success"
                    android:scheme="<Your App Scheme>" />

                <data
                    android:host="failure"
                    android:scheme="<Your App Scheme>" />

            </intent-filter>

Note: incase kotlin error, add the following to your build.gradle file

buildscript {
    // update this line
    ext.kotlin_version = '1.7.10'

Read Common issues

Categories

Dependencies

Dependency list 4 items

Source repository

Projects using this package

No data available yet.