Skip to main content
GuidePlatforms

Google Business Profile

Publish updates, events, and offers to Google Business Profile via the PostPeer API.

Overview

Publish updates, events, offers, calls to action, and images to locations managed through Google Business Profile. Posts appear with the location on Google Search and Maps.

Quick Start

1. Connect Google Business Profile

curl https://api.postpeer.dev/v1/connect/googlebusiness \
  -H "x-access-key: YOUR_API_KEY"

Redirect the user to the returned OAuth URL. PostPeer creates one integration for each location the user selects.

2. Find the Location Account ID

curl "https://api.postpeer.dev/v1/connect/integrations?platform=googlebusiness" \
  -H "x-access-key: YOUR_API_KEY"

Use the integration id as the post target's accountId.

3. Publish an Update

curl -X POST "https://api.postpeer.dev/v1/posts" \
  -H "x-access-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "We are open late this Friday.",
    "platforms": [
      {
        "platform": "googlebusiness",
        "accountId": "gbp_123",
        "platformSpecificData": {
          "topicType": "STANDARD",
          "callToActionType": "LEARN_MORE",
          "callToActionUrl": "https://example.com/friday-hours"
        }
      }
    ],
    "publishNow": true
  }'

Post Types

  • STANDARD publishes a general update.
  • EVENT requires an event title, start date, and end date.
  • OFFER publishes a promotion and can include a coupon code, redemption URL, and terms.

Calls to action other than CALL require callToActionUrl.

Platform-Specific Data

Pass this object in platformSpecificData when posting to Google Business Profile. Posts appear on Google Search and Maps.

FieldTypeRequiredValues and constraintsDescription
topicTypestringNoSTANDARD, EVENT, OFFERPost type. Defaults to STANDARD. Use EVENT for event posts, OFFER for promotional offer posts.
callToActionTypestringNoBOOK, ORDER, SHOP, LEARN_MORE, SIGN_UP, CALL, GET_OFFERCall-to-action button shown on the post.
callToActionUrlstringNoFormat: uriURL for the call-to-action. Required for all CTA types except CALL.
eventTitlestringNoEvent title. Required when topicType is EVENT.
eventStartDatestringNoEvent start date in YYYY-MM-DD format. Required when topicType is EVENT.
eventStartTimestringNoEvent start time in HH:MM (24-hour) format. Required when topicType is EVENT.
eventEndDatestringNoEvent end date in YYYY-MM-DD format. Required when topicType is EVENT.
eventEndTimestringNoEvent end time in HH:MM (24-hour) format. Required when topicType is EVENT.
offerCouponCodestringNoCoupon code for OFFER posts.
offerRedeemOnlineUrlstringNoFormat: uriOnline redemption URL for OFFER posts.
offerTermsConditionsstringNoTerms and conditions text for OFFER posts.

Limits

  • Text is required and can contain at most 1,500 characters.
  • A post can contain at most one image.
  • Video and GIF posts are not supported.

On this page