Microsoft Graph · Schema

microsoft.graph.orgContact

Microsoft GraphAzure ADCollaborationContactsDocumentsEmailGraphIdentityMicrosoftOffice 365PresentationsProductivitySpreadsheetsT1Task

Properties

Name Type Description
id string The unique identifier for an entity. Read-only.
@odata.type string
deletedDateTime stringnull Date and time when this object was deleted. Always null when the object hasn't been deleted.
addresses array Postal addresses for this organizational contact. For now a contact can only have one physical address.
companyName stringnull Name of the company that this organizational contact belongs to. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values).
department stringnull The name for the department in which the contact works. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values).
displayName stringnull Display name for this organizational contact. Maximum length is 256 characters. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values), $search, and $orderby.
givenName stringnull First name for this organizational contact. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values).
jobTitle stringnull Job title for this organizational contact. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values).
mail stringnull The SMTP address for the contact, for example, 'jeff@contoso.com'. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values).
mailNickname stringnull Email alias (portion of email address pre-pending the @ symbol) for this organizational contact. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values).
onPremisesLastSyncDateTime stringnull Date and time when this organizational contact was last synchronized from on-premises AD. This date and time information uses ISO 8601 format and is always in UTC time. For example, midnight UTC on Ja
onPremisesProvisioningErrors array List of any synchronization provisioning errors for this organizational contact. Supports $filter (eq, not for category and propertyCausingError), /$count eq 0, /$count ne 0.
onPremisesSyncEnabled booleannull true if this object is synced from an on-premises directory; false if this object was originally synced from an on-premises directory but is no longer synced and now mastered in Exchange; null if this
phones array List of phones for this organizational contact. Phone types can be mobile, business, and businessFax. Only one of each type can ever be present in the collection.
proxyAddresses array For example: 'SMTP: bob@contoso.com', 'smtp: bob@sales.contoso.com'. The any operator is required for filter expressions on multi-valued properties. Supports $filter (eq, not, ge, le, startsWith, /$co
serviceProvisioningErrors array Errors published by a federated service describing a non-transient, service-specific error regarding the properties or link from an organizational contact object . Supports $filter (eq, not, for isRes
surname stringnull Last name for this organizational contact. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values).
directReports array The contact's direct reports. (The users and contacts that have their manager property set to this contact.) Read-only. Nullable. Supports $expand.
manager object The user or contact that is this contact's manager. Read-only. Supports $expand and $filter (eq) by id.
memberOf array Groups that this contact is a member of. Read-only. Nullable. Supports $expand.
onPremisesSyncBehavior object
transitiveMemberOf array Groups that this contact is a member of, including groups that the contact is nested under. Read-only. Nullable.
View JSON Schema on GitHub

JSON Schema

microsoft-graph-microsoft-graph-org-contact-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/microsoft-graph/json-schema/microsoft-graph-microsoft-graph-org-contact-schema.json",
  "title": "microsoft.graph.orgContact",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/microsoft-graph-contacts-directoryobject-api-openapi.yml#/components/schemas/microsoft.graph.orgContact",
  "allOf": [
    {
      "$ref": "#/$defs/microsoft.graph.directoryObject"
    },
    {
      "title": "orgContact",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "addresses": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.physicalOfficeAddress"
          },
          "description": "Postal addresses for this organizational contact. For now a contact can only have one physical address."
        },
        "companyName": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the company that this organizational contact belongs to.  Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values)."
        },
        "department": {
          "type": [
            "string",
            "null"
          ],
          "description": "The name for the department in which the contact works.  Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values)."
        },
        "displayName": {
          "type": [
            "string",
            "null"
          ],
          "description": "Display name for this organizational contact. Maximum length is 256 characters. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values), $search, and $orderby."
        },
        "givenName": {
          "type": [
            "string",
            "null"
          ],
          "description": "First name for this organizational contact. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values)."
        },
        "jobTitle": {
          "type": [
            "string",
            "null"
          ],
          "description": "Job title for this organizational contact. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values)."
        },
        "mail": {
          "type": [
            "string",
            "null"
          ],
          "description": "The SMTP address for the contact, for example, 'jeff@contoso.com'. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values)."
        },
        "mailNickname": {
          "type": [
            "string",
            "null"
          ],
          "description": "Email alias (portion of email address pre-pending the @ symbol) for this organizational contact. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values)."
        },
        "onPremisesLastSyncDateTime": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
          "type": [
            "string",
            "null"
          ],
          "description": "Date and time when this organizational contact was last synchronized from on-premises AD. This date and time information uses ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Supports $filter (eq, ne, not, ge, le, in).",
          "format": "date-time"
        },
        "onPremisesProvisioningErrors": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.onPremisesProvisioningError"
          },
          "description": "List of any synchronization provisioning errors for this organizational contact. Supports $filter (eq, not for category and propertyCausingError), /$count eq 0, /$count ne 0."
        },
        "onPremisesSyncEnabled": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "true if this object is synced from an on-premises directory; false if this object was originally synced from an on-premises directory but is no longer synced and now mastered in Exchange; null if this object has never been synced from an on-premises directory (default).   Supports $filter (eq, ne, not, in, and eq for null values)."
        },
        "phones": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.phone"
          },
          "description": "List of phones for this organizational contact. Phone types can be mobile, business, and businessFax. Only one of each type can ever be present in the collection."
        },
        "proxyAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "For example: 'SMTP: bob@contoso.com', 'smtp: bob@sales.contoso.com'. The any operator is required for filter expressions on multi-valued properties. Supports $filter (eq, not, ge, le, startsWith, /$count eq 0, /$count ne 0)."
        },
        "serviceProvisioningErrors": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.serviceProvisioningError"
          },
          "description": "Errors published by a federated service describing a non-transient, service-specific error regarding the properties or link from an organizational contact object .  Supports $filter (eq, not, for isResolved and serviceInstance)."
        },
        "surname": {
          "type": [
            "string",
            "null"
          ],
          "description": "Last name for this organizational contact. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq for null values)."
        },
        "directReports": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.directoryObject"
          },
          "description": "The contact's direct reports. (The users and contacts that have their manager property set to this contact.)  Read-only. Nullable. Supports $expand.",
          "x-ms-navigationProperty": true
        },
        "manager": {
          "anyOf": [
            {
              "$ref": "#/$defs/microsoft.graph.directoryObject"
            },
            {
              "type": [
                "object",
                "null"
              ]
            }
          ],
          "description": "The user or contact that is this contact's manager. Read-only. Supports $expand and $filter (eq) by id.",
          "x-ms-navigationProperty": true
        },
        "memberOf": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.directoryObject"
          },
          "description": "Groups that this contact is a member of. Read-only. Nullable. Supports $expand.",
          "x-ms-navigationProperty": true
        },
        "onPremisesSyncBehavior": {
          "anyOf": [
            {
              "$ref": "#/$defs/microsoft.graph.onPremisesSyncBehavior"
            },
            {
              "type": [
                "object",
                "null"
              ]
            }
          ],
          "x-ms-navigationProperty": true
        },
        "transitiveMemberOf": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.directoryObject"
          },
          "description": "Groups that this contact is a member of, including groups that the contact is nested under. Read-only. Nullable.",
          "x-ms-navigationProperty": true
        },
        "@odata.type": {
          "type": "string",
          "default": "#microsoft.graph.orgContact"
        }
      }
    }
  ],
  "x-ms-discriminator-value": "#microsoft.graph.orgContact",
  "$defs": {
    "microsoft.graph.directoryObject": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "directoryObject",
          "required": [
            "@odata.type"
          ],
          "type": "object",
          "properties": {
            "deletedDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "Date and time when this object was deleted. Always null when the object hasn't been deleted.",
              "format": "date-time"
            },
            "@odata.type": {
              "type": "string"
            }
          }
        }
      ]
    },
    "microsoft.graph.entity": {
      "title": "entity",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for an entity. Read-only."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    },
    "microsoft.graph.onPremisesProvisioningError": {
      "title": "onPremisesProvisioningError",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "category": {
          "type": [
            "string",
            "null"
          ],
          "description": "Category of the provisioning error. Note: Currently, there is only one possible value. Possible value: PropertyConflict - indicates a property value is not unique. Other objects contain the same value for the property."
        },
        "occurredDateTime": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
          "type": [
            "string",
            "null"
          ],
          "description": "The date and time at which the error occurred.",
          "format": "date-time"
        },
        "propertyCausingError": {
          "type": [
            "string",
            "null"
          ],
          "description": "Name of the directory property causing the error. Current possible values: UserPrincipalName or ProxyAddress"
        },
        "value": {
          "type": [
            "string",
            "null"
          ],
          "description": "Value of the property causing the error."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    },
    "microsoft.graph.onPremisesSyncBehavior": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "onPremisesSyncBehavior",
          "required": [
            "@odata.type"
          ],
          "type": "object",
          "properties": {
            "isCloudManaged": {
              "type": "boolean"
            },
            "@odata.type": {
              "type": "string"
            }
          }
        }
      ],
      "x-ms-discriminator-value": "#microsoft.graph.onPremisesSyncBehavior"
    },
    "microsoft.graph.phone": {
      "title": "phone",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "language": {
          "type": [
            "string",
            "null"
          ]
        },
        "number": {
          "type": [
            "string",
            "null"
          ],
          "description": "The phone number."
        },
        "region": {
          "type": [
            "string",
            "null"
          ]
        },
        "type": {
          "anyOf": [
            {
              "$ref": "#/$defs/microsoft.graph.phoneType"
            },
            {
              "type": [
                "object",
                "null"
              ]
            }
          ],
          "description": "The type of phone number. The possible values are: home, business, mobile, other, assistant, homeFax, businessFax, otherFax, pager, radio."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    },
    "microsoft.graph.phoneType": {
      "title": "phoneType",
      "enum": [
        "home",
        "business",
        "mobile",
        "other",
        "assistant",
        "homeFax",
        "businessFax",
        "otherFax",
        "pager",
        "radio"
      ],
      "type": "string"
    },
    "microsoft.graph.physicalOfficeAddress": {
      "title": "physicalOfficeAddress",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "city": {
          "type": [
            "string",
            "null"
          ],
          "description": "The city."
        },
        "countryOrRegion": {
          "type": [
            "string",
            "null"
          ],
          "description": "The country or region. It's a free-format string value, for example, 'United States'."
        },
        "officeLocation": {
          "type": [
            "string",
            "null"
          ],
          "description": "Office location such as building and office number for an organizational contact."
        },
        "postalCode": {
          "type": [
            "string",
            "null"
          ],
          "description": "The postal code."
        },
        "state": {
          "type": [
            "string",
            "null"
          ],
          "description": "The state."
        },
        "street": {
          "type": [
            "string",
            "null"
          ],
          "description": "The street."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    },
    "microsoft.graph.serviceProvisioningError": {
      "title": "serviceProvisioningError",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "createdDateTime": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
          "type": [
            "string",
            "null"
          ],
          "description": "The date and time at which the error occurred.",
          "format": "date-time"
        },
        "isResolved": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "Indicates whether the error has been attended to."
        },
        "serviceInstance": {
          "type": [
            "string",
            "null"
          ],
          "description": "Qualified service instance (for example, 'SharePoint/Dublin') that published the service error information."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/microsoft-graph-microsoft-graph-org-contact"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.