Microsoft Entra ID (formerly Azure AD) Contacts.org Contact.Actions API

The contacts.orgContact.Actions API from Microsoft Entra ID (formerly Azure AD) — 9 operation(s) for contacts.orgcontact.actions.

Business capability
Identity & Access Management BC-620.20

Operations 9

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /contacts/{orgContact-id}/microsoft.graph.checkMemberGroups Check an org contact's membership in given groups · Invoke action checkMemberGroups #
Ask an LLM
“How do I check whether an organizational contact belongs to any of a list of groups?”
“Which of these specific group IDs is a given contact a member of?”
Tell an agent
Check which of groups {groupIds} org contact {contact} is a member of.
Tell me if contact {contact} is in any of these groups: {groupIds}.
POST /contacts/{orgContact-id}/microsoft.graph.checkMemberObjects Check an org contact's membership in given objects · Invoke action checkMemberObjects #
Ask an LLM
“Can I test an organizational contact against a mixed list of groups, roles and admin units?”
“Which of a set of directory object IDs does a contact belong to?”
Tell an agent
Check which of directory objects {ids} org contact {contact} is a member of.
Verify contact {contact}'s membership against object IDs {ids}.
POST /contacts/{orgContact-id}/microsoft.graph.getMemberGroups List all groups an org contact belongs to · Invoke action getMemberGroups #
Ask an LLM
“What are all the group IDs an organizational contact is a member of?”
“Can I restrict an org contact's group list to security-enabled groups only?”
Tell an agent
Get every group ID org contact {contact} belongs to.
List the groups of contact {contact} with security-enabled-only set to {securityOnly}.
POST /contacts/{orgContact-id}/microsoft.graph.getMemberObjects List groups, roles and admin units of an org contact · Invoke action getMemberObjects #
Ask an LLM
“Which groups, administrative units and directory roles is an organizational contact part of?”
“Can I get all of a contact's memberships, not just groups?”
Tell an agent
Get all group, role and administrative unit IDs for org contact {contact}.
List every membership object of contact {contact}, security-enabled only: {securityOnly}.
POST /contacts/{orgContact-id}/microsoft.graph.restore Restore a deleted organizational contact · Invoke action restore #
Ask an LLM
“How do I bring back an organizational contact that was recently deleted?”
“Can a deleted org contact be recovered from deleted items?”
Tell an agent
Restore deleted organizational contact {contact}.
Recover org contact {contact} from the directory's deleted items.
POST /contacts/{orgContact-id}/microsoft.graph.retryServiceProvisioning Retry provisioning for an org contact · Invoke action retryServiceProvisioning #
Ask an LLM
“An organizational contact failed to provision to a service; can I retry it?”
“Is there a way to re-run service provisioning for one contact?”
Tell an agent
Retry service provisioning for org contact {contact}.
Kick off provisioning again for contact {contact}.
POST /contacts/microsoft.graph.getAvailableExtensionProperties List directory extension properties available · Invoke action getAvailableExtensionProperties #
Ask an LLM
“What directory extension properties are registered in our tenant, including from multitenant apps?”
“Can I see only the extension properties synced from on-premises?”
Tell an agent
List all directory extension definitions registered in our directory.
Get available extension properties where synced-from-on-premises is {synced}.
POST /contacts/microsoft.graph.getByIds Look up directory objects by a list of IDs · Invoke action getByIds #
Ask an LLM
“How can I resolve a batch of object IDs to their directory objects in one call?”
“Can I limit an ID lookup to certain object types like orgContact or user?”
Tell an agent
Get the directory objects for IDs {ids}.
Resolve IDs {ids} restricted to types {types}.
POST /contacts/microsoft.graph.validateProperties Check a group name against naming policy · Invoke action validateProperties #
Ask an LLM
“Will a proposed Microsoft 365 group display name pass our naming policy?”
“Can I check a mail nickname for blocked words before creating a group?”
Tell an agent
Validate display name {displayName} against the group naming policy.
Check mail nickname {mailNickname} for a {entityType} on behalf of user {userId}.

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/azure-ad:azure-ad-contacts-orgcontact-actions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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.

OpenAPI Specification

azure-ad-contacts-orgcontact-actions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Identity.DirectoryManagement Contacts.org Contact.Actions…
  version: v1.0
servers:
- url: https://graph.microsoft.com/v1.0/
  description: Core
