# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Identity.DirectoryManagement Contracts.contract.Actions API version: 1.0.0 extends: openapi/azure-ad-contracts-contract-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: 8 - target: $.paths['/contracts/{contract-id}/microsoft.graph.checkMemberGroups'].post update: x-apievangelist-phrasing: intent: Check a partner contract's membership in given groups effect: read questions: - Which of a list of groups does a partner contract object belong to? - Can I test a contract directory object against specific group IDs? instructions: - text: Check whether contract {contract_id} is in any of the groups {group_ids}. slots: contract_id: path.contract-id group_ids: requestBody.groupIds - text: Tell me which of {group_ids} include partner contract {contract_id}. slots: contract_id: path.contract-id group_ids: requestBody.groupIds method: generated generated: '2026-10-01' - target: $.paths['/contracts/{contract-id}/microsoft.graph.checkMemberObjects'].post update: x-apievangelist-phrasing: intent: Check a partner contract against directory object IDs effect: read questions: - Is a partner contract a member of certain groups, admin units or roles by ID? - Can I check a contract's memberships against a mixed list of object IDs? instructions: - text: Check contract {contract_id} for membership in objects {ids}. slots: contract_id: path.contract-id ids: requestBody.ids - text: Run checkMemberObjects for partner contract {contract_id}. slots: contract_id: path.contract-id method: generated generated: '2026-10-01' - target: $.paths['/contracts/{contract-id}/microsoft.graph.getMemberGroups'].post update: x-apievangelist-phrasing: intent: List all groups a partner contract belongs to effect: read questions: - What groups is a partner contract object a member of? - Can I return only security groups for a contract object? instructions: - text: Get every group ID that contract {contract_id} belongs to. slots: contract_id: path.contract-id - text: List groups for contract {contract_id} with security-enabled only {security_only}. slots: contract_id: path.contract-id security_only: requestBody.securityEnabledOnly method: generated generated: '2026-10-01' - target: $.paths['/contracts/{contract-id}/microsoft.graph.getMemberObjects'].post update: x-apievangelist-phrasing: intent: List groups, admin units and roles of a contract effect: read questions: - Which groups, administrative units and directory roles include a partner contract? - Can I get a contract's full membership list, not just its groups? instructions: - text: Get member objects of contract {contract_id}, including admin units and roles. slots: contract_id: path.contract-id - text: List all memberships of partner contract {contract_id} with security-enabled only {security_only}. slots: contract_id: path.contract-id security_only: requestBody.securityEnabledOnly method: generated generated: '2026-10-01' - target: $.paths['/contracts/{contract-id}/microsoft.graph.restore'].post update: x-apievangelist-phrasing: intent: Restore a deleted partner contract effect: write questions: - How do I recover a partner contract object that was deleted? - Can I undelete a contract by its object ID? instructions: - text: Restore contract {contract_id} from deleted items. slots: contract_id: path.contract-id - text: Undelete partner contract {contract_id}. slots: contract_id: path.contract-id method: generated generated: '2026-10-01' - target: $.paths['/contracts/microsoft.graph.getAvailableExtensionProperties'].post update: x-apievangelist-phrasing: intent: List registered directory extension properties effect: read questions: - What directory extension attributes are registered in my tenant, including by multitenant apps? - Can I list only the extension properties synced from on-premises? instructions: - text: List all available directory extension properties. - text: Get extension definitions where synced from on-premises is {synced}. slots: synced: requestBody.isSyncedFromOnPremises method: generated generated: '2026-10-01' - target: $.paths['/contracts/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 to contracts, users or groups in one request? - Can I restrict an ID lookup to certain object types? instructions: - text: Look up the directory objects with IDs {ids}. slots: ids: requestBody.ids - text: Resolve IDs {ids} returning only types {types}. slots: ids: requestBody.ids types: requestBody.types method: generated generated: '2026-10-01' - target: $.paths['/contracts/microsoft.graph.validateProperties'].post update: x-apievangelist-phrasing: intent: Check a group name against naming policy effect: read questions: - Will a Microsoft 365 group display name pass my tenant's naming policy? - Can I check a mail nickname for blocked words before creating the group? instructions: - text: Validate display name {display_name} and mail nickname {nickname}. slots: display_name: requestBody.displayName nickname: requestBody.mailNickname - text: Check {display_name} against naming policy on behalf of user {user_id}. slots: display_name: requestBody.displayName user_id: requestBody.onBehalfOfUserId method: generated generated: '2026-10-01'