microsoftgraph / microsoftgraph/msgraph-metadata
Creating a new unified group causes a `description` to be added out of band
Nobody has claimed this yet.
- Dominant language
- XSLT
- Stars
- 166
- Forks
- 55
- Avg merge
- 16h 12m
- Merged PRs (30d)
- 14
Description
When creating an M365 (unified) group, if the newly created group has a null description, some out of band process later updates the description field to match the displayName field. This is nonintuitive and creates inconsistency since this is no longer the same specification group that was created.
For example, creating a group with the following request:
POST /beta/groups HTTP/1.1
Host: graph.microsoft.com
Content-Length: 483
Accept: application/json; charset=utf-8; IEEE754Compatible=false; odata.metadata=full
Content-Type: application/json; charset=utf-8
Odata-Maxversion: 4.0
Odata-Version: 4.0
Accept-Encoding: gzip
{
"@odata.type": "#microsoft.graph.group",
"description": null,
"displayName": "acctestGroup-230419213924095042",
"groupTypes": [
"Unified"
],
"isAssignableToRole": false,
"mailEnabled": true,
"mailNickname": "acctestGroup-230419213924095042",
"membershipRule": null,
"owners@odata.bind": [
"https://graph.microsoft.com/v1.0/6df54acb-f3cd-4734-85e3-7511ade57a02/directoryObjects/a3b9b7d5-a561-474d-a6f4-68ef68231415"
],
"resourceBehaviorOptions": [],
"resourceProvisioningOptions": [],
"securityEnabled": false
}
returns the following 201 response:
HTTP/1.1 201 Created
Cache-Control: no-cache
Transfer-Encoding: chunked
Content-Type: application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=false;charset=utf-8
Content-Encoding: gzip
Location: https://graph.microsoft.com/v2/6df54acb-f3cd-4734-85e3-7511ade57a02/directoryObjects/6aa4f19b-4f96-46bb-84c2-3aa2da139549/Microsoft.DirectoryServices.Group
Vary: Accept-Encoding
Strict-Transport-Security: max-age=31536000
request-id: cac6b43f-7492-4e30-994f-6635a5278a06
client-request-id: cac6b43f-7492-4e30-994f-6635a5278a06
x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"UK South","Slice":"E","Ring":"3","ScaleUnit":"002","RoleInstance":"LO1PEPF0000065D"}}
x-ms-resource-unit: 1
OData-Version: 4.0
Date: Wed, 19 Apr 2023 20:39:27 GMT
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#groups/$entity",
"@odata.type": "#microsoft.graph.group",
"@odata.id": "groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')",
"@odata.editLink": "groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')",
"id": "6aa4f19b-4f96-46bb-84c2-3aa2da139549",
"deletedDateTime": null,
"classification": null,
"createdDateTime@odata.type": "#DateTimeOffset",
"createdDateTime": "2023-04-19T20:39:28Z",
"createdByAppId": "c072182f-ead2-4e94-aa7f-a5975558c945",
"organizationId": "6df54acb-f3cd-4734-85e3-7511ade57a02",
"description": null,
"displayName": "acctestGroup-230419213924095042",
"expirationDateTime": null,
"groupTypes@odata.type": "#Collection(String)",
"groupTypes": [
"Unified"
],
"infoCatalogs@odata.type": "#Collection(String)",
"infoCatalogs": [],
"isAssignableToRole": false,
"isManagementRestricted": null,
"mail": "acctestGroup-230419213924095042@hamiltontesting2.onmicrosoft.com",
"mailEnabled": true,
"mailNickname": "acctestGroup-230419213924095042",
"membershipRule": null,
"membershipRuleProcessingState": null,
"onPremisesDomainName": null,
"onPremisesLastSyncDateTime": null,
"onPremisesNetBiosName": null,
"onPremisesSamAccountName": null,
"onPremisesSecurityIdentifier": null,
"onPremisesSyncEnabled": null,
"preferredDataLocation": null,
"preferredLanguage": null,
"proxyAddresses@odata.type": "#Collection(String)",
"proxyAddresses": [
"SMTP:acctestGroup-230419213924095042@hamiltontesting2.onmicrosoft.com"
],
"renewedDateTime@odata.type": "#DateTimeOffset",
"renewedDateTime": "2023-04-19T20:39:28Z",
"resourceBehaviorOptions@odata.type": "#Collection(String)",
"resourceBehaviorOptions": [],
"resourceProvisioningOptions@odata.type": "#Collection(String)",
"resourceProvisioningOptions": [],
"securityEnabled": false,
"securityIdentifier": "S-1-12-1-1789194651-1186680726-2721759876-1234506714",
"theme": null,
"visibility": "Public",
"wellKnownObject": null,
"onPremisesProvisioningErrors@odata.type": "#Collection(microsoft.graph.onPremisesProvisioningError)",
"onPremisesProvisioningErrors": [],
"serviceProvisioningErrors@odata.type": "#Collection(microsoft.graph.serviceProvisioningError)",
"serviceProvisioningErrors": [],
"writebackConfiguration": {
"@odata.type": "#microsoft.graph.groupWritebackConfiguration",
"isEnabled": null,
"onPremisesGroupType": null
},
"appRoleAssignments@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/appRoleAssignments/$ref",
"appRoleAssignments@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/appRoleAssignments",
"createdOnBehalfOf@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/createdOnBehalfOf/$ref",
"createdOnBehalfOf@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/createdOnBehalfOf",
"endpoints@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/endpoints/$ref",
"endpoints@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/endpoints",
"memberOf@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/memberOf/$ref",
"memberOf@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/memberOf",
"members@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/members/$ref",
"members@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/members",
"membersWithLicenseErrors@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/membersWithLicenseErrors/$ref",
"membersWithLicenseErrors@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/membersWithLicenseErrors",
"owners@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/owners/$ref",
"owners@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/owners",
"permissionGrants@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/permissionGrants/$ref",
"permissionGrants@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/permissionGrants",
"settings@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/settings/$ref",
"settings@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/settings",
"transitiveMemberOf@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/transitiveMemberOf/$ref",
"transitiveMemberOf@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/transitiveMemberOf",
"transitiveMembers@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/transitiveMembers/$ref",
"transitiveMembers@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/transitiveMembers",
"acceptedSenders@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/acceptedSenders/$ref",
"acceptedSenders@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/acceptedSenders",
"calendar@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/calendar/$ref",
"calendar@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/calendar",
"calendarView@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/calendarView/$ref",
"calendarView@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/calendarView",
"conversations@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/conversations/$ref",
"conversations@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/conversations",
"events@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/events/$ref",
"events@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/events",
"rejectedSenders@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/rejectedSenders/$ref",
"rejectedSenders@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/rejectedSenders",
"threads@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/threads/$ref",
"threads@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/threads",
"drive@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/drive/$ref",
"drive@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/drive",
"drives@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/drives/$ref",
"drives@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/drives",
"sites@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/sites/$ref",
"sites@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/sites",
"extensions@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/extensions/$ref",
"extensions@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/extensions",
"groupLifecyclePolicies@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/groupLifecyclePolicies/$ref",
"groupLifecyclePolicies@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/groupLifecyclePolicies",
"planner@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/planner/$ref",
"planner@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/planner",
"onenote@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/onenote/$ref",
"onenote@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/onenote",
"photo@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/photo/$ref",
"photo@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/photo",
"photos@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/photos/$ref",
"photos@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/photos",
"team@odata.associationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/team/$ref",
"team@odata.navigationLink": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/team",
"#microsoft.graph.assignLicense": {
"title": "microsoft.graph.assignLicense",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.assignLicense"
},
"#microsoft.graph.checkGrantedPermissionsForApp": {
"title": "microsoft.graph.checkGrantedPermissionsForApp",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.checkGrantedPermissionsForApp"
},
"#microsoft.graph.retryServiceProvisioning": {
"title": "microsoft.graph.retryServiceProvisioning",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.retryServiceProvisioning"
},
"#microsoft.graph.validateProperties": {
"title": "microsoft.graph.validateProperties",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.validateProperties"
},
"#microsoft.graph.addFavorite": {
"title": "microsoft.graph.addFavorite",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.addFavorite"
},
"#microsoft.graph.removeFavorite": {
"title": "microsoft.graph.removeFavorite",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.removeFavorite"
},
"#microsoft.graph.resetUnseenCount": {
"title": "microsoft.graph.resetUnseenCount",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.resetUnseenCount"
},
"#microsoft.graph.subscribeByMail": {
"title": "microsoft.graph.subscribeByMail",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.subscribeByMail"
},
"#microsoft.graph.unsubscribeByMail": {
"title": "microsoft.graph.unsubscribeByMail",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.unsubscribeByMail"
},
"#microsoft.graph.evaluateDynamicMembership": {
"title": "microsoft.graph.evaluateDynamicMembership",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.evaluateDynamicMembership"
},
"#microsoft.graph.renew": {
"title": "microsoft.graph.renew",
"target": "https://graph.microsoft.com/beta/groups('6aa4f19b-4f96-46bb-84c2-3aa2da139549')/microsoft.graph.renew"
}
}
and then retrieving the group again via GET /v1.0/groups/6aa4f19b-4f96-46bb-84c2-3aa2da139549 returns the following 200 response:
HTTP/1.1 200 OK
Cache-Control: no-cache
Transfer-Encoding: chunked
Content-Type: application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8
Content-Encoding: gzip
Vary: Accept-Encoding
Strict-Transport-Security: max-age=31536000
request-id: a205bc56-6d4e-4fb3-82d4-4cfab6bb3437
client-request-id: a205bc56-6d4e-4fb3-82d4-4cfab6bb3437
x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"UK South","Slice":"E","Ring":"3","ScaleUnit":"002","RoleInstance":"LO1PEPF0000065D"}}
x-ms-resource-unit: 1
OData-Version: 4.0
Date: Wed, 19 Apr 2023 20:39:28 GMT
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#groups/$entity",
"id": "6aa4f19b-4f96-46bb-84c2-3aa2da139549",
"deletedDateTime": null,
"classification": null,
"createdDateTime": "2023-04-19T20:39:28Z",
"createdByAppId": "c072182f-ead2-4e94-aa7f-a5975558c945",
"organizationId": "6df54acb-f3cd-4734-85e3-7511ade57a02",
"description": null,
"displayName": "acctestGroup-230419213924095042",
"expirationDateTime": null,
"groupTypes": [
"Unified"
],
"infoCatalogs": [],
"isAssignableToRole": false,
"isManagementRestricted": null,
"mail": "acctestGroup-230419213924095042@hamiltontesting2.onmicrosoft.com",
"mailEnabled": true,
"mailNickname": "acctestGroup-230419213924095042",
"membershipRule": null,
"membershipRuleProcessingState": null,
"onPremisesDomainName": null,
"onPremisesLastSyncDateTime": null,
"onPremisesNetBiosName": null,
"onPremisesSamAccountName": null,
"onPremisesSecurityIdentifier": null,
"onPremisesSyncEnabled": null,
"preferredDataLocation": null,
"preferredLanguage": null,
"proxyAddresses": [
"SMTP:acctestGroup-230419213924095042@hamiltontesting2.onmicrosoft.com"
],
"renewedDateTime": "2023-04-19T20:39:28Z",
"resourceBehaviorOptions": [],
"resourceProvisioningOptions": [],
"securityEnabled": false,
"securityIdentifier": "S-1-12-1-1789194651-1186680726-2721759876-1234506714",
"theme": null,
"visibility": "Public",
"wellKnownObject": null,
"onPremisesProvisioningErrors": [],
"serviceProvisioningErrors": [],
"writebackConfiguration": {
"isEnabled": null,
"onPremisesGroupType": null
}
}
However, around 11 second later, retrieving the group again returns the following:
HTTP/1.1 200 OK
Cache-Control: no-cache
Transfer-Encoding: chunked
Content-Type: application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8
Content-Encoding: gzip
Vary: Accept-Encoding
Strict-Transport-Security: max-age=31536000
request-id: 507d9fd4-234a-48fa-919b-55cd3ea347b1
client-request-id: 507d9fd4-234a-48fa-919b-55cd3ea347b1
x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"UK South","Slice":"E","Ring":"3","ScaleUnit":"002","RoleInstance":"LO1PEPF0000065D"}}
x-ms-resource-unit: 1
OData-Version: 4.0
Date: Wed, 19 Apr 2023 20:39:38 GMT
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#groups/$entity",
"id": "6aa4f19b-4f96-46bb-84c2-3aa2da139549",
"deletedDateTime": null,
"classification": null,
"createdDateTime": "2023-04-19T20:39:28Z",
"createdByAppId": "c072182f-ead2-4e94-aa7f-a5975558c945",
"organizationId": "6df54acb-f3cd-4734-85e3-7511ade57a02",
"description": "acctestGroup-230419213924095042",
"displayName": "acctestGroup-230419213924095042",
"expirationDateTime": null,
"groupTypes": [
"Unified"
],
"infoCatalogs": [],
"isAssignableToRole": false,
"isManagementRestricted": null,
"mail": "acctestGroup-230419213924095042@hamiltontesting2.onmicrosoft.com",
"mailEnabled": true,
"mailNickname": "acctestGroup-230419213924095042",
"membershipRule": null,
"membershipRuleProcessingState": null,
"onPremisesDomainName": null,
"onPremisesLastSyncDateTime": null,
"onPremisesNetBiosName": null,
"onPremisesSamAccountName": null,
"onPremisesSecurityIdentifier": null,
"onPremisesSyncEnabled": null,
"preferredDataLocation": null,
"preferredLanguage": null,
"proxyAddresses": [
"SMTP:acctestGroup-230419213924095042@hamiltontesting2.onmicrosoft.com"
],
"renewedDateTime": "2023-04-19T20:39:28Z",
"resourceBehaviorOptions": [],
"resourceProvisioningOptions": [],
"securityEnabled": false,
"securityIdentifier": "S-1-12-1-1789194651-1186680726-2721759876-1234506714",
"theme": null,
"visibility": "Public",
"wellKnownObject": null,
"onPremisesProvisioningErrors": [],
"serviceProvisioningErrors": [],
"writebackConfiguration": {
"isEnabled": null,
"onPremisesGroupType": null
}
}
Note that the description field has seemingly updated for no reason, and must now be unset in the case that you don't want a group description.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing how Microsoft Graph metadata for groups is captured and then used to generate client library code files. Reproduce the unified-group creation request with a null description and compare the immediate response with the later group state; done means the out-of-band description change is explained or the responsible metadata behavior is addressed.
Written by the indexing model from the issue text.
Assessment
- Domain
- api
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100