security:
- azureaadv2: []
tags:
- name: contacts.orgContact.Actions
paths:
  /contacts/{orgContact-id}/microsoft.graph.checkMemberGroups:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action checkMemberGroups
      description: 'Check for membership in a specified list of group IDs, and return from that list the IDs of groups where a specified object is a member. The specified object can be of one of the following types:

        - user

        - group

        - service principal

        - organizational contact

        - device

        - directory object This function is transitive. You can check up to a maximum of 20 groups per request. This function supports all groups provisioned in Microsoft Entra ID. Because Microsoft 365 groups cannot contain other groups, membership in a Microsoft 365 group is always direct.'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/directoryobject-checkmembergroups?view=graph-rest-1.0
      operationId: contact_checkMemberGroup
      parameters:
      - name: orgContact-id
        in: path
        description: The unique identifier of orgContact
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: orgContact
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                groupIds:
                  type: array
                  items:
                    type: string
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  value:
                    type: array
                    items:
                      type: string
                  '@odata.nextLink':
                    type:
                    - string
                    - 'null'
                additionalProperties:
                  type: object
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
  /contacts/{orgContact-id}/microsoft.graph.checkMemberObjects:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action checkMemberObjects
      operationId: contact_checkMemberObject
      parameters:
      - name: orgContact-id
        in: path
        description: The unique identifier of orgContact
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: orgContact
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                ids:
                  type: array
                  items:
                    type: string
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  value:
                    type: array
                    items:
                      type: string
                  '@odata.nextLink':
                    type:
                    - string
                    - 'null'
                additionalProperties:
                  type: object
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
  /contacts/{orgContact-id}/microsoft.graph.getMemberGroups:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action getMemberGroups
      description: Return all the group IDs for the groups that the specified user, group, service principal, organizational contact, device, or directory object is a member of. This function is transitive. This API returns up to 11,000 group IDs. If more than 11,000 results are available, it returns a 400 Bad Request error with the DirectoryResultSizeLimitExceeded error code. If you get the DirectoryResultSizeLimitExceeded error code, use the List group transitive memberOf API instead.
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/directoryobject-getmembergroups?view=graph-rest-1.0
      operationId: contact_getMemberGroup
      parameters:
      - name: orgContact-id
        in: path
        description: The unique identifier of orgContact
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: orgContact
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                securityEnabledOnly:
                  type:
                  - boolean
                  - 'null'
                  default: false
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  value:
                    type: array
                    items:
                      type: string
                  '@odata.nextLink':
                    type:
                    - string
                    - 'null'
                additionalProperties:
                  type: object
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
  /contacts/{orgContact-id}/microsoft.graph.getMemberObjects:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action getMemberObjects
      description: 'Return all IDs for the groups, administrative units, and directory roles that an object of one of the following types is a member of:

        - user

        - group

        - service principal

        - organizational contact

        - device

        - directory object This function is transitive. Only users and role-enabled groups can be members of directory roles.'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/directoryobject-getmemberobjects?view=graph-rest-1.0
      operationId: contact_getMemberObject
      parameters:
      - name: orgContact-id
        in: path
        description: The unique identifier of orgContact
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: orgContact
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                securityEnabledOnly:
                  type:
                  - boolean
                  - 'null'
                  default: false
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  value:
                    type: array
                    items:
                      type: string
                  '@odata.nextLink':
                    type:
                    - string
                    - 'null'
                additionalProperties:
                  type: object
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
  /contacts/{orgContact-id}/microsoft.graph.restore:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action restore
      description: 'Restore a recently deleted directory object from deleted items. The following types are supported:

        - administrativeUnit

        - application

        - agentIdentityBlueprint

        - agentIdentity

        - agentIdentityBlueprintPrincipal

        - agentUser

        - certificateBasedAuthPki

        - certificateAuthorityDetail

        - group

        - servicePrincipal

        - user If an item is accidentally deleted, you can fully restore the item. Additionally, restoring an application doesn''t automatically restore the associated service principal automatically. You must call this API to explicitly restore the deleted service principal. A recently deleted item remains available for up to 30 days. After 30 days, the item is permanently deleted.'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/directory-deleteditems-restore?view=graph-rest-1.0
      operationId: contact_restore
      parameters:
      - name: orgContact-id
        in: path
        description: The unique identifier of orgContact
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: orgContact
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.directoryObject'
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
  /contacts/{orgContact-id}/microsoft.graph.retryServiceProvisioning:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action retryServiceProvisioning
      description: Retry the orgContact service provisioning.
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/orgcontact-retryserviceprovisioning?view=graph-rest-1.0
      operationId: contact_retryServiceProvisioning
      parameters:
      - name: orgContact-id
        in: path
        description: The unique identifier of orgContact
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: orgContact
      responses:
        2XX:
          description: Success
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
  /contacts/microsoft.graph.getAvailableExtensionProperties:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action getAvailableExtensionProperties
      description: 'Return all directory extension definitions that are registered in a directory, including through multitenant apps. The following entities support extension properties:'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/directoryobject-getavailableextensionproperties?view=graph-rest-1.0
      operationId: contact_getAvailableExtensionProperty
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                isSyncedFromOnPremises:
                  type:
                  - boolean
                  - 'null'
                  default: false
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                title: Collection of extensionProperty
                type: object
                properties:
                  value:
                    type: array
                    items:
                      $ref: '#/components/schemas/microsoft.graph.extensionProperty'
                  '@odata.nextLink':
                    type:
                    - string
                    - 'null'
                additionalProperties:
                  type: object
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
  /contacts/microsoft.graph.getByIds:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action getByIds
      description: 'Return the directory objects specified in a list of IDs. Only a subset of user properties are returned by default in v1.0. Some common uses for this function are to:'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/directoryobject-getbyids?view=graph-rest-1.0
      operationId: contact_getGraphBPreId
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                ids:
                  type: array
                  items:
                    type: string
                types:
                  type: array
                  items:
                    type:
                    - string
                    - 'null'
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                title: Collection of directoryObject
                type: object
                properties:
                  value:
                    type: array
                    items:
                      $ref: '#/components/schemas/microsoft.graph.directoryObject'
                  '@odata.nextLink':
                    type:
                    - string
                    - 'null'
                additionalProperties:
                  type: object
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
  /contacts/microsoft.graph.validateProperties:
    post:
      tags:
      - contacts.orgContact.Actions
      summary: Invoke action validateProperties
      description: 'Validate that a Microsoft 365 group''s display name or mail nickname complies with naming policies. Clients can use this API to determine whether a display name or mail nickname is valid before trying to create a Microsoft 365 group. To validate the properties of an existing group, use the group: validateProperties function. The following policy validations are performed for the display name and mail nickname properties:

        1. Validate the prefix and suffix naming policy

        2. Validate the custom banned words policy

        3. Validate that the mail nickname is unique This API only returns the first validation failure that is encountered. If the properties fail multiple validations, only the first validation failure is returned. However, you can validate both the mail nickname and the display name and receive a collection of validation errors if you''re only validating the prefix and suffix naming policy. To learn more about configuring naming policies, see Configure naming policy.'
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/directoryobject-validateproperties?view=graph-rest-1.0
      operationId: contact_validateProperty
      requestBody:
        description: Action parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                entityType:
                  type:
                  - string
                  - 'null'
                displayName:
                  type:
                  - string
                  - 'null'
                mailNickname:
                  type:
                  - string
                  - 'null'
                onBehalfOfUserId:
                  pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
                  type:
                  - string
                  - 'null'
                  format: uuid
              additionalProperties:
                type: object
        required: true
      responses:
        2XX:
          description: Success
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
components:
  responses:
    error:
      description: error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/microsoft.graph.ODataErrors.ODataError'
  schemas:
    microsoft.graph.entity:
      title: entity
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for an entity. Read-only.
      additionalProperties:
        type: object
    microsoft.graph.ODataErrors.InnerError:
      type: object
      additionalProperties:
        type: object
      description: The structure of this object is service-specific
    microsoft.graph.directoryObject:
      allOf:
      - $ref: '#/components/schemas/microsoft.graph.entity'
      - title: directoryObject
        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
        additionalProperties:
          type: object
    microsoft.graph.extensionProperty:
      allOf:
      - $ref: '#/components/schemas/microsoft.graph.directoryObject'
      - title: extensionProperty
        type: object
        properties:
          appDisplayName:
            type:
            - string
            - 'null'
            description: Display name of the application object on which this extension property is defined. Read-only.
          dataType:
            type: string
            description: Specifies the data type of the value the extension property can hold. Following values are supported. Binary - 256 bytes maximumBooleanDateTime - Must be specified in ISO 8601 format. Will be stored in UTC.Integer - 32-bit value.LargeInteger - 64-bit value.String - 256 characters maximumNot nullable. For multivalued directory extensions, these limits apply per value in the collection.
          isMultiValued:
            type: boolean
            description: 'Defines the directory extension as a multi-valued property. When true, the directory extension property can store a collection of objects of the dataType; for example, a collection of string types such as ''extensionb7b1c57b532f40b8b5ed4b7a7ba67401jobGroupTracker'': [''String 1'', ''String 2'']. The default value is false. Supports $filter (eq).'
          isSyncedFromOnPremises:
            type:
            - boolean
            - 'null'
            description: Indicates if this extension property was synced from on-premises active directory using Microsoft Entra Connect. Read-only.
          name:
            type: string
            description: Name of the extension property. Not nullable. Supports $filter (eq).
          targetObjects:
            type: array
            items:
              type: string
            description: Following values are supported. Not nullable. UserGroupAdministrativeUnitApplicationDeviceOrganization
        additionalProperties:
          type: object
    microsoft.graph.ODataErrors.ODataError:
      required:
      - error
      type: object
      properties:
        error:
          $ref: '#/components/schemas/microsoft.graph.ODataErrors.MainError'
      additionalProperties:
        type: object
    microsoft.graph.ODataErrors.MainError:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
          x-ms-primary-error-message: true
        target:
          type:
          - string
          - 'null'
        details:
          type: array
          items:
            $ref: '#/components/schemas/microsoft.graph.ODataErrors.ErrorDetails'
        innerError:
          $ref: '#/components/schemas/microsoft.graph.ODataErrors.InnerError'
      additionalProperties:
        type: object
    microsoft.graph.ODataErrors.ErrorDetails:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        target:
          type:
          - string
          - 'null'
      additionalProperties:
        type: object
  securitySchemes:
    azureaadv2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://login.microsoftonline.com/common/oauth2/v2.0/authorize
          tokenUrl: https://login.microsoftonline.com/common/oauth2/v2.0/token
          scopes: {}