POSTapi.synup.com/api/v4/local-post-ideas/upsert-extended-location-config
Upsert extended location config
Creates or updates the extended generation config for a location — brand tone, target customers, contact/address, brand colors and logos, and the services/products/content-rules that ground post-idea generation. Only the fields you send are changed. services, products, and contentRules are JSON values.
Requires an API key. Send it as
Authorization: API <your-key> — see Getting started.Parameters
Headers
| Name | Type | Required | Description |
|---|---|---|---|
Synup-Version | string | required | API version date (YYYY-MM-DD). |
Body
| Name | Type | Required | Description |
|---|---|---|---|
locationId | string | required | |
tone | string | optional | |
targetCustomers | string | optional | |
country | string | optional | |
phone | string | optional | |
address | string | optional | |
location | string | optional | |
primaryColor | string | optional | |
secondaryColor | string | optional | |
logoLight | string | optional | |
logoDark | string | optional | |
services | object | optional | Free-form JSON describing services. |
products | object | optional | Free-form JSON describing products. |
contentRules | object | optional | Free-form JSON content rules. |
additionalContext | string | optional |
Request
Request
curl -X POST 'https://api.synup.com/api/v4/local-post-ideas/upsert-extended-location-config' \
-H 'Authorization: API YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"locationId": "TG9jYXRpb246MQ==",
"tone": "friendly",
"targetCustomers": "families"
}'const res = await fetch('https://api.synup.com/api/v4/local-post-ideas/upsert-extended-location-config', {
method: 'POST',
headers: {
Authorization: 'API YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"locationId": "TG9jYXRpb246MQ==",
"tone": "friendly",
"targetCustomers": "families"
}),
});
const data = await res.json();import requests
res = requests.post(
"https://api.synup.com/api/v4/local-post-ideas/upsert-extended-location-config",
headers={
"Authorization": "API YOUR_API_KEY",
"Content-Type": "application/json",
},
json={
"locationId": "TG9jYXRpb246MQ==",
"tone": "friendly",
"targetCustomers": "families"
},
)
data = res.json()req, _ := http.NewRequest("POST", "https://api.synup.com/api/v4/local-post-ideas/upsert-extended-location-config", 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 | Successful response |
401 | Unauthorized - Invalid or missing API key |
Example response (generated from the schema)
{
"data": {
"upsertExtendedLocationConfig": {
"success": true,
"error": {
"message": "string",
"code": "string",
"contextInfo": [
{
"key": "string",
"value": "string"
}
]
}
}
}
}Response body
| Name | Type | Required | Description |
|---|---|---|---|
data | object | optional | |
data.upsertExtendedLocationConfig | object | optional | |
data.upsertExtendedLocationConfig.success | boolean | optional | |
data.upsertExtendedLocationConfig.error | object | optional | |
data.upsertExtendedLocationConfig.error.message | string | optional | |
data.upsertExtendedLocationConfig.error.code | string | optional | |
data.upsertExtendedLocationConfig.error.contextInfo | array of object | optional | |
data.upsertExtendedLocationConfig.error.contextInfo[].key | string | optional | |
data.upsertExtendedLocationConfig.error.contextInfo[].value | string | optional |