openTypeExtension resource type (data extensions)

Office 365 data extensions are represented by the openTypeExtension resource.

openTypeExtension is an OData v4 open type which contains properties that you can specify at runtime. You can use it to extend an instance of an entity type that is already defined in the Entity Data Model (EDM) - for example, a message or event - by dynamically specifying custom properties and values in a JSON payload. This makes the definition of such entity types more flexible, saving you time to define new entity types just for this purpose.

You can create data extensions of the openTypeExtension type in a message, event, or contact in the signed-in user's mailbox, or in an event or post for an Office 365 group. In the individual-user context, the user's account can be in Office 365 or a Microsoft account (,,, and

This resource is derived from the extension abstract type and has the additional extensionName property. The extensionName property is the only pre-defined, writable property for all extensions. One way to help make sure extension names are unique is to use a reverse domain name system (DNS) method that is dependent on your own domain, for example, Com.Contoso.Contact. Do not use the Microsoft domain in an extension name.

Use Office 365 data extensions or extended properties?

Data 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$metadata.

JSON representation

Here is a JSON representation of the resource

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


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.




Method Return Type Description
Post openTypeExtension, or message, event, or contact 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.