Create Credential Verification Presentation Session (NATIVE - Push Notification)

POST {{apiPath}}/environments/{{envID}}/presentationSessions

Use the POST {{apiPath}}/environments/{{envID}}/presentationSessions to initiate verification of a user credential using the native protocol of the PingOne Credentials service and use a push notification to the user's digital wallet. Each presentation session silently times out after 5 minutes.

Prerequisites

See Credential Verifications presentation session data model for full property descriptions.

PropertyTypeRequired
applicationInstance.idStringN/A
digitalWalletApplication.idStringN/A
issuerFilter.environmentIdsString[]Optional
messageStringOptional
notificationObjectOptional
notification.templateObjectOptional
notification.template.localeStringOptional
notification.template.variablesObject[]Required/Optional
notification.template.variantStringOptional
protocolStringOptional
requestedCredentialsObject[]Required
requestedCredentials.keysString[]Optional
requestedCredentials.typeStringRequired

After receipt of this request, the credential service uses the credential_verification notification template to send a push notification to a digital wallet. The notification.template object can define a variant and locale for the notifications, if needed.

Important: Content of requestedCredentials differs by protocol. The protocol of NATIVE permits multiple credential types per request and uses requestedCredentials.keys to return only those selected data fields for each credential type.

Note: The service searches all environments listed in issuerFilter.environmentIds for the issuer of the presented credential. If the user presents a credential that is not from one of these issuers, the verification fails with status of VERIFICATION_FAILED.

Request Body

{"protocol"=>"NATIVE", "message"=>"Requesting a Verifiable Credential", "applicationInstance"=>{"id"=>"{{applicationInstanceID}}"}, "digitalWalletApplication"=>{"id"=>"{{digitalWalletApplicationID}}"}, "notification"=>{"template"=>{"locale"=>"en", "variant"=>"variant_B"}}, "requestedCredentials"=>[{"type"=>"Driver License", "keys"=>["First Name", "Last Name"]}]}