Microsoft Entra ID (formerly Azure AD) · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Groups.group.Actions API

19 actions 19 updates phrasing extends openapi/azure-ad-groups-group-actions-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Microsoft Entra ID (formerly Azure AD)'s API. It is a proposal applied on top of the contract, not a document Microsoft Entra ID (formerly Azure AD) publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 19 · first 16 shown; the file carries all of them

$.info
$.paths['/groups/{group-id}/microsoft.graph.addFavorite'].post
$.paths['/groups/{group-id}/microsoft.graph.assignLicense'].post
$.paths['/groups/{group-id}/microsoft.graph.checkGrantedPermissionsForApp'].post
$.paths['/groups/{group-id}/microsoft.graph.checkMemberGroups'].post
$.paths['/groups/{group-id}/microsoft.graph.checkMemberObjects'].post
$.paths['/groups/{group-id}/microsoft.graph.getMemberGroups'].post
$.paths['/groups/{group-id}/microsoft.graph.getMemberObjects'].post
$.paths['/groups/{group-id}/microsoft.graph.removeFavorite'].post
$.paths['/groups/{group-id}/microsoft.graph.renew'].post
$.paths['/groups/{group-id}/microsoft.graph.resetUnseenCount'].post
$.paths['/groups/{group-id}/microsoft.graph.restore'].post
$.paths['/groups/{group-id}/microsoft.graph.retryServiceProvisioning'].post
$.paths['/groups/{group-id}/microsoft.graph.subscribeByMail'].post
$.paths['/groups/{group-id}/microsoft.graph.unsubscribeByMail'].post
$.paths['/groups/{group-id}/microsoft.graph.validateProperties'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Groups.group.Actions API
  version: 1.0.0
extends: openapi/azure-ad-groups-group-actions-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 18
- target: $.paths['/groups/{group-id}/microsoft.graph.addFavorite'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a group to my favorites
      effect: write
      questions:
      - How do I pin a Microsoft 365 group to my favorites so it shows up in Outlook and Teams?
      - Can I favorite a group on behalf of the signed-in user?
      instructions:
      - text: Add group {group} to my favorite groups.
        slots:
          group: path.group-id
      - text: Favorite the Microsoft 365 group {group} for me.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.assignLicense'].post
  update:
    x-apievangelist-phrasing:
      intent: Add or remove licenses on a group
      effect: write
      questions:
      - How do I give every member of a group a license using group-based licensing?
      - Can I remove a license from a group so its members lose it?
      - What happens to users in a group when I assign it a product license?
      instructions:
      - text: Assign licenses {addLicenses} to group {group}.
        slots:
          addLicenses: requestBody.addLicenses
          group: path.group-id
      - text: Remove licenses {removeLicenses} from group {group}.
        slots:
          removeLicenses: requestBody.removeLicenses
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.checkGrantedPermissionsForApp'].post
  update:
    x-apievangelist-phrasing:
      intent: Check app permissions granted on a group
      effect: read
      questions:
      - Which resource-specific permissions have apps been granted on this group?
      - Can I audit what an app is allowed to do inside a particular group?
      instructions:
      - text: Check the permissions granted to apps on group {group}.
        slots:
          group: path.group-id
      - text: Audit app permission grants for group {group}.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.checkMemberGroups'].post
  update:
    x-apievangelist-phrasing:
      intent: Check a group's membership in listed groups
      effect: read
      questions:
      - Is this group a member of any of the groups on my shortlist, including nested membership?
      - How many group IDs can I check membership against in a single call?
      instructions:
      - text: Check which of groups {groupIds} group {group} belongs to.
        slots:
          groupIds: requestBody.groupIds
          group: path.group-id
      - text: Tell me whether group {group} is transitively a member of {groupIds}.
        slots:
          group: path.group-id
          groupIds: requestBody.groupIds
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.checkMemberObjects'].post
  update:
    x-apievangelist-phrasing:
      intent: Check a group's membership in listed objects
      effect: read
      questions:
      - Can I test whether a group belongs to specific groups, administrative units or directory roles by ID?
      - Which of a list of directory object IDs does this group hold membership in?
      instructions:
      - text: Check which of the objects {ids} group {group} is a member of.
        slots:
          ids: requestBody.ids
          group: path.group-id
      - text: Verify group {group}'s membership against directory objects {ids}.
        slots:
          group: path.group-id
          ids: requestBody.ids
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.getMemberGroups'].post
  update:
    x-apievangelist-phrasing:
      intent: List every group a group belongs to
      effect: read
      questions:
      - What are all the groups this group is nested inside, directly or transitively?
      - Can I restrict the parent-group lookup to security-enabled groups only?
      instructions:
      - text: Get all group IDs that group {group} is a member of.
        slots:
          group: path.group-id
      - text: List the parent groups of {group} with security-enabled only set to {securityEnabledOnly}.
        slots:
          group: path.group-id
          securityEnabledOnly: requestBody.securityEnabledOnly
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.getMemberObjects'].post
  update:
    x-apievangelist-phrasing:
      intent: List groups, units and roles a group belongs to
      effect: read
      questions:
      - Which groups, administrative units and directory roles is this group a member of?
      - Does the member-objects lookup include administrative units as well as groups?
      instructions:
      - text: Get every group, administrative unit and directory role ID that group {group} belongs to.
        slots:
          group: path.group-id
      - text: List member objects of group {group}, security-enabled only {securityEnabledOnly}.
        slots:
          group: path.group-id
          securityEnabledOnly: requestBody.securityEnabledOnly
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.removeFavorite'].post
  update:
    x-apievangelist-phrasing:
      intent: Remove a group from my favorites
      effect: write
      questions:
      - How do I unpin a Microsoft 365 group from my favorites?
      - Can I take a group off the signed-in user's favorite list?
      instructions:
      - text: Remove group {group} from my favorite groups.
        slots:
          group: path.group-id
      - text: Unfavorite the Microsoft 365 group {group}.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.renew'].post
  update:
    x-apievangelist-phrasing:
      intent: Renew a group's expiration
      effect: write
      questions:
      - How do I keep a group from expiring under our group lifecycle policy?
      - When I renew a group, how long does its expiration get extended?
      instructions:
      - text: Renew group {group} so it doesn't expire.
        slots:
          group: path.group-id
      - text: Extend the expiration date of group {group}.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.resetUnseenCount'].post
  update:
    x-apievangelist-phrasing:
      intent: Mark all group posts as seen
      effect: write
      questions:
      - How do I clear the unread post count on a Microsoft 365 group for myself?
      - Can I reset the unseen count of a group's conversations?
      instructions:
      - text: Reset my unseen post count for group {group}.
        slots:
          group: path.group-id
      - text: Mark every post in group {group} as seen for me.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.restore'].post
  update:
    x-apievangelist-phrasing:
      intent: Restore a deleted group
      effect: write
      questions:
      - Can I bring back a group that was accidentally deleted?
      - How do I recover a recently deleted group from deleted items?
      instructions:
      - text: Restore deleted group {group}.
        slots:
          group: path.group-id
      - text: Recover group {group} from deleted items.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.retryServiceProvisioning'].post
  update:
    x-apievangelist-phrasing:
      intent: Retry provisioning services for a group
      effect: write
      questions:
      - What can I do when a group's service provisioning failed?
      - Is there a way to kick off group service provisioning again?
      instructions:
      - text: Retry service provisioning for group {group}.
        slots:
          group: path.group-id
      - text: Rerun the failed provisioning on group {group}.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.subscribeByMail'].post
  update:
    x-apievangelist-phrasing:
      intent: Subscribe to a group's email notifications
      effect: write
      questions:
      - How do I start getting emails about new posts, events and files in a Microsoft 365 group?
      - Can I follow a group in my inbox as the signed-in user?
      instructions:
      - text: Subscribe me to email notifications for group {group}.
        slots:
          group: path.group-id
      - text: Start sending me mail about new activity in group {group}.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.unsubscribeByMail'].post
  update:
    x-apievangelist-phrasing:
      intent: Unsubscribe from a group's email notifications
      effect: write
      questions:
      - How do I stop getting emails about a Microsoft 365 group's posts and events?
      - Can I unfollow a group in my inbox without leaving it?
      instructions:
      - text: Unsubscribe me from email notifications for group {group}.
        slots:
          group: path.group-id
      - text: Stop sending me mail about activity in group {group}.
        slots:
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/{group-id}/microsoft.graph.validateProperties'].post
  update:
    x-apievangelist-phrasing:
      intent: Validate a rename of an existing group
      effect: read
      questions:
      - Will renaming an existing Microsoft 365 group to a new display name break our naming policy?
      - Can I check a new mail nickname for a group I already have before updating it?
      instructions:
      - text: Check whether existing group {group} can be renamed to {displayName} under the naming policy.
        slots:
          group: path.group-id
          displayName: requestBody.displayName
      - text: Validate new mail nickname {mailNickname} for group {group} before I update it.
        slots:
          mailNickname: requestBody.mailNickname
          group: path.group-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/microsoft.graph.getAvailableExtensionProperties'].post
  update:
    x-apievangelist-phrasing:
      intent: List registered directory extension properties
      effect: read
      questions:
      - Which directory extension properties are registered in my tenant, including from multitenant apps?
      - Can I see only the extension properties that were synced from on-premises?
      instructions:
      - text: List all directory extension properties available in the tenant.
      - text: List extension properties with synced-from-on-premises set to {isSyncedFromOnPremises}.
        slots:
          isSyncedFromOnPremises: requestBody.isSyncedFromOnPremises
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/microsoft.graph.getByIds'].post
  update:
    x-apievangelist-phrasing:
      intent: Fetch directory objects by a list of IDs
      effect: read
      questions:
      - How can I resolve a batch of object IDs into users, groups and other directory objects in one call?
      - Can I limit an ID lookup to certain object types like groups or devices?
      instructions:
      - text: Get the directory objects with IDs {ids}.
        slots:
          ids: requestBody.ids
      - text: Resolve IDs {ids} restricted to types {types}.
        slots:
          ids: requestBody.ids
          types: requestBody.types
      method: generated
      generated: '2026-10-01'
- target: $.paths['/groups/microsoft.graph.validateProperties'].post
  update:
    x-apievangelist-phrasing:
      intent: Check a new group's name against naming policy
      effect: read
      questions:
      - Before I create a Microsoft 365 group, will its display name pass our prefix, suffix and banned-word rules?
      - Is a mail nickname already taken or blocked for a group that doesn't exist yet?
      instructions:
      - text: Check whether a new group named {displayName} would comply with the naming policy before I create it.
        slots:
          displayName: requestBody.displayName
      - text: Validate proposed mail nickname {mailNickname} for a group I'm about to create on behalf of user {user}.
        slots:
          mailNickname: requestBody.mailNickname
          user: requestBody.onBehalfOfUserId
      method: generated
      generated: '2026-10-01'