Before you create a new customer account, consider the following:
- Country code restrictions might apply. To confirm that the customer's country is approved for resale, check the Partner Sales Console.
- If the account is created by upgrading from a consumer Gmail account to a business email with a domain name, make sure that the account has additional Google Workspace settings unlocked. For more information, see Create business emails for your team and Create a business email alias.
Create a customer account
To create a customer account, use the following
POST
request and include the authorization token:POST https://reseller.googleapis.com/apps/reseller/v1/customers
Within the new customer's account, create a user. If the response returns an HTTP
409 Conflict
status code, thecustomerId
already exists. Before registering the customer account, you must transfer the customer's subscriptions.If applicable, change the customer's default launguage.
Promote the user to the super administrator role. When creating the administrator account, you can either generate a temporary random password or prompt the customer to provide a password.
Notify the customer that they must sign-in to the Admin console and sign the Google Workspace via Reseller agreement in order to activate their account. Resellers are prohibited from signing the Terms of Service on the customer's behalf.
Types of customers
You can create two kinds of customers on Google Workspace:
- Domain-verified customers. These customers need Gmail and need
full administrator access. When you create this type of customer, set the
customerType
todomain
. - Email-verified customers. These customers don't own or manage their
domain. When you create this type of customer, set the
customerType
toteam
. These type of customers can purchase the Essentials and Enterprise Essentials editions of Google Workspace.
The following JSON request body is an example of a domain-verified customer:
{ "customerDomain": "DOMAIN_NAME", "customerType": "domain", "postalAddress": { "contactName": "NAME", "organizationName": "ORGANIZATION_NAME", "postalCode": "POSTAL_CODE", "countryCode": "COUNTRY_CODE" }, "alternateEmail": "EMAIL_ADDRESS" }
Replace the following:
DOMAIN_NAME
: your customer's domain—for example,example.com
NAME
: your customer's name—for example,Alex Cruz
.ORGANIZATION_NAME
: your customer's organization name—for example,Example Organization
.POSTAL_CODE
: your customer's ZIP or postal code—for example,94043
.COUNTRY_CODE
: your customer's 2 character ISO country code.EMAIL_ADDRESS
: your customer's email address—for example,cruz@example.com
.
A successful response returns an HTTP 200
status code and the new customer's
information:
{ "kind": "reseller#customer", "customerId": "CUSTOMER_ID", "customerDomain": "DOMAIN_NAME", "customerType": "domain", "postalAddress": { "kind": "customers#address", "contactName": "NAME", "organizationName": "ORGANIZATION_NAME", "postalCode": "POSTAL_CODE", "countryCode": "COUNTRY_CODE", }, "alternateEmail": "EMAIL_ADDRESS" }
The following JSON request body is an example of an email-verified customer:
{ "customerDomain": "DOMAIN_NAME", "customerType": "team", "primaryAdmin": { "primaryEmail": "EMAIL_ADDRESS" }, "postalAddress": { "contactName": "NAME", "organizationName": "ORGANIZATION_NAME", "postalCode": "POSTAL_CODE", "countryCode": "COUNTRY_CODE" }, "alternateEmail": "EMAIL_ADDRESS" }
A successful response returns an HTTP 200
status code and the new customer's
information:
{ "kind": "reseller#customer", "customerId": "CUSTOMER_ID", "customerDomain": "DOMAIN_NAME, "customerType": "team", "primaryAdmin": { "primaryEmail": "EMAIL_ADDRESS" }, "postalAddress": { "kind": "customers#address", "contactName": "NAME", "organizationName": "ORGANIZATION_NAME", "postalCode": "POSTAL_CODE", "countryCode": "COUNTRY_CODE", }, "alternateEmail": "EMAIL_ADDRESS" }
Change a customer's default language
A customer's default language is only applied to new users when they're created. Existing users retain their current language even after you update the default language. Therefore, you must set the customer default language before you create any users.
A newly created customer has a default language of English. To change the
default language, use the
PATCH
or
UPDATE
calls from the Directory API
Customers
endpoint.
Use the Directory API to update the default language
value for a customer:
PATCH https://reseller.googleapis.com/admin/directory/v1/customers/CUSTOMER_ID
Include the following JSON request body:
{ "language":"LANGUAGE_CODE" }
Replace the following:
CUSTOMER_ID
: a unique identifier for your customer—for example,C0123456
LANGUAGE_CODE
: an accepted language code —for example,es
for Spanish.
A successful JSON response returns an HTTP 200
status code and the updated
customer resource:
{ "alternateEmail": "EMAIL_ADDRESS", "customerCreationTime": "2022-12-12T23:04:10.620Z", "customerDomain": "DOMAIN_NAME", "id": "CUSTOMER_ID", "kind": "admin#directory#customer", "language": "LANGUAGE_CODE", "postalAddress": { "contactName": "NAME", "countryCode": "COUNTRY_CODE", "organizationName": "ORGANIZATION_NAME", "postalCode": "POSTAL_CODE" } }