Before you start
Request API access
Until Google approves your project, its Business Profile API quota is 0 requests a minute, and nothing can be read or posted.Create the project
Send the access request
Wait for the approval
Create the client
Turn on the four APIs
- Google My Business API: publishes the posts. Google shows it only to projects whose access request was approved.
- My Business Account Management API: lists your Business Profile accounts when you connect.
- My Business Business Information API: lists the locations in them.
- Business Profile Performance API: the numbers on the Analytics page.
Set up Branding and Audience
Add the scopes
Create a Web application client
https, except for localhost.The redirect URI is where the network sends the browser back after someone approves PostQueen. It is
your FRONTEND_URL + /integrations/social/ + the network’s identifier, for example
https://postqueen.example.com/integrations/social/pinterest.Most networks need exactly one URI, with no trailing slash. Two exceptions: TikTok Business needs
the trailing slash (/integrations/social/tiktok-business/), and a Google web client that also
serves Google Business Profile lists both /integrations/social/youtube and
/integrations/social/gmb. Channel developer apps lists every
network’s ending.Copy the client ID and secret
Set the variables
Add the two keys to your environment:/integrations/social/gmb redirect URI, the business.manage scope, and the four APIs in its project, and the project needs the Business Profile API approval. Set both variables or neither: each empty one is replaced on its own, so setting only one mixes two clients.docker restart or
docker compose restart keeps the old container and its old environment.
In the folder that holds docker-compose.yaml, recreate only the postqueen service:
docker compose down for a settings change: on
a host that runs other Compose services in the same project, it stops them too.
Then open PostQueen, go to Channels, choose Add Channel and pick this network. You are
sent to its login to authorize PostQueen, and the channel appears in the Channels list once you
accept.
App review
- Testing. Google gives an External app in Testing refresh tokens that expire after 7 days, so a channel connected then has to be reconnected every week. In Audience, choose Publish app to leave Testing.
- Verification. Once published, people who connect see Google’s unverified-app screen until Google verifies the app in the Verification Center, and an unverified app that uses sensitive scopes is limited to 100 users. An install used only by you and your team can stay unverified.
Troubleshooting
Google My Business API is not in the API library
Google My Business API is not in the API library
Rate limit exceeded. Please try again later.
Rate limit exceeded. Please try again later.
Permission denied. Please ensure you have access to this business location.
Permission denied. Please ensure you have access to this business location.
Not enough scopes, when choosing a provider, please add all the scopes
Not enough scopes, when choosing a provider, please add all the scopes
redirect_uri_mismatch on Google's screen
redirect_uri_mismatch on Google's screen
FRONTEND_URL followed by /integrations/social/gmb. If GOOGLE_GMB_CLIENT_ID is empty, add it to the YouTube client instead.Related
- YouTube setup: the client PostQueen falls back to.
- Channel developer apps
- Configuration reference
- Self-hosting troubleshooting
- Google Business Profile posting settings