canonical: https://jentic.com/apis/googleapis.com/reseller

# Google Workspace Reseller API

The Google Workspace Reseller API lets authorized partners place and manage orders for Google Workspace and other Google subscription products at scale, mirroring functionality that resellers otherwise perform manually in the Channel Services console. Operations cover customer creation and updates, subscription orders, plan changes, seat changes, renewal settings, suspension and reactivation, and trial-to-paid conversion. Resellers use it to drive provisioning workflows, billing transitions, and customer lifecycle management directly from their own systems.

## For AI agents

Place and manage Google Workspace subscriptions for reseller customers - change plans, adjust seats, suspend or activate subscriptions, and update renewal settings programmatically.

## Scope

Does not provision Workspace users, send email, or manage Drive content - use for placing and managing reseller subscriptions on behalf of customers only.

## Capabilities

- Insert a new reseller customer record and update its primary domain or postal address
- Place a Google Workspace subscription order on behalf of a customer
- Change the plan on an existing subscription, for example from FLEXIBLE to ANNUAL
- Adjust the number of seats on a subscription with the changeSeats endpoint
- Suspend or activate a subscription to handle non-payment or reinstatement workflows
- Update renewal settings or transition a free trial to paid service

## Use cases

### Automated reseller provisioning

When a sales order closes in the reseller's CRM, an agent creates the customer in Google Workspace, places the matching subscription order, and writes the resulting subscription ID back to the CRM. The Reseller API exposes both customer insert and subscription insert endpoints so this can be a single automated chain instead of console clicks.

Example prompt: POST /apps/reseller/v1/customers with the customer payload, then POST /apps/reseller/v1/customers/{customerId}/subscriptions with the Workspace SKU and seat count.

### Billing exception handling

A reseller's billing system flags overdue invoices. An agent calls suspend on those subscriptions to pause service, and once payment clears it calls activate to restore access. The Reseller API exposes both endpoints under each subscription resource path, returning the updated subscription state on success.

Example prompt: POST /apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/suspend on overdue accounts, then POST .../activate once payment is recorded.

### Plan and seat right-sizing

An ops agent reviews quarterly utilization data and rebalances customer subscriptions: customers with consistent headcount move from FLEXIBLE to ANNUAL via changePlan, while those with seasonal hiring receive seat adjustments via changeSeats. The agent records each change with its returned subscription state for audit.

Example prompt: POST /apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changePlan with planName=ANNUAL_YEARLY_PAY for steady-state customers.

### Agent-driven Workspace lifecycle through Jentic

An AI agent built on Jentic handles end-to-end Workspace lifecycle on behalf of the reseller: it searches for the place-order operation by intent, runs the call, and records the resulting subscription. Reseller OAuth credentials remain isolated in your Jentic One instance throughout.

Example prompt: Search Jentic for 'place google workspace subscription order', load the schema for POST /apps/reseller/v1/customers/{customerId}/subscriptions, execute with the SKU and seat count, return the subscription ID.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /apps/reseller/v1/customers | Insert a reseller customer |
| GET | /apps/reseller/v1/customers/{customerId} | Get a reseller customer |
| PATCH | /apps/reseller/v1/customers/{customerId} | Patch a reseller customer |
| POST | /apps/reseller/v1/customers/{customerId}/subscriptions | Place a subscription order |
| POST | /apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changePlan | Change a subscription plan |
| POST | /apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changeSeats | Change subscription seat count |
| POST | /apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/suspend | Suspend a subscription |
| POST | /apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/activate | Activate a suspended subscription |

## Key resources

- **Customers** — Insert, get, patch, and update reseller customer records.
- **Subscriptions** — Place orders, change plans, change seats, suspend, activate, and start paid service for subscriptions.
- **Renewal Settings** — Update auto-renewal behavior on an existing subscription.
- **Trial Conversions** — Convert a trial subscription to paid service via startPaidService.

## Why Jentic

- **Setup:** Wiring the Google Workspace Reseller API by hand means configuring partner Google OAuth 2.0, refreshing scoped access tokens, and threading customer and subscription identifiers through the /apps/reseller/v1 endpoints on reseller.googleapis.com. Through Jentic you install once, import the Google Workspace Reseller API from the API Directory, store the OAuth credential once, and your agent calls it.
- **Permission scoping:** This API puts the customer and subscription in the URL path (/apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}), so a rule can pin your agent to one customer: it can read and place subscription orders for that customer and nothing else. You choose the operations it may call, so state-changing ones like suspending a subscription or changing seats are not included unless you add them.
- **Credential handling:** Your partner Google OAuth credential is stored once, encrypted, by your own Jentic One instance and a scoped access token is injected at execution time. The credential never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'place a Google Workspace subscription order' or 'change a Workspace plan', and Jentic returns the matching Reseller operation with its input schema so the agent calls the right endpoint without reading the partner documentation.

## Related APIs

- **Admin SDK** — Manages users and groups inside the Workspace tenants the reseller provisions.
- **Cloud Billing API** — Tracks billing accounts that flank Workspace subscriptions.
- **Chrome Policy API** — Manages Chrome device and browser policies inside reseller-provisioned Workspace tenants.
- **Google Drive API** — Operates on Drive content rather than the underlying Workspace subscription.

## FAQ

### What authentication does the Workspace Reseller API use?

It uses Google OAuth 2.0 with the apps.order scope, declared as Oauth2 and Oauth2c. Only authorized Google Workspace reseller principals can call the API. Through Jentic, the reseller's OAuth credentials are stored encrypted in your Jentic One instance and only short-lived access tokens are exchanged at call time.

### Can I change a customer's subscription plan with the Reseller API?

Yes. POST /apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changePlan accepts a planName such as ANNUAL_YEARLY_PAY, ANNUAL_MONTHLY_PAY, or FLEXIBLE, along with a seats payload, and returns the updated subscription. The change takes effect at the next renewal boundary defined by the new plan.

### What are the rate limits for the Workspace Reseller API?

Google enforces per-project quotas on Reseller API calls; the default user-based quota is 240 queries per minute per project, with mutating order placement and plan-change endpoints sharing that pool. Higher quotas can be requested through the Cloud Console for established resellers.

### How do I place a subscription order through Jentic?

Search Jentic for 'place google workspace subscription order', load the schema for POST /apps/reseller/v1/customers/{customerId}/subscriptions, and execute with the SKU id, plan, and seat count. Jentic returns the new subscription record, including its subscriptionId for downstream tracking.

### Can I suspend and reactivate subscriptions for non-paying customers?

Yes. POST .../suspend pauses service immediately, and POST .../activate restores it once the customer becomes current. Both endpoints return the updated subscription resource so the agent can confirm the status change before logging the event.

### Is the Workspace Reseller API free?

The API is free to call for authorized Google Workspace resellers; there is no per-call fee. Charges accrue from the underlying Workspace subscriptions placed through it, billed to the reseller agreement on the standard partner schedule.

### Can I limit what my agent is allowed to do with the Google Workspace Reseller API?

Yes. Because you run Jentic One yourself, your own rules decide which Reseller operations and which OAuth credential the agent may use. Since the customer and subscription sit in the URL path (/apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}), you can pin the agent to a single customer so it only reads and places subscription orders for that customer and nothing else. You also choose the exact operations it can call, so state-changing ones like suspending a subscription or changing seats stay unavailable unless you explicitly grant them.
