Skip to content

API

Google Business Profile post scheduling API

SkedCast's `/v1` REST API schedules What's new updates, events and offers, each with an optional photo to Google Business Profile with one authenticated `POST` call — the same request shape as every other connected platform, with Google Business Profile's own required fields folded in.

All platforms

Scheduling to Google Business Profile through SkedCast's API#

SkedCast's /v1 REST API schedules What's new updates, events and offers, each with an optional photo to Google Business Profile the same way it does every other platform: one POST https://api.skedcast.com/v1/posts call with a content caption and a targets block naming the connected accounts. You need a verified Google Business Profile location managed by the connecting Google account (each location is its own connected account), connected once through the console (or minted as a self-serve connect link via POST /v1/clients/:id/connect-invites).

SkedCast is not a raw wrapper over Google Business Profile's own developer API — it is one versioned, platform-agnostic contract that fans a single compose call out across every connected network, with the Google Business Profile-specific fields listed below folded into the same request shape.

Google Business Profile-specific fields (`variants[].overrides.google_business`)#

FieldNotes
topicTypeSTANDARD (What's new, the default), EVENT or OFFER.
eventTitle**Required** for EVENT and OFFER: the event or offer title.
eventStart / eventEndYYYY-MM-DD or YYYY-MM-DDTHH:MM. eventStart is **required** for EVENT and OFFER.
offerCouponCode / offerRedeemUrl / offerTermsOptional offer details, shown on an OFFER post.
callToActionBOOK, ORDER, SHOP, LEARN_MORE, SIGN_UP or CALL — the post's action button.
callToActionUrl**Required** with every button except CALL, which dials the profile's phone number.

Every other field on the post (caption, media, schedule) is identical to every other platform.

Example: schedule a post to Google Business Profile#

json
{
  "clientId": "…",
  "content": "Two-for-one lattes all weekend at the harbour cafe.",
  "targets": { "mode": "accounts", "accountIds": ["…"] },
  "schedule": { "type": "at", "at": "2026-10-01T09:00:00" },
  "variants": [
    { "platform": "google_business", "overrides": { "google_business": { "topicType": "OFFER", "eventTitle": "Two-for-one lattes", "eventStart": "2026-10-03", "eventEnd": "2026-10-04", "offerCouponCode": "LATTE2" } } }
  ]
}
POST https://api.skedcast.com/v1/posts — Authorization: Bearer sked_live_…, Idempotency-Key: <uuid>

Google Business Profile facts#

FactValue
Max caption length1,500 characters
Media per post1 photo per post (JPG or PNG).
Native platform schedulingNo — SkedCast's managed engine holds the timer
SkedCast's default pacing10 posts/day, ~60 min apart per account (conservative anti-ban default — not Google Business Profile's own published rate limit; see the rate-limit guide below)
Published-post URL (permalink)Google's searchUrl for the post, returned when it publishes.

Reading status and results#

GET https://api.skedcast.com/v1/post-targets/:id returns the Google Business Profile target's status (scheduled, published, failed, …), plus error, statusReason, and retryAt when it's parked waiting on something — SkedCast's own pacing, a platform rate limit, or media still transcoding, each with its own machine-readable reason. Once published, externalId and permalink (see the table above) point at the live post.

  • Subscribe to target.published / target.failed webhooks (or the legacy post.* pair) instead of polling — see [Webhooks](/developers/webhooks).
  • Or connect an MCP client and ask an agent to check — see [Connect an AI agent](/mcp).
Google Business Profileapischedulingrest

FAQ

What can I schedule to Google Business Profile through the API?
Google Business Profile posts of type: What's new updates, events and offers, each with an optional photo, via one `POST https://api.skedcast.com/v1/posts` call — the same endpoint used for every other connected platform.
How do I authenticate against the Google Business Profile API endpoint?
The same way as every `/v1` route: an API key (`Authorization: Bearer sked_live_…`) or an OAuth 2.1 bearer token, scoped to `posts.compose` to schedule and `posts.read` to read back status. See Authentication.

Ready to broadcast everywhere?

Sign up free — no credit card. You land on the Free plan, and you can start a one-time 7-day Studio trial from your workspace whenever you are ready. Connect your first accounts, import a batch, and watch one post fan out across every platform.