ESC
Type to search...

VirtualEventRegistration-Anon.ReadWrite.All

Export JSON
Export CSV
Copy URL
Print
Application Read/Write All Resources

Allows the app to read and write anonymous users' virtual event registrations, without a signed-in user

Permission data: April 6, 2026 at 4:06 AM UTC
Delegated Access App-Only Access

Permission Details

Application Permission

Read and write anonymous users' virtual event registrations

Allows the app to read and write anonymous users' virtual event registrations, without a signed-in user

Properties

Microsoft Graph v1.0 endpoint-derived-docs

Properties is shown from stable Microsoft Graph v1.0 metadata.

Property Type Description
createdBy communicationsIdentitySet The identity information for the creator of the virtual event. Inherited from virtualEvent.
description itemBody A description of the virtual event.
displayName StringNullable The display name of the virtual event.
endDateTime dateTimeTimeZone The end time of the virtual event. The timeZone property can be set to any of the time zones currently supported by Windows. For details on how to get all available time zones using PowerShell, see Get-TimeZone.
externalEventInformation virtualEventExternalInformation collection The external information of a virtual event. Returned only for event organizers or coorganizers; otherwise, null.
id String The unique identifier of the virtual event. Inherited from entity.
settings virtualEventSettings The virtual event settings.
startDateTime dateTimeTimeZone Start time of the virtual event. The timeZone property can be set to any of the time zones currently supported by Windows. For details on how to get all available time zones using PowerShell, see Get-TimeZone.
status virtualEventStatus The status of the virtual event. The possible values are: draft, published, canceled, and unknownFutureValue.
presenters virtualEventPresenter collection The virtual event presenters.
sessions virtualEventSession collection The sessions for the virtual event.

JSON Representation

Microsoft Graph v1.0 endpoint-derived-docs

JSON representation is shown from stable Microsoft Graph v1.0 metadata.

JSON representation
{
  "@odata.type": "#microsoft.graph.virtualEvent",
  "createdBy": {
    "@odata.type": "microsoft.graph.communicationsIdentitySet"
  },
  "description": {
    "@odata.type": "microsoft.graph.itemBody"
  },
  "displayName": "String",
  "endDateTime": {
    "@odata.type": "microsoft.graph.dateTimeTimeZone"
  },
  "externalEventInformation": [
    {
      "@odata.type": "microsoft.graph.virtualEventExternalInformation"
    }
  ],
  "id": "String (identifier)",
  "settings": {
    "@odata.type": "microsoft.graph.virtualEventSettings"
  },
  "startDateTime": {
    "@odata.type": "microsoft.graph.dateTimeTimeZone"
  },
  "status": "String"
}

Relationships

Microsoft Graph v1.0 endpoint-derived-docs

Relationships is shown from stable Microsoft Graph v1.0 metadata.

Relationship Type Description
presenters virtualEventPresenter collection The virtual event presenters.
sessions virtualEventSession collection The sessions for the virtual event.
externalEventInformation virtualEventExternalInformation collection The external information of a virtual event. Returned only for event organizers or coorganizers; otherwise, null.

Graph Methods

Delegated access App-only access
Exact Microsoft Learn match

Microsoft Graph v1.0 endpoints are mapped directly from refreshed Microsoft Learn permissions tables.

Methods
GET /solutions/virtualEvents/webinars/{webinarId}/registrations/{registrationId}
POST /solutions/virtualEvents/webinars/{webinarId}/registrations
Exact Microsoft Learn match

Microsoft Graph beta endpoints are mapped directly from refreshed Microsoft Learn permissions tables.

Methods
GET /solutions/virtualEvents/webinars/{webinarId}/registrations/{registrationId}
POST /solutions/virtualEvents/webinars/{webinarId}/registrations
Exact Microsoft Learn PowerShell match

Microsoft Graph PowerShell v1.0 commands are mapped directly from refreshed Microsoft Learn PowerShell snippets.

Commands
Get-MgVirtualEventWebinarRegistration /solutions/virtualEvents/webinars/{webinarId}/registrations/{registrationId}
Get virtualEventRegistration
New-MgVirtualEventWebinarRegistration /solutions/virtualEvents/webinars/{webinarId}/registrations
Create virtualEventRegistration
Exact Microsoft Learn PowerShell match

Microsoft Graph PowerShell beta commands are mapped directly from refreshed Microsoft Learn PowerShell snippets.

Commands
Get-MgBetaVirtualEventWebinarRegistration /solutions/virtualEvents/webinars/{webinarId}/registrations/{registrationId}
Get virtualEventRegistration
New-MgBetaVirtualEventWebinarRegistration /solutions/virtualEvents/webinars/{webinarId}/registrations
Create virtualEventRegistration

Code Examples

C# / .NET SDK
Create virtualEventRegistration
// Code snippets are only available for the latest version. Current version is 5.x

// Dependencies
using Microsoft.Graph.Models;

