Credential Verification
Validate Verifiable Credentials using Verification Service.
Install Dependency
Package: affinidi_tdk_credential_verification_client
dart pub add affinidi_tdk_credential_verificationCheck the latest version on pub.dev or view the source on GitHub.
Classes and Methods
Default API
Verify Verifiable Credentials and Verifiable Presentations.
verifyCredentials
Verifies verifiable credentials.
Parameters
verifyCredentialInput
VerifyCredentialInput
RequiredList of 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;
final response = (await defaultApi.verifyCredentials(verifyCredentialInput: verifyCredentialInput.build()));
print(response);
} catch (e) {
print('Exception: $e');
}verifyPresentation
Verifies a verifiable presentation.
Parameters
verifyPresentationInput
VerifyPresentationInput
RequiredVerifiable 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('Exception: $e');
}Was this page helpful?
Glad to hear it. Thanks for letting us know.
Sorry to hear that. Thanks for letting us know.