要更新App Store Connect API用户,您可以使用以下代码示例:
import requests
import json
# API密钥信息
key_id = 'YOUR_KEY_ID'
issuer_id = 'YOUR_ISSUER_ID'
private_key_path = 'YOUR_PRIVATE_KEY_PATH'
# 生成JWT令牌
headers = {
'alg': 'ES256',
'kid': key_id,
'typ': 'JWT'
}
payload = {
'iss': issuer_id,
'exp': datetime.datetime.now() + datetime.timedelta(hours=1),
'aud': 'appstoreconnect-v1'
}
private_key = open(private_key_path).read()
jwt = jwt.encode(payload, private_key, algorithm='ES256', headers=headers)
# 使用JWT令牌进行身份验证
auth_url = 'https://appleid.apple.com/auth/oauth2/token'
data = {
'grant_type': 'client_credentials',
'client_id': issuer_id,
'client_secret': jwt,
'scope': 'appstoreconnect://developer.apple.com/api/appstoreconnect/v1'
}
response = requests.post(auth_url, data=data)
access_token = json.loads(response.text)['access_token']
# 更新用户信息
user_id = 'USER_ID_TO_UPDATE'
update_url = f'https://api.appstoreconnect.apple.com/v1/users/{user_id}'
headers = {
'Authorization': f'Bearer {access_token}',
'Content-Type': 'application/json'
}
# 更新用户信息的请求体
update_payload = {
'data': {
'type': 'users',
'attributes': {
'firstName': 'NEW_FIRST_NAME',
'lastName': 'NEW_LAST_NAME',
'email': 'NEW_EMAIL',
'roles': ['NEW_ROLE_1', 'NEW_ROLE_2']
}
}
}
response = requests.patch(update_url, headers=headers, json=update_payload)
请确保将YOUR_KEY_ID
,YOUR_ISSUER_ID
,YOUR_PRIVATE_KEY_PATH
,USER_ID_TO_UPDATE
,NEW_FIRST_NAME
,NEW_LAST_NAME
,NEW_EMAIL
,NEW_ROLE_1
和NEW_ROLE_2
替换为实际的值。
这是一个使用Python进行App Store Connect API用户更新的示例。您可以根据自己的需要进行必要的修改和调整。