class OpenId4VpRegistry : DigitalCredentialRegistry


A registration request containing data that can serve the OpenID for Verifiable Presentations protocol based request.

The (type, id) properties together act as a primary key for this registry record stored with the Registry Manager. You later can use the same values of type + id to overwrite or delete a previously registered registry. Therefore, you should track the ids you use for various registry use cases (most often you only need one) so that you can later use them to update the same registry record.

If both credentialEntries and inlineIssuanceEntries, the registry will never be used to answer a request.

Throws
kotlin.IllegalArgumentException

if id or intentAction length is greater than 64 characters

Summary

Public constructors

OpenId4VpRegistry(
    credentialEntries: List<DigitalCredentialEntry>,
    id: String,
    intentAction: String,
    inlineIssuanceEntries: List<InlineIssuanceEntry>
)

Inherited properties

From androidx.credentials.registry.provider.RegisterCredentialsRequest
ByteArray

the credentials to register

String

the unique id that identifies this registry, such that it won't be overwritten by other different registries of the same type

String

the intent action that will be used to launch your fulfillment activity when one of your credentials was chosen by the user, default to RegistryManager.ACTION_GET_CREDENTIAL when unspecified; when Credential Manager launches your fulfillment activity, it will build an intent with the given intentAction targeting your package, so this is useful when you need to define different fulfillment activities for different registries

ByteArray

the matcher wasm binary in bytes; the matcher will be interpreted and run in a safe and privacy-preserving sandbox upon an incoming request and it should output the qualified credentials given the credentials and the request; an invalid matcher (e.g. one that fails wasm interpretation or causes exceptions) will mean that your credentials will never be surfaced to the user

String

the type of the credentials being registered; this matches the androidx.credentials.Credential.type that these registered credentials will be returned as

Public constructors

OpenId4VpRegistry

OpenId4VpRegistry(
    credentialEntries: List<DigitalCredentialEntry>,
    id: String,
    intentAction: String = RegistryManager.ACTION_GET_CREDENTIAL,
    inlineIssuanceEntries: List<InlineIssuanceEntry> = emptyList()
)
Parameters
credentialEntries: List<DigitalCredentialEntry>

the list of entries to register

id: String

the unique id for this registry

intentAction: String = RegistryManager.ACTION_GET_CREDENTIAL

the intent action that will be used to launch your fulfillment activity when one of your credentials was chosen by the user, default to RegistryManager.ACTION_GET_CREDENTIAL when unspecified; when Credential Manager launches your fulfillment activity, it will build an intent with the given intentAction targeting your package, so this is useful when you need to define different fulfillment activities for different registries

inlineIssuanceEntries: List<InlineIssuanceEntry> = emptyList()

the list of inline issuance entries to add the user credentials on the fly, if applicable