I'd like to add an Adwords account to a MCC account via Google Adwords API on my web application. I guess I just need to add a ManagedCustomerLink
The thing is I don't know how to get clientCustomerId. I thought by authenticating the user via OAuth2 on my application with the matching scope, I could somehow get their clientCustomerId but I could not find it.
Thank you by advance for your help !
You can get the client customer id by running the next code:
CustomerServiceInterface customerService = adWordsServices.get(session, CustomerServiceInterface.class);
Customer[] customers;
try {
customers = customerService.getCustomers();
for (Customer customer : customers) {
Long customerId = customer.getCustomerId();
System.out.println(customerId);
}
} catch (RemoteException e) {
e.printStackTrace();
}
In order to get the user session you have to use Oauth 2.0 and ask for his credentials.
Based on reading your exchange with George Astonishing above, I wonder if you really want to add AdWords accounts to your MCC.
There is a difference between an AdWords account owner
- Authorizing your app to access their data, vs
- Becoming your company's client for full AdWords management.
If this AdWords account belongs to your company's client, and you are taking over their account management, then you can use ManagedCustomerService to add the account to your MCC. You can get the account's 10-digit AdWords Customer ID using CustomerService.
On the other hand, if this is for a web app, and you just want users to be able to authorize with OAuth2, then you should follow this guide instead.
Here, visit this link to Google Adwords library,
Once you create a new user
$user = new AdWordsUser(); // with your API creds using OAUTH
GetAccountHierarchyExample(AdWordsUser $user) //found in link
Just run the function. It will list all your managed subaccounts.
来源:https://stackoverflow.com/questions/23463918/how-to-get-an-adwords-account-client-customer-id-to-link-it-to-a-mcc-account