Endpoints

Locations Endpoints

API endpoints for managing Google Business locations

List Locations

Get all Google Business Profile locations.

GET /api/v1/google-business/locations
Authorization: Bearer <token>

Query Parameters

ParameterTypeDescription
typestringall or unassigned
pagenumberPage number
limitnumberItems per page (max 100)

Response

{
  "status": "ok",
  "data": {
    "locations": [
      {
        "name": "locations/123456789",
        "title": "My Business",
        "storefrontAddress": {...},
        "isAssigned": true,
        "businessId": 34,
        "businessName": "My Business Account",
        "locationState": {"isVerified": true},
        "syncEnabled": true
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 20,
      "totalCount": 5,
      "hasMore": false
    }
  }
}

Get Location

Get a specific location by ID.

GET /api/v1/google-business/locations/{locationId}
Authorization: Bearer <token>

Response

{
  "status": "ok",
  "data": {
    "name": "locations/123456789",
    "title": "My Business",
    "storefrontAddress": {...},
    "phoneNumbers": {...},
    "regularHours": {...}
  }
}

Toggle Sync

Enable or disable sync for a location.

PATCH /api/v1/google-business/locations/{locationId}/sync
Authorization: Bearer <token>

Request

{
  "syncEnabled": true
}

Response

{
  "status": "ok",
  "data": {
    "locationId": "locations/123456789",
    "syncEnabled": true
  }
}

Location must be verified in Google before sync can be enabled.


Refresh Verification

Check verification status from Google.

POST /api/v1/google-business/locations/{locationId}/refresh-verification
Authorization: Bearer <token>

Response

{
  "status": "ok",
  "data": {
    "locationId": "locations/123456789",
    "isVerified": true,
    "verificationState": "VERIFIED"
  }
}

On this page