Skip to content

ODP: The 'new' Microsoft OneDrive Personal backend fails to conform to RFC 7538 for 308 response codes #1895

Open
@abraunegg

Description

@abraunegg

Category

  • Question
  • Documentation issue
  • Bug

Expected or Desired Behavior

@patrick-rodgers , @rgregg-msft , @chackman , @rgregg , @ificator

The Microsoft Graph API should not be responding with a 308 response code for a PATCH event to renew a subscription

If the Microsoft Graph API must respond with a 308 response code for a PATCH event to renew a subscription, then the requirement is to actually include a Location of where to send the client based on a 308 Permanent Redirect.

Observed Behavior

@patrick-rodgers , @rgregg-msft , @chackman , @rgregg , @ificator

Microsoft Graph API fails to send any Location: header information when responding with a 308 response code

DEBUG: OneDrive API Webhook: handled validation request
< HTTP/2 308 
< cache-control: no-cache
< strict-transport-security: max-age=31536000
< request-id: 56afacb6-e914-4832-bade-b75e67a6fa9c
< client-request-id: 56afacb6-e914-4832-bade-b75e67a6fa9c
< x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"West Europe","Slice":"E","Ring":"5","ScaleUnit":"005","RoleInstance":"AM4PEPF0002AB4C"}}
< date: Tue, 25 Mar 2025 09:16:27 GMT
< content-length: 0
< 
* Connection #0 to host graph.microsoft.com left intact
DEBUG: HTTP Response Headers: ["strict-transport-security":"max-age=31536000", "x-ms-ags-diagnostic":"{\"ServerInfo\":{\"DataCenter\":\"West Europe\",\"Slice\":\"E\",\"Ring\":\"5\",\"ScaleUnit\":\"005\",\"RoleInstance\":\"AM4PEPF0002AB4C\"}}", "date":"Tue, 25 Mar 2025 09:16:27 GMT", "client-request-id":"56afacb6-e914-4832-bade-b75e67a6fa9c", "content-length":"0", "request-id":"56afacb6-e914-4832-bade-b75e67a6fa9c", "cache-control":"no-cache"]
DEBUG: HTTP Status Line: 308  (2.0)
DEBUG: CurlEngine cleanup() called on instance id: 5kG8LIg6QvRr7WUK
DEBUG: Microsoft Graph API Response: 
DEBUG: Handling a OneDrive API exception:
DEBUG: Curl debugging: 
< patch https://graph.microsoft.com/v1.0/subscriptions/920c9624-678f-4d40-9ebd-24bc067a5e90
< Content-Type: application/json

----
{"expirationDateTime":"2025-03-25T09:21:27.2788768Z"}
----
< 308  (2.0)
> strict-transport-security: max-age=31536000
> x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"West Europe","Slice":"E","Ring":"5","ScaleUnit":"005","RoleInstance":"AM4PEPF0002AB4C"}}
> date: Tue, 25 Mar 2025 09:16:27 GMT
> client-request-id: 56afacb6-e914-4832-bade-b75e67a6fa9c
> content-length: 0
> request-id: 56afacb6-e914-4832-bade-b75e67a6fa9c
> cache-control: no-cache
Curl response: 

If the subscription cannot be renewed, Microsoft Graph is supposed to return a 4xx or 5xx code, such as 400 Bad Request or 404 Not Found — not a 308.

Steps to Reproduce

@patrick-rodgers , @rgregg-msft , @chackman , @rgregg , @ificator

Unknown steps to reproduce.

I have detailed debug logs that can be provided. Please contact me.

[ ]: http://aka.ms/onedrive-api-issues
[x]: http://aka.ms/onedrive-api-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions