POSTapi.synup.com/api/v4/connected-accounts/connect-listing
Connect a location with a listing of a connected account
This API links a location in your account with a listing from a connected Google My Business or Facebook Page account.
Required Fields:
- locationId – Base64-encoded unique identifier of the location.
- connectedAccountListingId – The ID of the listing, retrieved from the Fetch Listings API.
- connectedAccountId – The ID of the connected account managing the listing.
Behavior:
- Establishes a direct connection between the location and the listing.
- Enables the system to sync and manage the listing’s data.
Requires an API key. Send it as
Authorization: API <your-key> — see Getting started.Parameters
Headers
| Name | Type | Required | Description |
|---|---|---|---|
Content-Type | string | required |
Body
| Name | Type | Required | Description |
|---|---|---|---|
input | object | required | |
input.locationId | string | required | Base64 encoded location ID |
input.connectedAccountId | string | required | ID of the connected account |
input.connectedAccountListingId | string | required | ID of the listing from the fetch listings API response. This is typically a base64 encoded string. |
Request
Request
curl -X POST 'https://api.synup.com/api/v4/connected-accounts/connect-listing' \
-H 'Authorization: API YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"input": {
"locationId": "TG9jYXRpb246NzM5MzM=",
"connectedAccountId": "3db66afa-151d-4212-a8b7-949f9fe9aaf9",
"connectedAccountListingId": "R21iQnVsa0RhdGFMYWtlOmMyMWRiOWY5LTZmYTctNDE0My1hNDU2LTQzMjZkMmZiN2UwZg=="
}
}'const res = await fetch('https://api.synup.com/api/v4/connected-accounts/connect-listing', {
method: 'POST',
headers: {
Authorization: 'API YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"input": {
"locationId": "TG9jYXRpb246NzM5MzM=",
"connectedAccountId": "3db66afa-151d-4212-a8b7-949f9fe9aaf9",
"connectedAccountListingId": "R21iQnVsa0RhdGFMYWtlOmMyMWRiOWY5LTZmYTctNDE0My1hNDU2LTQzMjZkMmZiN2UwZg=="
}
}),
});
const data = await res.json();import requests
res = requests.post(
"https://api.synup.com/api/v4/connected-accounts/connect-listing",
headers={
"Authorization": "API YOUR_API_KEY",
"Content-Type": "application/json",
},
json={
"input": {
"locationId": "TG9jYXRpb246NzM5MzM=",
"connectedAccountId": "3db66afa-151d-4212-a8b7-949f9fe9aaf9",
"connectedAccountListingId": "R21iQnVsa0RhdGFMYWtlOmMyMWRiOWY5LTZmYTctNDE0My1hNDU2LTQzMjZkMmZiN2UwZg=="
}
},
)
data = res.json()req, _ := http.NewRequest("POST", "https://api.synup.com/api/v4/connected-accounts/connect-listing", bytes.NewBufferString(payload))
req.Header.Set("Authorization", "API YOUR_API_KEY")
req.Header.Set("Content-Type", "application/json")
res, err := http.DefaultClient.Do(req)Responses
| Status | Description |
|---|---|
200 | Connection process completed |
400 | Invalid request - Malformed base64 string or invalid IDs |
401 | Unauthorized - Invalid or missing API key |
403 | Forbidden - Insufficient permissions |
404 | Not Found - Location or listing not found |
Example response (generated from the schema)
{
"data": {
"connectListing": {
"success": true,
"message": "Internal System Error"
}
}
}Response body
| Name | Type | Required | Description |
|---|---|---|---|
data | object | optional | |
data.connectListing | object | optional | |
data.connectListing.success | boolean | required | Indicates if the connection was successful |
data.connectListing.message | string | optional | Error message if the connection failed. Returns null on successful connection. |