openTypeExtension resource type (open extensions)

Open extensions (formerly known as Office 365 data extensions) gives you an easy way to directly add untyped properties to a resource in Microsoft Graph. Open extensions are represented by the openTypeExtension resource. Any open extension added to a resource shows up in the extensions navigation property, which is derived from the extension abstract type. Each extension has an extensionName property which is the only pre-defined, writable property for all extensions, along with your custom data. One way to help make sure extension names are unique is to use a reverse domain name system (DNS) format that is dependent on your own domain, for example, Com.Contoso.ContactInfo. Do not use the Microsoft domain (Com.Microsoft or Com.OnMicrosoft) in an extension name.

Open extension example: Add custom data to users using open extensions

Open extensions are supported by the following resources in the corresponding versions - general availability (GA: /v1.0 and /beta) or preview (/beta).

Resource Version
Administrative unit Preview only
Calendar event GA
Group calendar event GA
Group conversation thread post GA
device GA
group GA
message GA
organization GA
Personal contact GA
user GA

Use open extensions (for Outlook resources) or extended properties?

Open extensions is the recommended solution for most scenarios involving storing and accessing custom data. If, however, you need to access custom data for Outlook MAPI properties that are not already exposed through the Microsoft Graph API metadata, you can use extended properties and its REST API. You can verify which properties the metadata exposes at https://graph.microsoft.com/v1.0/$metadata.

JSON representation

Here is a JSON representation of the resource

{
  "extensionName": "string",
  "id": "string (identifier)"
}

Properties

Property Type Description
extensionName String A unique text identifier for an open type data extension. Required.
id String A fully qualified identifier that concatenates the extension type with the extensionName. Read-only.

Relationships

None

Methods

Method Return Type Description
Post openTypeExtension(in an existing resource instance), or a new contact, event, or message that contains an openTypeExtension object. Create an openTypeExtension object in an existing or new resource instance.
Get openTypeExtension Read properties and relationships of openTypeExtension object.
Update openTypeExtension Update openTypeExtension object.
Delete None Delete openTypeExtension object.