Bir hizmet hesabı kullanmak yerine, OAuth client ID
kimlik bilgilerini kullanarak yeni kullanıcı izinleri ekleme ihtiyacını ortadan kaldırabilirsiniz (bu konudaki en iyi yanıtlara göre) .
Git API kimlik bilgileri pano ve "kimlik oluşturma" tıklayın -> "OAuth istemci kimliği". Daha sonra, API'yi doğrulamak için ihtiyaç duyacağınız bir istemci kimliği ve bir istemci sırrı almalısınız.
Artık kullanım OAuth2WebServerFlow
başına temelinde kimlik doğrulaması yapmak için kullanabilirsiniz. İşte bir python3 örneği:
from apiclient.discovery import build
from oauth2client.client import OAuth2WebServerFlow
CLIENT_ID = ''
CLIENT_SECRET = ''
VIEW_ID = ''
flow = OAuth2WebServerFlow(
CLIENT_ID, CLIENT_SECRET,
'https://www.googleapis.com/auth/analytics.readonly',
redirect_uri='urn:ietf:wg:oauth:2.0:oob'
)
authorize_url = flow.step1_get_authorize_url()
print('Receive code from:\n%s\n' % authorize_url)
code = input('Enter code here:').strip()
credentials = flow.step2_exchange(code)
api = build('analyticsreporting', 'v4', credentials=credentials)
body={
'reportRequests': [{
'viewId': VIEW_ID,
'dateRanges': [{'startDate': '7daysAgo', 'endDate': 'today'}],
'metrics': [{'expression': 'ga:sessions'}],
'dimensions': [{'name': 'ga:country'}]
}]
}
data = api.reports().batchGet(body=body).execute()