Microsoft Graph Users.contact API

The Users.contact API from Microsoft Graph — 10 operation(s) for users.contact.

Operations 19

GET /users/{user-id}/contacts Microsoft Graph Get contacts from users #
POST /users/{user-id}/contacts Microsoft Graph Create new navigation property to contacts for users #
GET /users/{user-id}/contacts/{contact-id} Microsoft Graph Get contacts from users #
PATCH /users/{user-id}/contacts/{contact-id} Microsoft Graph Update the navigation property contacts in users #
DELETE /users/{user-id}/contacts/{contact-id} Microsoft Graph Delete navigation property contacts for users #
GET /users/{user-id}/contacts/{contact-id}/extensions Microsoft Graph Get extensions from users #
POST /users/{user-id}/contacts/{contact-id}/extensions Microsoft Graph Create new navigation property to extensions for users #
GET /users/{user-id}/contacts/{contact-id}/extensions/{extension-id} Microsoft Graph Get extensions from users #
PATCH /users/{user-id}/contacts/{contact-id}/extensions/{extension-id} Microsoft Graph Update the navigation property extensions in users #
DELETE /users/{user-id}/contacts/{contact-id}/extensions/{extension-id} Microsoft Graph Delete navigation property extensions for users #
GET /users/{user-id}/contacts/{contact-id}/extensions/$count Microsoft Graph Get the number of the resource #
POST /users/{user-id}/contacts/{contact-id}/permanentDelete Microsoft Graph Invoke action permanentDelete #
GET /users/{user-id}/contacts/{contact-id}/photo Microsoft Graph Get photo from users #
PATCH /users/{user-id}/contacts/{contact-id}/photo Microsoft Graph Update the navigation property photo in users #
GET /users/{user-id}/contacts/{contact-id}/photo/$value Microsoft Graph Get media content for the navigation property photo from users #
PUT /users/{user-id}/contacts/{contact-id}/photo/$value Microsoft Graph Update media content for the navigation property photo in users #
DELETE /users/{user-id}/contacts/{contact-id}/photo/$value Microsoft Graph Delete media content for the navigation property photo in users #
GET /users/{user-id}/contacts/$count Microsoft Graph Get the number of the resource #
GET /users/{user-id}/contacts/delta() Microsoft Graph Invoke function delta #

Documentation

📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/admin?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/agreementacceptance?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/agreement?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/teamsapp?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/application?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/applicationtemplate?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/azure-ad-auditlog-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/authenticationmethodconfiguration?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/authenticationmethodspolicy?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/certificatebasedauthconfiguration?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/chat?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/communications-api-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/complianceapioverview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/externalconnectors-externalconnection?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/contact?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/contract?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/copilot-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/datapolicyoperation?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/intune-apps-conceptual?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/intune-device-conceptual?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/device?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/directory?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/domaindnsrecord?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/domain?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/drive?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/education-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/employee-experience-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/externalconnectors-external?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/filter-query-parameter
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/excel?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/grouplifecyclepolicy?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/groups-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/groupsetting?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/groupsettingtemplate?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/identitycontainer?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/informationprotection?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/invitation?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/users?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/oauth2permissiongrant?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/organization?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/resourcespecificpermissiongrant?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/place?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/planner-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/policy-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/print?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/privacy?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/report?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/rolemanagement?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/schemaextension?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/scopedrolemembership?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/search-api-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/security-api-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/serviceprincipal?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/shares?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/sharepoint?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/solutions-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/filestorage?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/subscribedsku?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/subscription?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/teams-api-overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/teamwork?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/tenantrelationship?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/user?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/auth/auth-concepts
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/workplace?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/overview?view=graph-rest-1.0
📖
Documentation
https://learn.microsoft.com/en-us/graph/api/resources/sitepage?view=graph-rest-1.0

Specifications

Other Resources

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/microsoft-graph-users-contact-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

