Why doesn't my API Key always give this error?

I have this python script

import requests

# 1. Use your new, private API Key
API_KEY = "MY_API_KEY"

# 2. The base URL (Do NOT put the Asset ID in the URL)
url = "https://apis.roblox.com/asset-permissions-api/v1/assets/permissions"

payload = {
    "requests": [
        {
            "assetId": "123776599483888", 
            "subject": {
                "subjectType": "Universe", 
                "subjectId": "9895063794" 
            },
            "action": "Use"
        }
    ]
}

headers = {
    "x-api-key": API_KEY,
    "Content-Type": "application/json"
}

# Sending the request
response = requests.patch(url, headers=headers, json=payload)

print(f"Status Code: {response.status_code}")
print(f"Response: {response.text}")

It always gives me this error

Any Idea why does that happen?

I own the asset by the way and I have this settings

Could anybody help me out,I’m trying to learn this.

It might help if you add information about the error you are seeing here!

At a glance the request payload you are sending doesn’t have the right format compared to the documentation page: https://create.roblox.com/docs/cloud/reference/features/assets#patch_asset_permissions_api_v1_assets_permissions

When I give out true to Python It says change it with True but even I do it gives me continous error

Nevermind It gives this new error.

Response: {“error”:{“code”:“InvalidRequest”,“message”:“Invalid SubjectType is invalid.”}}

import requests

# 1. Use your new, private API Key
API_KEY = "MY_API_KEY_HERE"

# 2. The base URL (Do NOT put the Asset ID in the URL)
url = "https://apis.roblox.com/asset-permissions-api/v1/assets/permissions"

payload = {
  "subjectType": "Invalid",
  "subjectId": "string",
  "action": "Invalid",
  "requests": [
    {
      "assetId": 123776599483888,
      "grantToDependencies": True,
      "parentVersionNumber": 0
    }
  ],
  "enableDeepAccessCheck": True
}

headers = {
    "x-api-key": API_KEY,
    "Content-Type": "application/json"
}

# Sending the request
response = requests.patch(url, headers=headers, json=payload)

print(f"Status Code: {response.status_code}")
print(f"Response: {response.text}")

I did this now but what

import requests

# 1. Use your new, private API Key
API_KEY = "MY_API_KEY_HERE"

# 2. The base URL (Do NOT put the Asset ID in the URL)
url = "https://apis.roblox.com/asset-permissions-api/v1/assets/permissions"

payload = {
  "subjectType": "Universe",
  "subjectId": "string",
  "action": "Use",
  "requests": [
    {
      "assetId": 123776599483888,
      "grantToDependencies": True,
      "parentVersionNumber": 0
    }
  ],
  "enableDeepAccessCheck": True
}

headers = {
    "x-api-key": API_KEY,
    "Content-Type": "application/json"
}

# Sending the request
response = requests.patch(url, headers=headers, json=payload)

print(f"Status Code: {response.status_code}")
print(f"Response: {response.text}")

Nevermind,I didn’t It gives me permission error.

Response: {“error”:{“code”:“CannotManageSubject”,“message”:“Requester cannot manage permissions for the subject Universe 9895063794.”}}

Okay It gave me this Response

Response: {“successAssetIds”:[123776599483888],“errors”:}

for Universe I own,How can I prove it that I granted access to my universe

What It gave me as response is this..

Also how can I give permission to universes my asset which is not created by me?

Any Idea on why,I need support.