APIからRealmを追加

Env Keycloak: 11.0.3

Get token

def get_token():
    url = f"{BASE_URL}/auth/realms/master/protocol/openid-connect/token"

    realm = "your-realm"
    username = "your-admin-user-name"
    password = "your-admin-password"
    client_id = "client-id"
    payload=f'client_secret={realm}&username={username}&password={password}&grant_type=password&client_id={client_id}'
    headers = {
        'Content-Type': 'application/x-www-form-urlencoded'
    }

    response = requests.request("POST", url, headers=headers, data=payload)
    return response.json()['access_token']

Create realm

def create_new_realm(id, realm, token):
    payload = { "id": id, "realm" : realm, "enabled" : True }
    url = f"{BASE_URL}/auth/admin/realms"
    headers = {
        'Authorization': 'Bearer ' + token,
        'Content-Type': 'application/json'
    }
    print(payload)
    response = requests.request("POST", url, headers=headers, data= json.dumps( payload))
    print(response)