microsoftgraph / microsoftgraph/msgraph-metadata

Groups: M365 specific fields return 404 when included in a `$select` query on non-M365 tenants

Open
#333 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area: GraphService
Dominant language
XSLT
Stars
166
Forks
55
Avg merge
16h 12m
Merged PRs (30d)
14

Description

Affected fields includes, but might not be limited to:

  • allowExternalSenders
  • autoSubscribeNewMembers
  • hideFromAddressLists
  • hideFromOutlookClients

Specifying these affected fields in a $select OData query, in a non-O365 or non-M365 tenant, results in a 404 response. This isn't even the case when nonexistent field names are specified in a $select query.

Non-Microsoft 365 tenant
GET /beta/groups/97631aed-d4f9-4f46-ac29-90d4c90fb5b9?%24select=allowExternalSenders%2CautoSubscribeNewMembers%2ChideFromAddressLists%2ChideFromOutlookClients HTTP/1.1
Host: graph.microsoft.com
Accept: application/json; charset=utf-8; IEEE754Compatible=false
Content-Type: application/json; charset=utf-8
Odata-Maxversion: 4.0
Odata-Version: 4.0
Accept-Encoding: gzip
HTTP/1.1 404 Not Found
Cache-Control: private
Transfer-Encoding: chunked
Content-Type: application/json
Content-Encoding: gzip
Vary: Accept-Encoding
Strict-Transport-Security: max-age=31536000
request-id: 32fbaaa7-1193-41fa-a42b-83f8c9b6d27c
client-request-id: 32fbaaa7-1193-41fa-a42b-83f8c9b6d27c
x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"UK South","Slice":"E","Ring":"3","ScaleUnit":"000","RoleInstance":"LN2PEPF00003303"}}
Date: Wed, 19 Apr 2023 20:56:25 GMT

{
  "error": {
    "code": "ErrorInvalidGroup",
    "message": "The requested group '97631aed-d4f9-4f46-ac29-90d4c90fb5b9@26e25406-6564-4a26-98ee-c71ba03235ad' is invalid.",
    "innerError": {
      "date": "2023-04-19T20:56:25",
      "request-id": "32fbaaa7-1193-41fa-a42b-83f8c9b6d27c",
      "client-request-id": "32fbaaa7-1193-41fa-a42b-83f8c9b6d27c"
    }
  }
}
Microsoft 365 tenant
GET /beta/groups/b7244929-1dfe-464f-9eb2-5a0cf7c236d4?%24select=allowExternalSenders%2CautoSubscribeNewMembers%2ChideFromAddressLists%2ChideFromOutlookClients HTTP/1.1
Host: graph.microsoft.com
Accept: application/json; charset=utf-8; IEEE754Compatible=false
Content-Type: application/json; charset=utf-8
Odata-Maxversion: 4.0
Odata-Version: 4.0
Accept-Encoding: gzip
HTTP/1.1 200 OK
Cache-Control: private
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: 26d162e9-bd08-4255-bc1c-37496692ff69
client-request-id: 26d162e9-bd08-4255-bc1c-37496692ff69
x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"UK South","Slice":"E","Ring":"3","ScaleUnit":"000","RoleInstance":"LN2PEPF0000669C"}}
OData-Version: 4.0
Date: Wed, 19 Apr 2023 20:51:59 GMT

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#groups(allowExternalSenders,autoSubscribeNewMembers,hideFromAddressLists,hideFromOutlookClients)/$entity",
  "id": "b7244929-1dfe-464f-9eb2-5a0cf7c236d4",
  "allowExternalSenders": false,
  "autoSubscribeNewMembers": false,
  "hideFromOutlookClients": false,
  "hideFromAddressLists": false
}

This difference in behavior between different tenant SKUs, exposed in this way (e.g. a 404 response) makes it really difficult to determine the potential value of these fields, without knowing in advance the SKU of the tenant being queried.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the documented GET /beta/groups/{id}?$select requests for the four affected fields against Microsoft 365 and non-Microsoft 365 tenants. No repository file or test is named; done would mean determining a repository change or metadata adjustment that prevents a valid non-M365 query from returning 404, or documenting the required tenant-specific behavior.

Written by the indexing model from the issue text.

Assessment

Domain
api
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.