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

# Google My Business Verifications API

The My Business Verifications API runs the ownership verification flow for Google Business Profile locations. It exposes endpoints to fetch the verification options available to a location (postcard, phone, email, video), start a verification, complete it with a code, list past attempts, and read the Voice of Merchant state that gates listing visibility. Pair it with the Business Information API after verification succeeds to start managing listing content.

## For AI agents

Run the Google Business Profile location verification flow - fetch options, start verification, submit codes, and check Voice of Merchant state.

## Scope

Does not edit listing content, manage admins, or send marketing messages - use for Google Business Profile location ownership verification only.

## Capabilities

- Fetch the verification options available for a specific location
- Start a verification using postcard, phone, email, or video method
- Complete an in-progress verification by submitting the received code
- List historical verification attempts on a location
- Read the Voice of Merchant state to confirm a listing is fully verified
- Detect when a verification has expired and a new one is required

## Use cases

### Bulk Onboarding for New Locations

Franchise and multi-brand operators onboard many new locations in waves. The Verifications API lets a workflow create the location via Business Information, fetch verification options, kick off the operator-preferred method, and track the Voice of Merchant state until each listing goes live - replacing manual verification queues per location.

Example prompt: POST /v1/{location}:fetchVerificationOptions, choose the preferred method, POST /v1/{parent}/verifications, then poll /v1/{name}/VoiceOfMerchantState until verified.

### Postcard Code Reconciliation

When a postcard arrives with a verification code, the operator must complete the right pending verification. The verifications:complete endpoint accepts the code and resource name, closing the loop programmatically - useful for back-office operations that scan postcards to a queue rather than typing codes into a UI.

Example prompt: POST /v1/{name}:complete with the verification code, then GET the verification to confirm state=COMPLETED.

### Voice of Merchant Health Check

Verification can lapse if Google detects suspicious activity or if location data drifts. Periodically reading the VoiceOfMerchantState surfaces locations whose visibility is suspended, letting an operator team trigger a re-verification before the listing's ranking suffers.

Example prompt: GET /v1/{name}/VoiceOfMerchantState across all locations and flag any whose hasVoiceOfMerchant=false for re-verification.

### AI Agent Verification Concierge

An AI agent reachable through Jentic onboards new locations end to end: it creates the location via Business Information, fetches verification options, kicks off the chosen method, and watches for Voice of Merchant. Jentic isolates the OAuth credentials and returns the right Verifications operation per intent.

Example prompt: Search Jentic for 'start a Google Business verification', load locations.verifications.create, and execute with the chosen method and contact details.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /v1/{location}:fetchVerificationOptions | List verification methods available for a location |
| GET | /v1/{name}/VoiceOfMerchantState | Get the Voice of Merchant verification state |
| POST | /v1/{name}:complete | Complete a verification by submitting its code |
| POST | /v1/{name}:verify | Start a verification on a location |
| GET | /v1/{parent}/verifications | List verification attempts on a location |

## Key resources

- **verifications** — In-flight and completed verification attempts on a location
- **VoiceOfMerchantState** — Aggregate signal indicating whether a location is fully verified and visible

## Why Jentic

- **Setup:** Wiring the My Business Verifications API by hand means setting up Google OAuth 2.0 for Business Profile access, refreshing short-lived bearer tokens, and tracking the v1 verification surface yourself against the mybusinessverifications.googleapis.com host. Through Jentic you install once, import the My Business Verifications API from the API Directory, store the OAuth credential once, and your agent calls it.
- **Permission scoping:** This API puts the location and verification name in the URL path (/v1/{location}:fetchVerificationOptions and /v1/{name}...), so a rule can pin your agent to one location's verification flow: it can fetch verification options and read the Voice of Merchant state there and nothing else. You choose the operations it may call, so ones like completing or starting a verification are not included unless you add them.
- **Credential handling:** Your Google OAuth credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'start a Google Business verification' or 'fetch verification options', and Jentic returns the matching Verifications operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **My Business Business Information API** — Creates the location whose ownership Verifications then proves
- **My Business Account Management API** — Sets the admins on the account that can complete verifications
- **Google My Business API (v4)** — Legacy monolithic API with overlapping verification surface
- **My Business Notifications API** — Surfaces GOOGLE_UPDATE events that may flag a location for re-verification

## FAQ

### What authentication does the My Business Verifications API use?

OAuth 2.0 with the https://www.googleapis.com/auth/business.manage scope. The caller must be an admin on the parent Business Profile account. Jentic stores OAuth refresh tokens in your Jentic One instance and exposes only scoped short-lived access tokens to the agent.

### Which verification methods does the API support?

fetchVerificationOptions returns the methods available for the location, which can include POSTCARD, PHONE_CALL, EMAIL, VIDEO, and AUDIT depending on category and country. Service-area businesses often only see VIDEO.

### What are the rate limits for the My Business Verifications API?

Default quota is 0 QPM until Business Profile API access is approved. Once approved Google sets per-minute and per-day quotas; verification flows are not high-throughput, so the practical limit is the postal or call latency of each method.

### How do I start a verification through Jentic?

Search Jentic for 'start a Google Business verification', load locations.verifications.create, and execute with the chosen verificationMethod and the languageCode. Jentic handles OAuth refresh in the background.

### How do I tell that a location is fully verified?

GET /v1/{name}/VoiceOfMerchantState. A location is considered fully verified when hasVoiceOfMerchant=true; otherwise the response lists complianceReasons explaining what is blocking visibility.

### Can I limit what my agent is allowed to do with the My Business Verifications API?

Yes. Jentic One runs self-hosted, so your own rules decide which Verifications operations and which OAuth credential the agent may use. Because this API carries the location and verification name in the URL path, you can pin the agent to one location's flow, allowing it to fetch verification options and read the Voice of Merchant state while withholding operations like starting or completing a verification. Only the operations you explicitly grant are callable, and the stored Google credential is injected at execution time rather than exposed to the agent.
