सेवा खाते का उपयोग करने के बजाय, आप उपयोग करके नए उपयोगकर्ता अनुमतियाँ जोड़ने की आवश्यकता को समाप्त कर सकते हैं (जैसे कि इस उत्तर में शीर्ष उत्तरों के अनुसार) OAuth client ID
क्रेडेंशियल्स ।
पर जाएं एपीआई साख डैशबोर्ड और "साख बनाएं" पर क्लिक -> "OAuth क्लाइंट आईडी"। बाद में आपको एक क्लाइंट आईडी और एक क्लाइंट सीक्रेट प्राप्त करना चाहिए, जिसे आपको एपीआई प्रमाणित करना होगा।
अब आप OAuth2WebServerFlow
प्रति-उपयोग आधार पर प्रमाणित करने के लिए उपयोग कर सकते हैं । यहाँ एक python3 उदाहरण है:
from apiclient.discovery import build
from oauth2client.client import OAuth2WebServerFlow
# TODO: Fill these in...
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()