Microsoft Graph Agreements API

Operations for managing agreement entities including creating, reading, updating, and deleting agreements

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

OpenAPI Specification

microsoft-graph-agreements-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Microsoft Graph Admin Admin.admin Agreements 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: Agreements
  description: Operations for managing agreement entities including creating, reading, updating, and deleting agreements
paths:
  /agreements:
    description: Provides operations to manage the collection of agreement entities.
    get:
      tags:
      - Agreements
      summary: Microsoft Graph List all agreements
      description: Retrieve a list of all agreement entities in the organization. Supports OData query parameters for filtering, sorting, and pagination.
      operationId: listAgreements
      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/AgreementCollectionResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
        5XX:
          $ref: '#/components/responses/ErrorResponse'
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
      x-ms-docs-operation-type: operation
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: default
    post:
      tags:
      - Agreements
      summary: Microsoft Graph Create a new agreement
      description: Create a new agreement entity in the organization. The agreement can include terms of use content and acceptance requirements.
      operationId: createAgreement
      requestBody:
        description: The agreement entity to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Agreement'
            examples:
              CreateAgreementRequest:
                $ref: '#/components/examples/CreateAgreementRequest'
        required: true
      responses:
        2XX:
          description: Created entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agreement'
              examples:
                CreateAgreementResponse:
                  $ref: '#/components/examples/CreateAgreementResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
        5XX:
          $ref: '#/components/responses/ErrorResponse'
      x-ms-docs-operation-type: operation
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: default
  /agreements/{agreement-id}:
    description: Provides operations to manage a specific agreement entity.
    parameters:
    - $ref: '#/components/parameters/AgreementId'
    get:
      tags:
      - Agreements
      summary: Microsoft Graph Get an agreement by ID
      description: Retrieve a specific agreement entity by its unique identifier.
      operationId: getAgreement
      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 entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agreement'
              examples:
                GetAgreementResponse:
                  $ref: '#/components/examples/GetAgreementResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
        5XX:
          $ref: '#/components/responses/ErrorResponse'
      x-ms-docs-operation-type: operation
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: default
    patch:
      tags:
      - Agreements
      summary: Microsoft Graph Update an agreement
      description: Update the properties of a specific agreement entity.
      operationId: updateAgreement
      requestBody:
        description: New property values for the agreement
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Agreement'
            examples:
              UpdateAgreementRequest:
                $ref: '#/components/examples/UpdateAgreementRequest'
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agreement'
              examples:
                UpdateAgreementResponse:
                  $ref: '#/components/examples/UpdateAgreementResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
        5XX:
          $ref: '#/components/responses/ErrorResponse'
      x-ms-docs-operation-type: operation
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: default
    delete:
      tags:
      - Agreements
      summary: Microsoft Graph Delete an agreement
      description: Delete a specific agreement entity from the organization.
      operationId: deleteAgreement
      parameters:
      - name: If-Match
        in: header
        description: ETag for optimistic concurrency control
        schema:
          type: string
      responses:
        '204':
          description: Success - No content returned
        4XX:
          $ref: '#/components/responses/ErrorResponse'
        5XX:
          $ref: '#/components/responses/ErrorResponse'
      x-ms-docs-operation-type: operation
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: default
  /agreements/$count:
    description: Get the count of agreements.
    get:
      tags:
      - Agreements
      summary: Microsoft Graph Count agreements
      description: Get the total count of agreement entities in the organization.
      operationId: countAgreements
      parameters:
      - $ref: '#/components/parameters/Search'
      - $ref: '#/components/parameters/Filter'
      responses:
        2XX:
          $ref: '#/components/responses/ODataCountResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
        5XX:
          $ref: '#/components/responses/ErrorResponse'
      x-ms-docs-operation-type: operation
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: default
components:
  schemas:
    TermsExpiration:
      title: TermsExpiration
      type: object
      properties:
        frequency:
          pattern: ^-?P([0-9]+D)?(T([0-9]+H)?([0-9]+M)?([0-9]+([.][0-9]+)?S)?)?$
          type: string
          description: Represents the frequency at which the terms will expire, after its first expiration as set in startDateTime. The value is represented in ISO 8601 format for durations.
          format: duration
          nullable: true
        startDateTime:
          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 DateTime when the agreement is set to expire for all users. Read-only.
          format: date-time
          nullable: true
        '@odata.type':
          type: string
    ErrorDetail:
      title: ErrorDetail
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        target:
          type: string
          nullable: true
    AgreementAcceptance:
      allOf:
      - $ref: '#/components/schemas/Entity'
      - title: AgreementAcceptance
        required:
        - '@odata.type'
        type: object
        properties:
          agreementFileId:
            type: string
            description: The identifier of the agreement file accepted by the user.
            nullable: true
          agreementId:
            type: string
            description: The identifier of the agreement.
            nullable: true
          deviceDisplayName:
            type: string
            description: The display name of the device used for accepting the agreement.
            nullable: true
          deviceId:
            type: string
            description: The unique identifier of the device used for accepting the agreement. Supports $filter (eq) and eq for null values.
            nullable: true
          deviceOSType:
            type: string
            description: The operating system used to accept the agreement.
            nullable: true
          deviceOSVersion:
            type: string
            description: The operating system version of the device used to accept the agreement.
            nullable: true
          expirationDateTime:
            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 expiration date time of the acceptance. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time.
            format: date-time
            nullable: true
          recordedDateTime:
            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 Timestamp type represents date and time information using ISO 8601 format and is always in UTC time.
            format: date-time
            nullable: true
          state:
            anyOf:
            - $ref: '#/components/schemas/AgreementAcceptanceState'
            - type: object
              nullable: true
            description: The state of the agreement acceptance. The possible values are accepted, declined. Supports $filter (eq).
          userDisplayName:
            type: string
            description: Display name of the user when the acceptance was recorded.
            nullable: true
          userEmail:
            type: string
            description: Email of the user when the acceptance was recorded.
            nullable: true
          userId:
            type: string
            description: The identifier of the user who accepted the agreement. Supports $filter (eq).
            nullable: true
          userPrincipalName:
            type: string
            description: UPN of the user when the acceptance was recorded.
            nullable: true
          '@odata.type':
            type: string
      x-ms-discriminator-value: '#microsoft.graph.agreementAcceptance'
    MainError:
      title: MainError
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
          x-ms-primary-error-message: true
        target:
          type: string
          nullable: true
        details:
          type: array
          items:
            $ref: '#/components/schemas/ErrorDetail'
        innerError:
          $ref: '#/components/schemas/InnerError'
    InnerError:
      title: InnerError
      type: object
      description: The structure of this object is service-specific
    Entity:
      title: Entity
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for an entity. Read-only.
        '@odata.type':
          type: string
    Agreement:
      allOf:
      - $ref: '#/components/schemas/Entity'
      - title: Agreement
        required:
        - '@odata.type'
        type: object
        properties:
          displayName:
            type: string
            description: Display name of the agreement. Supports $filter (eq).
            nullable: true
          isPerDeviceAcceptanceRequired:
            type: boolean
            description: Indicates whether end users are required to accept this agreement on every device. Supports $filter (eq).
            nullable: true
          isViewingBeforeAcceptanceRequired:
            type: boolean
            description: Indicates whether the user has to expand the agreement before accepting. Supports $filter (eq).
            nullable: true
          termsExpiration:
            anyOf:
            - $ref: '#/components/schemas/TermsExpiration'
            - type: object
              nullable: true
            description: Expiration schedule and frequency of agreement for all users. Supports $filter (eq).
          userReacceptRequiredFrequency:
            pattern: ^-?P([0-9]+D)?(T([0-9]+H)?([0-9]+M)?([0-9]+([.][0-9]+)?S)?)?$
            type: string
            description: The duration after which the user must reaccept the terms of use. The value is represented in ISO 8601 format for durations. Supports $filter (eq).
            format: duration
            nullable: true
          acceptances:
            type: array
            items:
              $ref: '#/components/schemas/AgreementAcceptance'
            description: Read-only. Information about acceptances of this agreement.
            x-ms-navigationProperty: true
          file:
            anyOf:
            - $ref: '#/components/schemas/AgreementFile'
            - type: object
              nullable: true
            description: Default PDF linked to this agreement.
            x-ms-navigationProperty: true
          files:
            type: array
            items:
              $ref: '#/components/schemas/AgreementFileLocalization'
            description: PDFs linked to this agreement. This property is in the process of being deprecated. Use the file property instead. Supports $expand.
            x-ms-navigationProperty: true
          '@odata.type':
            type: string
      x-ms-discriminator-value: '#microsoft.graph.agreement'
    AgreementAcceptanceState:
      title: AgreementAcceptanceState
      type: string
      enum:
      - accepted
      - declined
      description: The state of the agreement acceptance.
    AgreementCollectionResponse:
      title: AgreementCollectionResponse
      type: object
      properties:
        value:
          type: array
          items:
            $ref: '#/components/schemas/Agreement'
        '@odata.nextLink':
          type: string
          nullable: true
        '@odata.count':
          type: integer
          format: int32
    AgreementFileVersion:
      allOf:
      - $ref: '#/components/schemas/AgreementFileProperties'
      - title: AgreementFileVersion
        required:
        - '@odata.type'
        type: object
        properties:
          '@odata.type':
            type: string
      x-ms-discriminator-value: '#microsoft.graph.agreementFileVersion'
    AgreementFileData:
      title: AgreementFileData
      type: object
      properties:
        data:
          type: string
          description: Data that represents the terms of use PDF document. Read-only.
          format: base64url
          nullable: true
        '@odata.type':
          type: string
    AgreementFile:
      allOf:
      - $ref: '#/components/schemas/AgreementFileProperties'
      - title: AgreementFile
        required:
        - '@odata.type'
        type: object
        properties:
          localizations:
            type: array
            items:
              $ref: '#/components/schemas/AgreementFileLocalization'
            description: The localized version of the terms of use agreement files attached to the agreement.
            x-ms-navigationProperty: true
          '@odata.type':
            type: string
      x-ms-discriminator-value: '#microsoft.graph.agreementFile'
    AgreementFileLocalization:
      allOf:
      - $ref: '#/components/schemas/AgreementFileProperties'
      - title: AgreementFileLocalization
        required:
        - '@odata.type'
        type: object
        properties:
          versions:
            type: array
            items:
              $ref: '#/components/schemas/AgreementFileVersion'
            description: Read-only. Customized versions of the terms of use agreement in the Microsoft Entra tenant.
            x-ms-navigationProperty: true
          '@odata.type':
            type: string
      x-ms-discriminator-value: '#microsoft.graph.agreementFileLocalization'
    ODataCountResponse:
      type: integer
      format: int32
    ODataError:
      title: ODataError
      required:
      - error
      type: object
      properties:
        error:
          $ref: '#/components/schemas/MainError'
    AgreementFileProperties:
      allOf:
      - $ref: '#/components/schemas/Entity'
      - title: AgreementFileProperties
        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
            description: The date time representing when the file was created. Read-only.
            format: date-time
            nullable: true
          displayName:
            type: string
            description: Localized display name of the policy file of an agreement.
            nullable: true
          fileData:
            anyOf:
            - $ref: '#/components/schemas/AgreementFileData'
            - type: object
              nullable: true
            description: Data that represents the terms of use PDF document.
          fileName:
            type: string
            description: Name of the agreement file.
            nullable: true
          isDefault:
            type: boolean
            description: If none of the languages matches the client preference, indicates whether this is the default agreement file.
            nullable: true
          isMajorVersion:
            type: boolean
            description: Indicates whether the agreement file is a major version update.
            nullable: true
          language:
            type: string
            description: The language of the agreement file in the format languagecode2-country/regioncode2.
            nullable: true
          '@odata.type':
            type: string
  responses:
    ErrorResponse:
      description: Error response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ODataError'
    ODataCountResponse:
      description: The count of the resource
      content:
        text/plain:
          schema:
            $ref: '#/components/schemas/ODataCountResponse'
    AgreementCollectionResponse:
      description: Retrieved collection of agreements
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AgreementCollectionResponse'
          examples:
            AgreementCollectionExample:
              $ref: '#/components/examples/AgreementCollectionExample'
  examples:
    AgreementCollectionExample:
      summary: Example collection of agreements
      value:
        value:
        - id: 00000000-0000-0000-0000-000000000001
          displayName: Terms of Use Agreement
          isPerDeviceAcceptanceRequired: false
          isViewingBeforeAcceptanceRequired: true
          userReacceptRequiredFrequency: P90D
          '@odata.type': '#microsoft.graph.agreement'
        '@odata.count': 1
    UpdateAgreementResponse:
      summary: Example response for updated agreement
      value:
        id: 00000000-0000-0000-0000-000000000001
        displayName: Updated Terms of Use Agreement
        isPerDeviceAcceptanceRequired: true
        isViewingBeforeAcceptanceRequired: true
        userReacceptRequiredFrequency: P90D
        '@odata.type': '#microsoft.graph.agreement'
    UpdateAgreementRequest:
      summary: Example request to update an agreement
      value:
        displayName: Updated Terms of Use Agreement
        isPerDeviceAcceptanceRequired: true
        '@odata.type': '#microsoft.graph.agreement'
    CreateAgreementRequest:
      summary: Example request to create an agreement
      value:
        displayName: Terms of Use Agreement
        isPerDeviceAcceptanceRequired: false
        isViewingBeforeAcceptanceRequired: true
        userReacceptRequiredFrequency: P90D
        '@odata.type': '#microsoft.graph.agreement'
    GetAgreementResponse:
      summary: Example response for getting an agreement
      value:
        id: 00000000-0000-0000-0000-000000000001
        displayName: Terms of Use Agreement
        isPerDeviceAcceptanceRequired: false
        isViewingBeforeAcceptanceRequired: true
        userReacceptRequiredFrequency: P90D
        '@odata.type': '#microsoft.graph.agreement'
    CreateAgreementResponse:
      summary: Example response for created agreement
      value:
        id: 00000000-0000-0000-0000-000000000001
        displayName: Terms of Use Agreement
        isPerDeviceAcceptanceRequired: false
        isViewingBeforeAcceptanceRequired: true
        userReacceptRequiredFrequency: P90D
        '@odata.type': '#microsoft.graph.agreement'
  parameters:
    Filter:
      name: $filter
      in: query
      description: Filter items by property values
      style: form
      explode: false
      schema:
        type: string
    Top:
      name: $top
      in: query
      description: Show only the first n items
      style: form
      explode: false
      schema:
        minimum: 0
        type: integer
      example: 50
    Skip:
      name: $skip
      in: query
      description: Skip the first n items
      style: form
      explode: false
      schema:
        minimum: 0
        type: integer
    AgreementId:
      name: agreement-id
      in: path
      description: The unique identifier of the agreement
      required: true
      schema:
        type: string
      x-ms-docs-key-type: agreement
    Count:
      name: $count
      in: query
      description: Include count of items
      style: form
      explode: false
      schema:
        type: boolean
    Search:
      name: $search
      in: query
      description: Search items by search phrases
      style: form
      explode: false
      schema:
        type: string