var requestBody = new VirtualEventRegistration
{
	ExternalRegistrationInformation = new VirtualEventExternalRegistrationInformation
	{
		Referrer = "Fabrikam",
		RegistrationId = "myExternalRegistrationId",
	},
	PreferredTimezone = "Pacific Standard Time",
	PreferredLanguage = "en-us",
	RegistrationQuestionAnswers = new List<VirtualEventRegistrationQuestionAnswer>
	{
		new VirtualEventRegistrationQuestionAnswer
		{
			QuestionId = "95320781-96b3-4b8f-8cf8-e6561d23447a",
			Value = null,
			BooleanValue = null,
			MultiChoiceValues = new List<string>
			{
				"Seattle",
			},
		},
		new VirtualEventRegistrationQuestionAnswer
		{
			QuestionId = "4577afdb-8bee-4219-b482-04b52c6b855c",
			Value = null,
			BooleanValue = true,
			MultiChoiceValues = new List<string>
			{
			},
		},
		new VirtualEventRegistrationQuestionAnswer
		{
			QuestionId = "80fefcf1-caf7-4cd3-b8d7-159e17c47f20",
			Value = null,
			BooleanValue = null,
			MultiChoiceValues = new List<string>
			{
				"Cancun",
				"Hoboken",
				"Beijing",
			},
		},
	},
};

// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Solutions.VirtualEvents.Webinars["{virtualEventWebinar-id}"].Registrations.PostAsync(requestBody);
JavaScript
Create virtualEventRegistration
const options = {
	authProvider,
};

const client = Client.init(options);

const virtualEventRegistration = {
  externalRegistrationInformation: {
    referrer: 'Fabrikam',
    registrationId: 'myExternalRegistrationId'
  },
  preferredTimezone: 'Pacific Standard Time',
  preferredLanguage: 'en-us',
  registrationQuestionAnswers: [
    {
      questionId: '95320781-96b3-4b8f-8cf8-e6561d23447a',
      value: null,
      booleanValue: null,
      multiChoiceValues: [
        'Seattle'
      ]
    },
    {
      questionId: '4577afdb-8bee-4219-b482-04b52c6b855c',
      value: null,
      booleanValue: true,
      multiChoiceValues: []
    },
    {
      questionId: '80fefcf1-caf7-4cd3-b8d7-159e17c47f20',
      value: null,
      booleanValue: null,
      multiChoiceValues: [
        'Cancun',
        'Hoboken',
        'Beijing'
      ]
    }
  ]
};

await client.api('/solutions/virtualEvents/webinars/f4b39f1c-520e-4e75-805a-4b0f2016a0c6@a1a56d21-a8a6-4a6b-97f8-ced53d30f143/registrations')
	.post(virtualEventRegistration);
PowerShell
Create virtualEventRegistration
Import-Module Microsoft.Graph.Bookings

$params = @{
	externalRegistrationInformation = @{
		referrer = "Fabrikam"
		registrationId = "myExternalRegistrationId"
	}
	preferredTimezone = "Pacific Standard Time"
	preferredLanguage = "en-us"
	registrationQuestionAnswers = @(
		@{
			questionId = "95320781-96b3-4b8f-8cf8-e6561d23447a"
			value = $null
			booleanValue = $null
			multiChoiceValues = @(
			"Seattle"
		)
	}
	@{
		questionId = "4577afdb-8bee-4219-b482-04b52c6b855c"
		value = $null
		booleanValue = $true
		multiChoiceValues = @(
		)
	}
	@{
		questionId = "80fefcf1-caf7-4cd3-b8d7-159e17c47f20"
		value = $null
		booleanValue = $null
		multiChoiceValues = @(
		"Cancun"
	"Hoboken"
"Beijing"
)
}
)
}

New-MgVirtualEventWebinarRegistration -VirtualEventWebinarId $virtualEventWebinarId -BodyParameter $params
Python
Create virtualEventRegistration
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.virtual_event_registration import VirtualEventRegistration
from msgraph.generated.models.virtual_event_external_registration_information import VirtualEventExternalRegistrationInformation
from msgraph.generated.models.virtual_event_registration_question_answer import VirtualEventRegistrationQuestionAnswer
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = VirtualEventRegistration(
	external_registration_information = VirtualEventExternalRegistrationInformation(
		referrer = "Fabrikam",
		registration_id = "myExternalRegistrationId",
	),
	preferred_timezone = "Pacific Standard Time",
	preferred_language = "en-us",
	registration_question_answers = [
		VirtualEventRegistrationQuestionAnswer(
			question_id = "95320781-96b3-4b8f-8cf8-e6561d23447a",
			value = None,
			boolean_value = None,
			multi_choice_values = [
				"Seattle",
			],
		),
		VirtualEventRegistrationQuestionAnswer(
			question_id = "4577afdb-8bee-4219-b482-04b52c6b855c",
			value = None,
			boolean_value = True,
			multi_choice_values = [
			],
		),
		VirtualEventRegistrationQuestionAnswer(
			question_id = "80fefcf1-caf7-4cd3-b8d7-159e17c47f20",
			value = None,
			boolean_value = None,
			multi_choice_values = [
				"Cancun",
				"Hoboken",
				"Beijing",
			],
		),
	],
)

result = await graph_client.solutions.virtual_events.webinars.by_virtual_event_webinar_id('virtualEventWebinar-id').registrations.post(request_body)

App Registration

1

Navigate to Azure Portal

Go to App registrations in Microsoft Entra admin center

2

Add API Permission

Select your app → API permissions → Add a permission → Microsoft Graph

3

Select Permission Type

Choose Application permissions and search for VirtualEventRegistration-Anon.ReadWrite.All

4

Grant Admin Consent

Application permissions always require admin consent.