mojira.dev
WEB-5779

Entitlements get deleted every 24 hours on Xbox Gamepass account

After initially purchasing an Xbox Gamepass account the profile endpoint returns the following (as expected):

{
    "id": "70a4ba471f4d40f687840cb3997ca9d8",
    "name": "ehmehmehm",
    "skins": [
        {
            "id": "6a963734-a6bb-459c-8047-356100689992",
            "state": "ACTIVE",
            "url": "http://textures.minecraft.net/texture/ca93f6fc40488f1877cda94a830b54e9f6f54ab58a5453bad5c947726dd1f473",
            "variant": "SLIM"
        }
    ],
    "capes": [
    ]
}

The API also shows I have the proper entitlements (also as expected):

{
    "items": [
        {
            "name": "product_minecraft",
            "signature": "***"
        },
        {
            "name": "game_minecraft",
            "signature": "***"
        }
    ],
    "signature": "***",
    "keyId": "1"
}

ISSUE:

But after 24 hours, the API thinks I do not own the game and therefore do not have a profile

{
    "path": "/minecraft/profile/",
    "errorType": "NOT_FOUND",
    "error": "NOT_FOUND",
    "errorMessage": "The server has not found anything matching the request URI",
    "developerMessage": "The server has not found anything matching the request URI"
}

This deletion is confirmed by the entitlements endpoint, which this time returns empty entitlements:

{
    "items": [
    ],
    "signature": "***",
    "keyId": "1"
}

Obviously this is not intended, and has let to many people having a "Play Demo" button appear on their launcher when they clearly have an active Gamepass subscription. It has also lead to a lot of errors when trying to connect to servers which are often hard to diagnose by most players. The only way to remind the API that you actually own the game is by checking the license endpoint:

{
    "items": [
        {
            "name": "product_dungeons",
            "source": "GAMEPASS"
        },
        {
            "name": "game_dungeons",
            "source": "GAMEPASS"
        },
        {
            "name": "product_minecraft_bedrock",
            "source": "GAMEPASS"
        },
        {
            "name": "game_minecraft_bedrock",
            "source": "GAMEPASS"
        },
        {
            "name": "product_minecraft",
            "source": "GAMEPASS"
        },
        {
            "name": "game_minecraft",
            "source": "GAMEPASS"
        }
    ],
    "signature": "***",
    "keyId": "1",
    "requestId": "1"
}

After calling this endpoint, the profile and entitlements suddenly reappear and I can play on my account again. The only way for people without API knowledge to make their profile reappear is to log into minecraft.net, as it checks the license endpoint for you.

It's incredibly annoying to deal with because it happens every 24 hours.

Comments 2

We are aware of this and we are working on a better solution for this. Note also that the Minecraft Launcher also uses the license endpoint and refreshes these.

Thank you for your report!

However, this issue has been temporarily closed as Awaiting Response.

Could you please confirm if the reported issue still occurs for you?

This ticket will automatically reopen when you reply.

Quick Links:
📓 Issue Guidelines – 💬 Mojang Support – 📓 Project Summary – 📧 Suggestions – 📖 Minecraft Wiki

Bob

Robert Sjödahl

API

Retrieved