Credential Verification

Validate Verifiable Credentials using Verification Service.

Install Dependency

Package: affinidi_tdk_credential_verification_client

dart pub add affinidi_tdk_credential_verification

You can check the latest version of this module on the pub.dev or view the source code at the GitHub repository.

Classes and Methods

Default API

Verify Verifiable Credentials and Verifiable Presentations.

verifyCredentials

Generate and issue a credential offer to the user.

Parameters

VerifyCredentialInput [Object]

JSON object to provide the Verifiable Credentials to validate.

Example
import 'package:dio/dio.dart'; import 'package:affinidi_tdk_auth_provider/affinidi_tdk_auth_provider.dart'; import 'package:dotenv/dotenv.dart'; import 'package:affinidi_tdk_credential_verification_client/affinidi_tdk_credential_verification_client.dart'; import 'package:ssi/ssi.dart';
try { late DefaultApi defaultApi; final dio = Dio( BaseOptions( baseUrl: AffinidiTdkCredentialVerificationClient.basePath, connectTimeout: const Duration(seconds: 5), receiveTimeout: const Duration(seconds: 5), ), ); final apiClient = AffinidiTdkCredentialVerificationClient( dio: dio, authTokenHook: authProvider.fetchProjectScopedToken, ); defaultApi = apiClient.getDefaultApi(); final verifiableCredentials = ListBuilder<W3cCredential>() ..add(W3cCredential((b) => b ..atContext = W3cPresentationContextBuilder() ..id = '' ..type = ListBuilder<String>() ..holder = W3cCredentialHolderBuilder() ..credentialSubject = W3cCredentialCredentialSubjectBuilder() ..credentialStatus = W3cCredentialStatusBuilder() ..issuanceDate = '' ..issuer = '' ..expirationDate = '' ..proof = W3cProofBuilder() ..credentialSchema = W3cCredentialCredentialSchemaBuilder() )); final verifyCredentialInput = VerifyCredentialInputBuilder() ..verifiableCredentials = verifiableCredentials; // Call the API final response = (await defaultApi.verifyCredentials(verifyCredentialInput: verifyCredentialInput.build())); print(response); } catch (e) { print('Error calling the method: $e'); }

verifyPresentation

Generate and issue a credentil offer to the user.

Parameters

VerifyPresentationInput [Object]

JSON object to provide the Verifiable Presentation to validate.

Example
import 'package:dio/dio.dart'; import 'package:affinidi_tdk_auth_provider/affinidi_tdk_auth_provider.dart'; import 'package:dotenv/dotenv.dart'; import 'package:affinidi_tdk_credential_verification_client/affinidi_tdk_credential_verification_client.dart'; import 'package:ssi/ssi.dart';
try { late DefaultApi defaultApi; final dio = Dio( BaseOptions( baseUrl: AffinidiTdkCredentialVerificationClient.basePath, connectTimeout: const Duration(seconds: 5), receiveTimeout: const Duration(seconds: 5), ), ); final apiClient = AffinidiTdkCredentialVerificationClient( dio: dio, authTokenHook: authProvider.fetchProjectScopedToken, ); defaultApi = apiClient.getDefaultApi(); final verifiablePresentation = W3cPresentationBuilder(); final verifyPresentationInput = VerifyPresentationInputBuilder() ..verifiablePresentation = verifiablePresentation; final response = (await defaultApi.verifyPresentation(verifyPresentationInput: verifyPresentationInput.build())); print(response); } catch (e) { print('Error calling the method: $e'); }