What's required in order to get OAuth2 credentials for my marketplace app? <p>I've created a small application that utilizes the <a href="https://developers.google.com/gmail/" rel="nofollow noreferrer">recently announced Gmail API</a> to search received e-mails for a specific string. My new is app published as hidden in the Chrome / Google Apps store, and I've read that I should be given OAuth2 credentials to use with my application.</p> <p>For example, <a href="https://developers.google.com/google-apps/help/articles/2lo-in-tasks-for-marketplace" rel="nofollow noreferrer">this guide (for the old apps marketplace, which is no longer usable)</a> shows where a developer can go to grab credentials for their marketplace app:</p> <p><img src="https://i.stack.imgur.com/n2ecs.png" alt="enter image description here"></p> <p>However in the new store, I cannot find anywhere that makes these credentials available to me.</p> <p>Have I missed a step? Do I need to complete a <a href="https://docs.google.com/a/consuslabs.com/forms/d/14QOb8PbSLKDgwIp8Zv-luoAAVurPXUqtzL0Hgikp3rk/viewform" rel="nofollow noreferrer">Google Apps Marketplace Listing Review Request</a> in order to be provided credentials?</p> <p>Thanks!</p> <h1>Updated with solution</h1> <p>The user MeLight has the answer below - generate service account credentials, then use them after making sure that the project has been linked to the marketplace app in the Chrome Web Store. For any future Googlers, here's the code used to connect to the API and create a <code>service</code> object, which can be used for getting messages, etc.</p> <pre><code>from oauth2client.client import SignedJwtAssertionCredentials from apiclient.discovery import build from oauth2client.tools import run import os import httplib2 BASEDIR = os.path.dirname(__file__) PRIVATE_KEY = BASEDIR + "XXXX-privatekey.p12" SERVICE_ACCOUNT_EMAIL = "XXXX@developer.gserviceaccount.com" SCOPES = ["https://mail.google.com/"] USERNAME="someone@targetuser.com" def main(argv): f = file(PRIVATE_KEY, 'rb') key = f.read() f.close() credentials = SignedJwtAssertionCredentials(service_account_name=SERVICE_ACCOUNT_EMAIL, private_key=key, scope=" ".join(SCOPES), prn=USERNAME) http = httplib2.Http() # Authorize the httplib2.Http object with our credentials http = credentials.authorize(http) # Build the Gmail service from discovery service = build('gmail', 'v1', http=http) </code></pre>