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! Please tell us how we can improve more.
Sorry to hear that. Please tell us how we can improve.
Thank you for sharing your feedback so we can improve your experience.