microsoft-graph-users-contact-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Microsoft Graph Admin Admin.admin Users.contact API
  description: 'Microsoft Graph API for managing administrative resources in Microsoft Entra ID.

    This API enables administrators to manage Microsoft Edge browser settings, Internet Explorer mode configurations,

    site lists, shared browser sites, Microsoft 365 Apps installation options, people insights, service announcements,

    SharePoint settings, Copilot administration, directory administrative units, and admin consent policies.'
  version: 1.0.0
  contact:
    name: Microsoft Graph API Support
    url: https://developer.microsoft.com/graph
servers:
- url: https://graph.microsoft.com/v1.0
  description: Microsoft Graph API v1.0 endpoint
tags:
- name: Users.contact
paths:
  /users/{user-id}/contacts:
    description: Provides operations to manage the contacts property of the microsoft.graph.user entity.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Get contacts from users
      description: The user's contacts. Read-only. Nullable.
      operationId: users.ListContacts
      parameters:
      - $ref: '#/components/parameters/top'
      - $ref: '#/components/parameters/skip'
      - $ref: '#/components/parameters/search'
      - $ref: '#/components/parameters/filter'
      - $ref: '#/components/parameters/count'
      - name: $orderby
        in: query
        description: Order items by property values
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $select
        in: query
        description: Select properties to be returned
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $expand
        in: query
        description: Expand related entities
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      responses:
        2XX:
          $ref: '#/components/responses/microsoft.graph.contactCollectionResponse'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
      x-ms-docs-operation-type: operation
    post:
      tags:
      - Users.contact
      summary: Microsoft Graph Create new navigation property to contacts for users
      operationId: users.CreateContacts
      requestBody:
        description: New navigation property
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/microsoft.graph.contact'
        required: true
      responses:
        2XX:
          description: Created navigation property.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.contact'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
  /users/{user-id}/contacts/{contact-id}:
    description: Provides operations to manage the contacts property of the microsoft.graph.user entity.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    - name: contact-id
      in: path
      description: The unique identifier of contact
      required: true
      schema:
        type: string
      x-ms-docs-key-type: contact
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Get contacts from users
      description: The user's contacts. Read-only. Nullable.
      operationId: users.GetContacts
      parameters:
      - name: $select
        in: query
        description: Select properties to be returned
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $expand
        in: query
        description: Expand related entities
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      responses:
        2XX:
          description: Retrieved navigation property
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.contact'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
    patch:
      tags:
      - Users.contact
      summary: Microsoft Graph Update the navigation property contacts in users
      operationId: users.UpdateContacts
      requestBody:
        description: New navigation property values
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/microsoft.graph.contact'
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.contact'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
    delete:
      tags:
      - Users.contact
      summary: Microsoft Graph Delete navigation property contacts for users
      operationId: users.DeleteContacts
      parameters:
      - name: If-Match
        in: header
        description: ETag
        schema:
          type: string
      responses:
        '204':
          description: Success
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
  /users/{user-id}/contacts/{contact-id}/extensions:
    description: Provides operations to manage the extensions property of the microsoft.graph.contact entity.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    - name: contact-id
      in: path
      description: The unique identifier of contact
      required: true
      schema:
        type: string
      x-ms-docs-key-type: contact
    x-ms-docs-grouped-path:
    - /users/{user-id}/contactFolders/{contactFolder-id}/childFolders/{contactFolder-id1}/contacts/{contact-id}/extensions
    - /users/{user-id}/contactFolders/{contactFolder-id}/contacts/{contact-id}/extensions
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Get extensions from users
      description: The collection of open extensions defined for the contact. Read-only. Nullable.
      operationId: users.contacts.ListExtensions
      parameters:
      - $ref: '#/components/parameters/top'
      - $ref: '#/components/parameters/skip'
      - $ref: '#/components/parameters/search'
      - $ref: '#/components/parameters/filter'
      - $ref: '#/components/parameters/count'
      - name: $orderby
        in: query
        description: Order items by property values
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $select
        in: query
        description: Select properties to be returned
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $expand
        in: query
        description: Expand related entities
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      responses:
        2XX:
          $ref: '#/components/responses/microsoft.graph.extensionCollectionResponse'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
      x-ms-docs-operation-type: operation
    post:
      tags:
      - Users.contact
      summary: Microsoft Graph Create new navigation property to extensions for users
      operationId: users.contacts.CreateExtensions
      requestBody:
        description: New navigation property
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/microsoft.graph.extension'
        required: true
      responses:
        2XX:
          description: Created navigation property.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.extension'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
  /users/{user-id}/contacts/{contact-id}/extensions/{extension-id}:
    description: Provides operations to manage the extensions property of the microsoft.graph.contact entity.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    - name: contact-id
      in: path
      description: The unique identifier of contact
      required: true
      schema:
        type: string
      x-ms-docs-key-type: contact
    - name: extension-id
      in: path
      description: The unique identifier of extension
      required: true
      schema:
        type: string
      x-ms-docs-key-type: extension
    x-ms-docs-grouped-path:
    - /users/{user-id}/contactFolders/{contactFolder-id}/childFolders/{contactFolder-id1}/contacts/{contact-id}/extensions/{extension-id}
    - /users/{user-id}/contactFolders/{contactFolder-id}/contacts/{contact-id}/extensions/{extension-id}
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Get extensions from users
      description: The collection of open extensions defined for the contact. Read-only. Nullable.
      operationId: users.contacts.GetExtensions
      parameters:
      - name: $select
        in: query
        description: Select properties to be returned
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $expand
        in: query
        description: Expand related entities
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      responses:
        2XX:
          description: Retrieved navigation property
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.extension'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
    patch:
      tags:
      - Users.contact
      summary: Microsoft Graph Update the navigation property extensions in users
      operationId: users.contacts.UpdateExtensions
      requestBody:
        description: New navigation property values
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/microsoft.graph.extension'
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.extension'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
    delete:
      tags:
      - Users.contact
      summary: Microsoft Graph Delete navigation property extensions for users
      operationId: users.contacts.DeleteExtensions
      parameters:
      - name: If-Match
        in: header
        description: ETag
        schema:
          type: string
      responses:
        '204':
          description: Success
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
  /users/{user-id}/contacts/{contact-id}/extensions/$count:
    description: Provides operations to count the resources in the collection.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    - name: contact-id
      in: path
      description: The unique identifier of contact
      required: true
      schema:
        type: string
      x-ms-docs-key-type: contact
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Get the number of the resource
      operationId: users.contacts.extensions.GetCount-e5d6
      parameters:
      - $ref: '#/components/parameters/search'
      - $ref: '#/components/parameters/filter'
      responses:
        2XX:
          $ref: '#/components/responses/ODataCountResponse'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
  /users/{user-id}/contacts/{contact-id}/permanentDelete:
    description: Provides operations to call the permanentDelete method.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    - name: contact-id
      in: path
      description: The unique identifier of contact
      required: true
      schema:
        type: string
      x-ms-docs-key-type: contact
    x-ms-docs-grouped-path:
    - /users/{user-id}/calendar/events/{event-id}/permanentDelete
    - /users/{user-id}/calendar/permanentDelete
    - /users/{user-id}/calendarGroups/{calendarGroup-id}/calendars/{calendar-id}/events/{event-id}/permanentDelete
    - /users/{user-id}/calendarGroups/{calendarGroup-id}/calendars/{calendar-id}/permanentDelete
    - /users/{user-id}/calendars/{calendar-id}/events/{event-id}/permanentDelete
    - /users/{user-id}/calendars/{calendar-id}/permanentDelete
    - /users/{user-id}/contactFolders/{contactFolder-id}/childFolders/{contactFolder-id1}/contacts/{contact-id}/permanentDelete
    - /users/{user-id}/contactFolders/{contactFolder-id}/childFolders/{contactFolder-id1}/permanentDelete
    - /users/{user-id}/contactFolders/{contactFolder-id}/contacts/{contact-id}/permanentDelete
    - /users/{user-id}/contactFolders/{contactFolder-id}/permanentDelete
    - /users/{user-id}/events/{event-id}/permanentDelete
    - /users/{user-id}/mailFolders/{mailFolder-id}/childFolders/{mailFolder-id1}/messages/{message-id}/permanentDelete
    - /users/{user-id}/mailFolders/{mailFolder-id}/childFolders/{mailFolder-id1}/permanentDelete
    - /users/{user-id}/mailFolders/{mailFolder-id}/messages/{message-id}/permanentDelete
    - /users/{user-id}/mailFolders/{mailFolder-id}/permanentDelete
    - /users/{user-id}/messages/{message-id}/permanentDelete
    post:
      tags:
      - Users.contact
      summary: Microsoft Graph Invoke action permanentDelete
      operationId: users.user.contacts.contact.permanentDelete
      responses:
        '204':
          description: Success
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: action
  /users/{user-id}/contacts/{contact-id}/photo:
    description: Provides operations to manage the photo property of the microsoft.graph.contact entity.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    - name: contact-id
      in: path
      description: The unique identifier of contact
      required: true
      schema:
        type: string
      x-ms-docs-key-type: contact
    x-ms-docs-grouped-path:
    - /users/{user-id}/contactFolders/{contactFolder-id}/childFolders/{contactFolder-id1}/contacts/{contact-id}/photo
    - /users/{user-id}/contactFolders/{contactFolder-id}/contacts/{contact-id}/photo
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Get photo from users
      description: Optional contact picture. You can get or set a photo for a contact.
      operationId: users.contacts.GetPhoto
      parameters:
      - name: $select
        in: query
        description: Select properties to be returned
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $expand
        in: query
        description: Expand related entities
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      responses:
        2XX:
          description: Retrieved navigation property
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.profilePhoto'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
    patch:
      tags:
      - Users.contact
      summary: Microsoft Graph Update the navigation property photo in users
      operationId: users.contacts.UpdatePhoto
      requestBody:
        description: New navigation property values
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/microsoft.graph.profilePhoto'
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.profilePhoto'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
  /users/{user-id}/contacts/{contact-id}/photo/$value:
    description: Provides operations to manage the media for the user entity.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    - name: contact-id
      in: path
      description: The unique identifier of contact
      required: true
      schema:
        type: string
      x-ms-docs-key-type: contact
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Get media content for the navigation property photo from users
      description: Optional contact picture. You can get or set a photo for a contact.
      operationId: users.contacts.GetPhotoContent
      responses:
        2XX:
          description: Retrieved media content
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
    put:
      tags:
      - Users.contact
      summary: Microsoft Graph Update media content for the navigation property photo in users
      description: Optional contact picture. You can get or set a photo for a contact.
      operationId: users.contacts.UpdatePhotoContent
      requestBody:
        description: New media content.
        content:
          application/octet-stream:
            schema:
              type: string
              format: binary
        required: true
      responses:
        2XX:
          description: Success
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
    delete:
      tags:
      - Users.contact
      summary: Microsoft Graph Delete media content for the navigation property photo in users
      description: Optional contact picture. You can get or set a photo for a contact.
      operationId: users.contacts.DeletePhotoContent
      parameters:
      - name: If-Match
        in: header
        description: ETag
        schema:
          type: string
      responses:
        '204':
          description: Success
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
  /users/{user-id}/contacts/$count:
    description: Provides operations to count the resources in the collection.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Get the number of the resource
      operationId: users.contacts.GetCount-4943
      parameters:
      - $ref: '#/components/parameters/search'
      - $ref: '#/components/parameters/filter'
      responses:
        2XX:
          $ref: '#/components/responses/ODataCountResponse'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
  /users/{user-id}/contacts/delta():
    description: Provides operations to call the delta method.
    parameters:
    - name: user-id
      in: path
      description: The unique identifier of user
      required: true
      schema:
        type: string
      x-ms-docs-key-type: user
    x-ms-docs-grouped-path:
    - /users/{user-id}/calendar/calendarView/delta()
    - /users/{user-id}/calendar/events/{event-id}/instances/delta()
    - /users/{user-id}/calendar/events/delta()
    - /users/{user-id}/calendarGroups/{calendarGroup-id}/calendars/{calendar-id}/calendarView/delta()
    - /users/{user-id}/calendarGroups/{calendarGroup-id}/calendars/{calendar-id}/events/{event-id}/instances/delta()
    - /users/{user-id}/calendarGroups/{calendarGroup-id}/calendars/{calendar-id}/events/delta()
    - /users/{user-id}/calendars/{calendar-id}/calendarView/delta()
    - /users/{user-id}/calendars/{calendar-id}/events/{event-id}/instances/delta()
    - /users/{user-id}/calendars/{calendar-id}/events/delta()
    - /users/{user-id}/calendarView/delta()
    - /users/{user-id}/chats/{chat-id}/messages/{chatMessage-id}/replies/delta()
    - /users/{user-id}/chats/{chat-id}/messages/delta()
    - /users/{user-id}/contactFolders/{contactFolder-id}/childFolders/{contactFolder-id1}/contacts/delta()
    - /users/{user-id}/contactFolders/{contactFolder-id}/childFolders/delta()
    - /users/{user-id}/contactFolders/{contactFolder-id}/contacts/delta()
    - /users/{user-id}/contactFolders/delta()
    - /users/{user-id}/events/{event-id}/instances/delta()
    - /users/{user-id}/events/delta()
    - /users/{user-id}/joinedTeams/{team-id}/channels/{channel-id}/messages/{chatMessage-id}/replies/delta()
    - /users/{user-id}/joinedTeams/{team-id}/channels/{channel-id}/messages/delta()
    - /users/{user-id}/joinedTeams/{team-id}/primaryChannel/messages/{chatMessage-id}/replies/delta()
    - /users/{user-id}/joinedTeams/{team-id}/primaryChannel/messages/delta()
    - /users/{user-id}/mailFolders/{mailFolder-id}/childFolders/{mailFolder-id1}/messages/delta()
    - /users/{user-id}/mailFolders/{mailFolder-id}/childFolders/delta()
    - /users/{user-id}/mailFolders/{mailFolder-id}/messages/delta()
    - /users/{user-id}/mailFolders/delta()
    - /users/{user-id}/messages/delta()
    - /users/{user-id}/onlineMeetings/{onlineMeeting-id}/recordings/delta()
    - /users/{user-id}/onlineMeetings/{onlineMeeting-id}/transcripts/delta()
    - /users/{user-id}/todo/lists/{todoTaskList-id}/tasks/delta()
    - /users/{user-id}/todo/lists/delta()
    - /users/delta()
    - /users/delta()
    get:
      tags:
      - Users.contact
      summary: Microsoft Graph Invoke function delta
      description: "Get a set of contacts that have been added, deleted, or updated in a specified folder. A delta function call for contacts in a folder is similar to a GET request, except that by appropriately \napplying state tokens in one or more of these calls, \nyou can query for incremental changes in the contacts in \nthat folder. This allows you to maintain and synchronize a local store of a user's contacts without \nhaving to fetch the entire set of contacts from the server every time.  "
      externalDocs:
        description: Find more info here
        url: https://learn.microsoft.com/graph/api/contact-delta?view=graph-rest-1.0
      operationId: users.user.contacts.delta
      parameters:
      - $ref: '#/components/parameters/top'
      - $ref: '#/components/parameters/skip'
      - $ref: '#/components/parameters/search'
      - $ref: '#/components/parameters/filter'
      - $ref: '#/components/parameters/count'
      - name: $select
        in: query
        description: Select properties to be returned
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $orderby
        in: query
        description: Order items by property values
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $expand
        in: query
        description: Expand related entities
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                title: Collection of contact
                type: object
                allOf:
                - $ref: '#/components/schemas/BaseDeltaFunctionResponse'
                - type: object
                  properties:
                    value:
                      type: array
                      items:
                        $ref: '#/components/schemas/microsoft.graph.contact'
        4XX:
          $ref: '#/components/responses/error'
        5XX:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: function
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
components:
  schemas:
    ODataCountResponse:
      type: integer
      format: int32
    microsoft.graph.ODataErrors.ErrorDetails:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        target:
          type: string
          nullable: true
    microsoft.graph.emailAddress:
      title: emailAddress
      required:
      - '@odata.type'
      type: object
      properties:
        address:
          type: string
          description: The email address of the person or entity.
          nullable: true
        name:
          type: string
          description: The display name of the person or entity.
          nullable: true
        '@odata.type':
          type: string
    microsoft.graph.physicalAddress:
      title: physicalAddress
      required:
      - '@odata.type'
      type: object
      properties:
        city:
          type: string
          description: The city.
          nullable: true
        countryOrRegion:
          type: string
          description: The country or region. It's a free-format string value, for example, 'United States'.
          nullable: true
        postalCode:
          type: string
          description: The postal code.
          nullable: true
        state:
          type: string
          description: The state.
          nullable: true
        street:
          type: string
          description: The street.
          nullable: true
        '@odata.type':
          type: string
    microsoft.graph.extensionCollectionResponse:
      title: Collection of extension
      type: object
      allOf:
      - $ref: '#/components/schemas/BaseCollectionPaginationCountResponse'
      - type: object
        properties:
          value:
            type: array
            items:
              $ref: '#/components/schemas/microsoft.graph.extension'
    microsoft.graph.extension:
      allOf:
      - $ref: '#/components/schemas/microsoft.graph.entity'
      - title: extension
        required:
        - '@odata.type'
        type: object
        properties:
          '@odata.type':
            type: string
        discriminator:
          propertyName: '@odata.type'
          mapping:
            '#microsoft.graph.openTypeExtension': '#/components/schemas/microsoft.graph.openTypeExtension'
    microsoft.graph.ODataErrors.InnerError:
      title: InnerError
      required:
      - '@odata.type'
      type: object
      properties:
        request-id:
          type: string
          description: Request Id as tracked internally by the service
          nullable: true
        client-request-id:
          type: string
          description: Client request Id as sent by the client application.
          nullable: true
        date:
          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
          description: Date when the error occured.
          format: date-time
          nullable: true
        '@odata.type':
          type: string
    microsoft.graph.contact:
      allOf:
      - $ref: '#/components/schemas/microsoft.graph.outlookItem'
      - title: contact
        required:
        - '@odata.type'
        type: object
        properties:
          assistantName:
            type: string
            description: The name of the contact's assistant.
            nullable: true
          birthday:
            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
            description: The contact's birthday. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z
            format: date-time
            nullable: true
          businessAddress:
            anyOf:
            - $ref: '#/components/schemas/microsoft.graph.physicalAddress'
            - type: object
              nullable: true
            description: The contact's business address.
          businessHomePage:
            type: string
            description: The business home page of the contact.
            nullable: true
          businessPhones:
            type: array
            items:
              type: string
              nullable: true
            description: The contact's business phone numbers.
          children:
            type: array
            items:
              type: string
              nullable: true
            description: The names of the contact's children.
          companyName:
            type: string
            description: The name of the contact's company.
            nullable: true
          department:
            type: string
            description: The contact's department.
            nullable: true
          displayName:
            type: string
            description: The contact's display name. You can specify the display name in a create or update operation. Note that later updates to other properties may cause an automatically generated value to overwrite the displayName value you have specified. To preserve a pre-existing value, always include it as displayName in an update operation.
            nullable: true
          emailAddresses:
            type: array
            items:
              $ref: '#/components/schemas/microsoft.graph.emailAddress'
            description: The contact's email addresses.
          fileAs:
            type: string
            description: The name the contact is filed under.
            

# --- truncated at 32 KB (165 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/microsoft-graph/refs/heads/main/openapi/microsoft-graph-users-contact-api-openapi.yml