Personal Information

List of the available data points from personal information from the profile template that application can request from the Affinidi Vault.

Presentation Definition

Below is the sample Presentation Definition for querying personal information from the user’s Affinidi Vault.

{
  "id": "profile_data",
  "input_descriptors": [
    {
      "id": "profile_vc",
      "name": "Profile VC",
      "purpose": "Get some profile data",
      "constraints": {
        "fields": [
          {
            "path": [
              "$.@context"
            ],
            "purpose": "Verify VC Context",
            "filter": {
              "type": "array",
              "contains": {
                "type": "string",
                "pattern": "^https://schema.affinidi.io/profile-template/context.jsonld$"
              }
            }
          },
          {
            "path": [
              "$.type"
            ],
            "purpose": "Verify VC Type",
            "filter": {
              "type": "array",
              "contains": {
                "type": "string",
                "pattern": "^ProfileTemplate$"
              }
            }
          },
          {
            "path": [
              "$.credentialSubject.person.givenName"
            ],
            "purpose": "Require first name"
          },
          {
            "path": [
              "$.credentialSubject.person.familyName"
            ],
            "purpose": "Require last name"
          }
        ]
      }
    }
  ]
}

The sample Presentation Definition above requests the user’s first and last name. Additionally, we must include the $.@context and $.type filters to ensure we request data from the Profile Template schema.

Available Data Points

Here is a list of available fields in the Personal Information category of the Profile Template that can be requested from the user’s Affinidi Vault.

Address

Property Name:addresses

Property Type:Array

Property Path:$.credentialSubject.person.addresses[0]

NameTypeFieldDescription
CountryStringaddressCountryEnter country
City or localityStringaddressLocalityEnter city or locality
RegionStringaddressRegionEnter region
Address typeStringaddressTypeSelect address type
Postal codeStringpostalCodeEnter postal code
Street name and house numberStringstreetAddressEnter street name and house number

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.addresses[0].{FIELD_NAME}

Date of birth

Property Name:birthdate

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
Date of birthStringbirthdateEnter date of birth (YYYY-MM-DD)

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Email address

Property Name:email

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
Email addressStringemailEnter email address

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Family name

Property Name:familyName

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
Family nameStringfamilyNameEnter family name

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Gender

Property Name:gender

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
GenderStringgenderSelect gender

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Given name

Property Name:givenName

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
Given nameStringgivenNameEnter given name

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Highest education degree

Property Name:highestEducationLevel

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
Highest education degreeStringhighestEducationLevelEnter highest education degree

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Middle name

Property Name:middleName

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
Middle nameStringmiddleNameEnter middle name

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Nickname

Property Name:nickname

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
NicknameStringnicknameEnter nickname

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Occupation

Property Name:occupation

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
OccupationStringoccupationEnter occupation

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Phone number

Property Name:phoneNumber

Property Type:String

Property Path:$.credentialSubject.person

NameTypeFieldDescription
Phone numberStringphoneNumberEnter phone number

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.{FIELD_NAME}

Profile Picture

Property Name:picture

Property Type:Object

Property Path:$.credentialSubject.person.picture

NameTypeFieldDescription
Profile picture captionStringcaptionEnter profile picture caption
Profile picture URLStringurlEnter profile picture URL

To request the data, use the property path with the field name of the data you require.

For example, $.credentialSubject.person.picture.{FIELD_NAME}