Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.
The following example shows a request.
POST https://graph.microsoft.com/beta/identity/verifiedId/profiles
Content-Type: application/json
{
"name": "Contoso Verified ID",
"description": "Contoso Verified Identity",
"lastModifiedDateTime": null,
"state": "enabled",
"verifierDid": "did:web:eu.did-dev.contoso.io",
"priority": 0,
"verifiedIdProfileConfiguration": {
"methodType": "tenantCustomCredential",
"type": "verifiedIdentity",
"manifestUrl": "https://verifiedid.contoso.com/manifest",
"acceptedIssuer": "did:web:eu.did-dev.contoso.io",
"claimBindingSource": "directory",
"claimBindings": [
{
"sourceAttribute": "First name",
"verifiedIdClaim": "vc.credentialSubject.firstName"
},
{
"sourceAttribute": "Last name",
"verifiedIdClaim": "vc.credentialSubject.lastName"
}
]
},
"faceCheckConfiguration": {
"isEnabled": true,
"sourcePhotoClaimName": "portrait"
},
"mobileDriversLicenseConfiguration": {
"acceptedRegions": [
"region-code"
],
"documentStandard": "document-standard"
},
"verifiedIdUsageConfigurations": [
{
"isEnabledForTestOnly": true,
"purpose": "verification"
}
],
"selfServiceIssuance": {
"isEnabled": true,
"issuanceUrl": "https://verifiedid.contoso.com/issue"
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
using Microsoft.Kiota.Abstractions.Serialization;
var requestBody = new VerifiedIdProfile
{
Name = "Contoso Verified ID",
Description = "Contoso Verified Identity",
LastModifiedDateTime = null,
State = VerifiedIdProfileState.Enabled,
VerifierDid = "did:web:eu.did-dev.contoso.io",
Priority = 0,
VerifiedIdProfileConfiguration = new VerifiedIdProfileConfiguration
{
Type = "verifiedIdentity",
AcceptedIssuer = "did:web:eu.did-dev.contoso.io",
ClaimBindingSource = ClaimBindingSource.Directory,
ClaimBindings = new List<ClaimBinding>
{
new ClaimBinding
{
SourceAttribute = "First name",
VerifiedIdClaim = "vc.credentialSubject.firstName",
},
new ClaimBinding
{
SourceAttribute = "Last name",
VerifiedIdClaim = "vc.credentialSubject.lastName",
},
},
AdditionalData = new Dictionary<string, object>
{
{
"methodType" , "tenantCustomCredential"
},
{
"manifestUrl" , "https://verifiedid.contoso.com/manifest"
},
},
},
FaceCheckConfiguration = new FaceCheckConfiguration
{
IsEnabled = true,
SourcePhotoClaimName = "portrait",
},
VerifiedIdUsageConfigurations = new List<VerifiedIdUsageConfiguration>
{
new VerifiedIdUsageConfiguration
{
IsEnabledForTestOnly = true,
Purpose = VerifiedIdUsageConfigurationPurpose.Recovery,
},
},
AdditionalData = new Dictionary<string, object>
{
{
"mobileDriversLicenseConfiguration" , new UntypedObject(new Dictionary<string, UntypedNode>
{
{
"acceptedRegions", new UntypedArray(new List<UntypedNode>
{
new UntypedString("region-code"),
})
},
{
"documentStandard", new UntypedString("document-standard")
},
})
},
{
"selfServiceIssuance" , new UntypedObject(new Dictionary<string, UntypedNode>
{
{
"isEnabled", new UntypedBoolean(true)
},
{
"issuanceUrl", new UntypedString("https://verifiedid.contoso.com/issue")
},
})
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Identity.VerifiedId.Profiles.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewVerifiedIdProfile()
name := "Contoso Verified ID"
requestBody.SetName(&name)
description := "Contoso Verified Identity"
requestBody.SetDescription(&description)
lastModifiedDateTime := null
requestBody.SetLastModifiedDateTime(&lastModifiedDateTime)
state := graphmodels.ENABLED_VERIFIEDIDPROFILESTATE
requestBody.SetState(&state)
verifierDid := "did:web:eu.did-dev.contoso.io"
requestBody.SetVerifierDid(&verifierDid)
priority := int32(0)
requestBody.SetPriority(&priority)
verifiedIdProfileConfiguration := graphmodels.NewVerifiedIdProfileConfiguration()
type := "verifiedIdentity"
verifiedIdProfileConfiguration.SetType(&type)
acceptedIssuer := "did:web:eu.did-dev.contoso.io"
verifiedIdProfileConfiguration.SetAcceptedIssuer(&acceptedIssuer)
claimBindingSource := graphmodels.DIRECTORY_CLAIMBINDINGSOURCE
verifiedIdProfileConfiguration.SetClaimBindingSource(&claimBindingSource)
claimBinding := graphmodels.NewClaimBinding()
sourceAttribute := "First name"
claimBinding.SetSourceAttribute(&sourceAttribute)
verifiedIdClaim := "vc.credentialSubject.firstName"
claimBinding.SetVerifiedIdClaim(&verifiedIdClaim)
claimBinding1 := graphmodels.NewClaimBinding()
sourceAttribute := "Last name"
claimBinding1.SetSourceAttribute(&sourceAttribute)
verifiedIdClaim := "vc.credentialSubject.lastName"
claimBinding1.SetVerifiedIdClaim(&verifiedIdClaim)
claimBindings := []graphmodels.ClaimBindingable {
claimBinding,
claimBinding1,
}
verifiedIdProfileConfiguration.SetClaimBindings(claimBindings)
additionalData := map[string]interface{}{
"methodType" : "tenantCustomCredential",
"manifestUrl" : "https://verifiedid.contoso.com/manifest",
}
verifiedIdProfileConfiguration.SetAdditionalData(additionalData)
requestBody.SetVerifiedIdProfileConfiguration(verifiedIdProfileConfiguration)
faceCheckConfiguration := graphmodels.NewFaceCheckConfiguration()
isEnabled := true
faceCheckConfiguration.SetIsEnabled(&isEnabled)
sourcePhotoClaimName := "portrait"
faceCheckConfiguration.SetSourcePhotoClaimName(&sourcePhotoClaimName)
requestBody.SetFaceCheckConfiguration(faceCheckConfiguration)
verifiedIdUsageConfiguration := graphmodels.NewVerifiedIdUsageConfiguration()
isEnabledForTestOnly := true
verifiedIdUsageConfiguration.SetIsEnabledForTestOnly(&isEnabledForTestOnly)
purpose := graphmodels.VERIFICATION_VERIFIEDIDUSAGECONFIGURATIONPURPOSE
verifiedIdUsageConfiguration.SetPurpose(&purpose)
verifiedIdUsageConfigurations := []graphmodels.VerifiedIdUsageConfigurationable {
verifiedIdUsageConfiguration,
}
requestBody.SetVerifiedIdUsageConfigurations(verifiedIdUsageConfigurations)
additionalData := map[string]interface{}{
mobileDriversLicenseConfiguration := graph.New()
acceptedRegions := []string {
"region-code",
}
mobileDriversLicenseConfiguration.SetAcceptedRegions(acceptedRegions)
documentStandard := "document-standard"
mobileDriversLicenseConfiguration.SetDocumentStandard(&documentStandard)
requestBody.SetMobileDriversLicenseConfiguration(mobileDriversLicenseConfiguration)
selfServiceIssuance := graph.New()
isEnabled := true
selfServiceIssuance.SetIsEnabled(&isEnabled)
issuanceUrl := "https://verifiedid.contoso.com/issue"
selfServiceIssuance.SetIssuanceUrl(&issuanceUrl)
requestBody.SetSelfServiceIssuance(selfServiceIssuance)
}
requestBody.SetAdditionalData(additionalData)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
profiles, err := graphClient.Identity().VerifiedId().Profiles().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
VerifiedIdProfile verifiedIdProfile = new VerifiedIdProfile();
verifiedIdProfile.setName("Contoso Verified ID");
verifiedIdProfile.setDescription("Contoso Verified Identity");
verifiedIdProfile.setLastModifiedDateTime(null);
verifiedIdProfile.setState(VerifiedIdProfileState.Enabled);
verifiedIdProfile.setVerifierDid("did:web:eu.did-dev.contoso.io");
verifiedIdProfile.setPriority(0);
VerifiedIdProfileConfiguration verifiedIdProfileConfiguration = new VerifiedIdProfileConfiguration();
verifiedIdProfileConfiguration.setType("verifiedIdentity");
verifiedIdProfileConfiguration.setAcceptedIssuer("did:web:eu.did-dev.contoso.io");
verifiedIdProfileConfiguration.setClaimBindingSource(ClaimBindingSource.Directory);
LinkedList<ClaimBinding> claimBindings = new LinkedList<ClaimBinding>();
ClaimBinding claimBinding = new ClaimBinding();
claimBinding.setSourceAttribute("First name");
claimBinding.setVerifiedIdClaim("vc.credentialSubject.firstName");
claimBindings.add(claimBinding);
ClaimBinding claimBinding1 = new ClaimBinding();
claimBinding1.setSourceAttribute("Last name");
claimBinding1.setVerifiedIdClaim("vc.credentialSubject.lastName");
claimBindings.add(claimBinding1);
verifiedIdProfileConfiguration.setClaimBindings(claimBindings);
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("methodType", "tenantCustomCredential");
additionalData.put("manifestUrl", "https://verifiedid.contoso.com/manifest");
verifiedIdProfileConfiguration.setAdditionalData(additionalData);
verifiedIdProfile.setVerifiedIdProfileConfiguration(verifiedIdProfileConfiguration);
FaceCheckConfiguration faceCheckConfiguration = new FaceCheckConfiguration();
faceCheckConfiguration.setIsEnabled(true);
faceCheckConfiguration.setSourcePhotoClaimName("portrait");
verifiedIdProfile.setFaceCheckConfiguration(faceCheckConfiguration);
LinkedList<VerifiedIdUsageConfiguration> verifiedIdUsageConfigurations = new LinkedList<VerifiedIdUsageConfiguration>();
VerifiedIdUsageConfiguration verifiedIdUsageConfiguration = new VerifiedIdUsageConfiguration();
verifiedIdUsageConfiguration.setIsEnabledForTestOnly(true);
verifiedIdUsageConfiguration.setPurpose(VerifiedIdUsageConfigurationPurpose.Recovery);
verifiedIdUsageConfigurations.add(verifiedIdUsageConfiguration);
verifiedIdProfile.setVerifiedIdUsageConfigurations(verifiedIdUsageConfigurations);
HashMap<String, Object> additionalData1 = new HashMap<String, Object>();
mobileDriversLicenseConfiguration = new ();
LinkedList<String> acceptedRegions = new LinkedList<String>();
acceptedRegions.add("region-code");
mobileDriversLicenseConfiguration.setAcceptedRegions(acceptedRegions);
mobileDriversLicenseConfiguration.setDocumentStandard("document-standard");
additionalData1.put("mobileDriversLicenseConfiguration", mobileDriversLicenseConfiguration);
selfServiceIssuance = new ();
selfServiceIssuance.setIsEnabled(true);
selfServiceIssuance.setIssuanceUrl("https://verifiedid.contoso.com/issue");
additionalData1.put("selfServiceIssuance", selfServiceIssuance);
verifiedIdProfile.setAdditionalData(additionalData1);
VerifiedIdProfile result = graphClient.identity().verifiedId().profiles().post(verifiedIdProfile);
const options = {
authProvider,
};
const client = Client.init(options);
const verifiedIdProfile = {
name: 'Contoso Verified ID',
description: 'Contoso Verified Identity',
lastModifiedDateTime: null,
state: 'enabled',
verifierDid: 'did:web:eu.did-dev.contoso.io',
priority: 0,
verifiedIdProfileConfiguration: {
methodType: 'tenantCustomCredential',
type: 'verifiedIdentity',
manifestUrl: 'https://verifiedid.contoso.com/manifest',
acceptedIssuer: 'did:web:eu.did-dev.contoso.io',
claimBindingSource: 'directory',
claimBindings: [
{
sourceAttribute: 'First name',
verifiedIdClaim: 'vc.credentialSubject.firstName'
},
{
sourceAttribute: 'Last name',
verifiedIdClaim: 'vc.credentialSubject.lastName'
}
]
},
faceCheckConfiguration: {
isEnabled: true,
sourcePhotoClaimName: 'portrait'
},
mobileDriversLicenseConfiguration: {
acceptedRegions: [
'region-code'
],
documentStandard: 'document-standard'
},
verifiedIdUsageConfigurations: [
{
isEnabledForTestOnly: true,
purpose: 'verification'
}
],
selfServiceIssuance: {
isEnabled: true,
issuanceUrl: 'https://verifiedid.contoso.com/issue'
}
};
await client.api('/identity/verifiedId/profiles')
.version('beta')
.post(verifiedIdProfile);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\VerifiedIdProfile;
use Microsoft\Graph\Beta\Generated\Models\VerifiedIdProfileState;
use Microsoft\Graph\Beta\Generated\Models\VerifiedIdProfileConfiguration;
use Microsoft\Graph\Beta\Generated\Models\ClaimBindingSource;
use Microsoft\Graph\Beta\Generated\Models\ClaimBinding;
use Microsoft\Graph\Beta\Generated\Models\FaceCheckConfiguration;
use Microsoft\Graph\Beta\Generated\Models\VerifiedIdUsageConfiguration;
use Microsoft\Graph\Beta\Generated\Models\VerifiedIdUsageConfigurationPurpose;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new VerifiedIdProfile();
$requestBody->setName('Contoso Verified ID');
$requestBody->setDescription('Contoso Verified Identity');
$requestBody->setLastModifiedDateTime(null);
$requestBody->setState(new VerifiedIdProfileState('enabled'));
$requestBody->setVerifierDid('did:web:eu.did-dev.contoso.io');
$requestBody->setPriority(0);
$verifiedIdProfileConfiguration = new VerifiedIdProfileConfiguration();
$verifiedIdProfileConfiguration->setType('verifiedIdentity');
$verifiedIdProfileConfiguration->setAcceptedIssuer('did:web:eu.did-dev.contoso.io');
$verifiedIdProfileConfiguration->setClaimBindingSource(new ClaimBindingSource('directory'));
$claimBindingsClaimBinding1 = new ClaimBinding();
$claimBindingsClaimBinding1->setSourceAttribute('First name');
$claimBindingsClaimBinding1->setVerifiedIdClaim('vc.credentialSubject.firstName');
$claimBindingsArray []= $claimBindingsClaimBinding1;
$claimBindingsClaimBinding2 = new ClaimBinding();
$claimBindingsClaimBinding2->setSourceAttribute('Last name');
$claimBindingsClaimBinding2->setVerifiedIdClaim('vc.credentialSubject.lastName');
$claimBindingsArray []= $claimBindingsClaimBinding2;
$verifiedIdProfileConfiguration->setClaimBindings($claimBindingsArray);
$additionalData = [
'methodType' => 'tenantCustomCredential',
'manifestUrl' => 'https://verifiedid.contoso.com/manifest',
];
$verifiedIdProfileConfiguration->setAdditionalData($additionalData);
$requestBody->setVerifiedIdProfileConfiguration($verifiedIdProfileConfiguration);
$faceCheckConfiguration = new FaceCheckConfiguration();
$faceCheckConfiguration->setIsEnabled(true);
$faceCheckConfiguration->setSourcePhotoClaimName('portrait');
$requestBody->setFaceCheckConfiguration($faceCheckConfiguration);
$verifiedIdUsageConfigurationsVerifiedIdUsageConfiguration1 = new VerifiedIdUsageConfiguration();
$verifiedIdUsageConfigurationsVerifiedIdUsageConfiguration1->setIsEnabledForTestOnly(true);
$verifiedIdUsageConfigurationsVerifiedIdUsageConfiguration1->setPurpose(new VerifiedIdUsageConfigurationPurpose('verification'));
$verifiedIdUsageConfigurationsArray []= $verifiedIdUsageConfigurationsVerifiedIdUsageConfiguration1;
$requestBody->setVerifiedIdUsageConfigurations($verifiedIdUsageConfigurationsArray);
$additionalData = [
'mobileDriversLicenseConfiguration' => [
'acceptedRegions' => [
'region-code', ],
'documentStandard' => 'document-standard',
],
'selfServiceIssuance' => [
'isEnabled' => true,
'issuanceUrl' => 'https://verifiedid.contoso.com/issue',
],
];
$requestBody->setAdditionalData($additionalData);
$result = $graphServiceClient->identity()->verifiedId()->profiles()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.SignIns
$params = @{
name = "Contoso Verified ID"
description = "Contoso Verified Identity"
lastModifiedDateTime = $null
state = "enabled"
verifierDid = "did:web:eu.did-dev.contoso.io"
priority = 0
verifiedIdProfileConfiguration = @{
methodType = "tenantCustomCredential"
type = "verifiedIdentity"
manifestUrl = "https://verifiedid.contoso.com/manifest"
acceptedIssuer = "did:web:eu.did-dev.contoso.io"
claimBindingSource = "directory"
claimBindings = @(
@{
sourceAttribute = "First name"
verifiedIdClaim = "vc.credentialSubject.firstName"
}
@{
sourceAttribute = "Last name"
verifiedIdClaim = "vc.credentialSubject.lastName"
}
)
}
faceCheckConfiguration = @{
isEnabled = $true
sourcePhotoClaimName = "portrait"
}
mobileDriversLicenseConfiguration = @{
acceptedRegions = @(
"region-code"
)
documentStandard = "document-standard"
}
verifiedIdUsageConfigurations = @(
@{
isEnabledForTestOnly = $true
purpose = "verification"
}
)
selfServiceIssuance = @{
isEnabled = $true
issuanceUrl = "https://verifiedid.contoso.com/issue"
}
}
New-MgBetaIdentityVerifiedIdProfile -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.verified_id_profile import VerifiedIdProfile
from msgraph_beta.generated.models.verified_id_profile_state import VerifiedIdProfileState
from msgraph_beta.generated.models.verified_id_profile_configuration import VerifiedIdProfileConfiguration
from msgraph_beta.generated.models.claim_binding_source import ClaimBindingSource
from msgraph_beta.generated.models.claim_binding import ClaimBinding
from msgraph_beta.generated.models.face_check_configuration import FaceCheckConfiguration
from msgraph_beta.generated.models.verified_id_usage_configuration import VerifiedIdUsageConfiguration
from msgraph_beta.generated.models.verified_id_usage_configuration_purpose import VerifiedIdUsageConfigurationPurpose
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = VerifiedIdProfile(
name = "Contoso Verified ID",
description = "Contoso Verified Identity",
last_modified_date_time = None,
state = VerifiedIdProfileState.Enabled,
verifier_did = "did:web:eu.did-dev.contoso.io",
priority = 0,
verified_id_profile_configuration = VerifiedIdProfileConfiguration(
type = "verifiedIdentity",
accepted_issuer = "did:web:eu.did-dev.contoso.io",
claim_binding_source = ClaimBindingSource.Directory,
claim_bindings = [
ClaimBinding(
source_attribute = "First name",
verified_id_claim = "vc.credentialSubject.firstName",
),
ClaimBinding(
source_attribute = "Last name",
verified_id_claim = "vc.credentialSubject.lastName",
),
],
additional_data = {
"method_type" : "tenantCustomCredential",
"manifest_url" : "https://verifiedid.contoso.com/manifest",
}
),
face_check_configuration = FaceCheckConfiguration(
is_enabled = True,
source_photo_claim_name = "portrait",
),
verified_id_usage_configurations = [
VerifiedIdUsageConfiguration(
is_enabled_for_test_only = True,
purpose = VerifiedIdUsageConfigurationPurpose.Recovery,
),
],
additional_data = {
"mobile_drivers_license_configuration" : {
"accepted_regions" : [
"region-code",
],
"document_standard" : "document-standard",
},
"self_service_issuance" : {
"is_enabled" : True,
"issuance_url" : "https://verifiedid.contoso.com/issue",
},
}
)
result = await graph_client.identity.verified_id.profiles.post(request_body)
The following example shows the response.