How to Set Country When Creating a Google Ads Account via API?

82 views
Skip to first unread message

Vincent

unread,
Mar 17, 2025, 6:32:21 PMMar 17
to Google Ads API and AdWords API Forum
Hello everyone,

I am currently working with Google Ads API to create sub-accounts under an MCC. However, I have encountered an issue:

Problem:

When I create a new account using CustomerService.create_customer_client(), the billing country is always set to United States (US), even though my MCC’s country is set to Thailand (TH) or another country.

What I’ve Tried:

Explicitly setting a country field (customer.country_code = "TH") → Error: Unknown field for Customer: country_code
Creating a new MCC with a different country (e.g., Thailand) → Still creates sub-accounts with the United States as the billing country
Checking API documentation and forums → No clear solution found

My Question:

Is there any way to specify the country when creating an account via API?
If API does not support this, is there an alternative method to ensure the correct country is set for new accounts?
Does the country of the MCC always determine the country of sub-accounts?

I appreciate any guidance or workarounds from the community. Thank you!

Google Ads API Forum Advisor

unread,
Mar 17, 2025, 9:57:57 PMMar 17
to terrellf...@gmail.com, adwor...@googlegroups.com
Hi,

Thank you for reaching out to the Google Ads API support team. 

Please find the answers for your questions below:

1. Is there any way to specify the country when creating an account via API?
  • Yes, you can specify the country by passing the 'timeZone' and 'currencyCode' fields while making an API call using the customers.createCustomerClient method. Kindly note that there is no field named 'country_code' in the CustomerService and that's the reason you are getting unknown field errors. If you’d like to manage your ads in a different time zone other than MCC timezone, you must create a new account and set your desired time zone at the time of account creation.  
  • For example, as your requirement is 'Thailand' we have selected the 'Asia/Bangkok' timezone which is the capital of 'Thailand' and we were successfully able to create a child account using the API. I would recommend you to refer to the Codes and formats guide which describes you the timezone ID's and currency codes which are supported in the Google Ads API. However, I am sharing with you the sample request and response logs as per your requirement:
  • Request Body:
    =============
    
    POST https://googleads.googleapis.com/v19/customers/{login-customer-id(MCC ID)}:createCustomerClient?key=[YOUR_API_KEY] HTTP/1.1
    
    developer-token: **********************
    Authorization: Bearer [YOUR_ACCESS_TOKEN]
    Accept: application/json
    Content-Type: application/json
    
    {
      "customerClient": {
        "timeZone": "Asia/Bangkok",
        "descriptiveName": "Thailand account",
        "currencyCode": "THB"
      }
    }
    
    Response:
    ==========
    HTTP/1.1 200 
    content-encoding: gzip
    content-length: 65
    content-type: application/json; charset=UTF-8
    date: Tue, 18 Mar 2025 00:41:45 GMT
    server: ESF
    vary: Origin, X-Origin, Referer
    
    {
      "resourceName": "customers/{customerId}"
    }
2. If API does not support this, is there an alternative method to ensure the correct country is set for new accounts?
  • As mentioned earlier, you need to select the 'timeZone' and 'currencyCode' field while creating the sub-accounts using the Google Ads API. Note that customers.createCustomerClient method allows you to create only the sub-accounts not the sub-MCC accounts through the Google Ads API. There is no way to create the sub-manager accounts through the API. I would recommend you to refer to Creating an account documentation for more detailed information. 
3. Does the country of the MCC always determine the country of sub-accounts?
  • If you try to create sub-account through the Google Ads UI, by default it will select the country of MCC account. However, you can modify and select the required country and you can create an account. If you try to create a sub-account through the Google Ads API, you can directly specify the country under the 'timeZone' field and can create the account as per your requirement. You can refer to this help center article for more detailed information. 
If you still encounter any issues while creating the sub-accounts even after following the suggestion, I would request you to share the complete API logs (request and response logs with request-id and request header) generated at your end to further assist you better. 

You can send the details via Reply privately to the author option, or direct private reply to this email.
 

Thanks,
 
Google Logo Google Ads API Team

Feedback
How was our support today?

rating1    rating2    rating3    rating4    rating5
[2025-03-18 01:57:09Z GMT] This message is in relation to case "ref:!00D1U01174p.!5004Q02vHAlp:ref" (ADR-00295093)



Vincent

unread,
Mar 19, 2025, 9:02:29 AMMar 19
to Google Ads API and AdWords API Forum

Thank you for your response! I appreciate the detailed explanation. However, I still have some concerns regarding the country setting when creating a sub-account via API.

Clarification on the Issue:
  • When I manually create a sub-account via the Google Ads UI and select Thailand as the country, the billing country in the payment settings is correctly set to Thailand by default.
  • When I create a sub-account via API, I set THB as the currency and Asia/Bangkok as the time zone. However, when I check the payment settings, the billing country is set to the United States (US) instead of Thailand.
  • This makes me question whether the account created via API is actually considered a US-based account rather than a Thailand-based one.
Follow-up Questions:
  1. Is it possible to explicitly set the country when creating a sub-account via API?
    • You mentioned that the API does not have a country_code field, so does this mean the MCC’s country determines the sub-account’s actual country, regardless of the time zone and currency?
  2. If the API does not support setting the country directly, is there any way to ensure that the new account is truly based in Thailand instead of the United States?
  3. Why does selecting THB currency and Asia/Bangkok time zone not result in a Thailand-based account?
  4. Can a regular Google Ads API or Premium account handle this, or do I need a different level of access to configure the country correctly?

I would appreciate any clarification or alternative solutions to ensure the correct country assignment for sub-accounts created via API.

Thanks in advance!


Vào lúc 08:57:57 UTC+7 ngày Thứ Ba, 18 tháng 3, 2025, Google Ads API Forum Advisor đã viết:

Google Ads API Forum Advisor

unread,
Mar 19, 2025, 12:12:28 PMMar 19
to terrellf...@gmail.com, adwor...@googlegroups.com

Hi

As requested earlier, kindly provide us with the Uncropped UI screenshot where the payment settings show as "US" instead of "Thailand" for the client account where the timezone is set to "Asia/Bangkok" and currency code "THB". Also, provide us with the complete API logs (request and response logs with request-id and request header) generated during the creation of the client account with the mentioned timezone and currency code settings. 

If you are using a client library and haven't enabled the logging yet, I would request you to enable logging for the specific client library that you are using. You can refer to the guides Java, .Net, PHP, Python, Ruby or Perl to enable logging at your end. For REST interface requests, you can enable logging via the curl command by using the -i flag.


Thanks,
 
Google Logo Google Ads API Team

Feedback
How was our support today?

rating1    rating2    rating3    rating4    rating5

[2025-03-19 16:11:45Z GMT] This message is in relation to case "ref:!00D1U01174p.!5004Q02vHAlp:ref" (ADR-00295093)



Reply all
Reply to author
Forward
0 new messages