POSTapi.synup.com/api/v4/locations/reviews/respond
Respond to an Interaction
This API posts a response to a specific interaction on the respective partner site (e.g., Google, Facebook, Yelp).
Behavior:
- The response is posted directly to the platform where the interaction originated.
- Some platforms may have moderation policies that affect response visibility.
- Supports text-based responses; some platforms may allow limited formatting.
- Ensures responses comply with platform-specific guidelines.
Requires an API key. Send it as
Authorization: API <your-key> — see Getting started.Parameters
Body
| Name | Type | Required | Description |
|---|---|---|---|
interactionId | string | required | ID of the interaction to respond to |
responseContent | string | required | Response text content |
Request
Request
curl -X POST 'https://api.synup.com/api/v4/locations/reviews/respond' \
-H 'Authorization: API YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"interactionId": "2090753a-ece6-4837-8336-8494ad308523",
"responseContent": "This is a sample response"
}'const res = await fetch('https://api.synup.com/api/v4/locations/reviews/respond', {
method: 'POST',
headers: {
Authorization: 'API YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"interactionId": "2090753a-ece6-4837-8336-8494ad308523",
"responseContent": "This is a sample response"
}),
});
const data = await res.json();import requests
res = requests.post(
"https://api.synup.com/api/v4/locations/reviews/respond",
headers={
"Authorization": "API YOUR_API_KEY",
"Content-Type": "application/json",
},
json={
"interactionId": "2090753a-ece6-4837-8336-8494ad308523",
"responseContent": "This is a sample response"
},
)
data = res.json()req, _ := http.NewRequest("POST", "https://api.synup.com/api/v4/locations/reviews/respond", 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 | Response successfully posted |
Example response
{
"data": {
"respondToInteraction": {
"interaction": {
"interactionId": "7495f5f5-05c3-41f7-a498-1f9cde0d4693",
"source": "facebook.com",
"content": "This is a sample response",
"authorName": null,
"authorAvatar": null,
"authorUrl": null,
"date": "2019-01-21T05:26:30.687556+00:00",
"interactionStatus": "Created"
}
}
}
}Response body
| Name | Type | Required | Description |
|---|---|---|---|
data | object | optional | |
data.respondToInteraction | object | optional | |
data.respondToInteraction.interaction | object | optional | |
data.respondToInteraction.interaction.interactionId | string | optional | Parent interaction ID for the response |
data.respondToInteraction.interaction.source | string | optional | URL of the interaction site |
data.respondToInteraction.interaction.content | string | optional | Interaction response content |
data.respondToInteraction.interaction.authorName | string | optional | Name of person who responded |
data.respondToInteraction.interaction.authorAvatar | string | optional | URL of response author's image |
data.respondToInteraction.interaction.authorUrl | string | optional | URL of response author's profile |
data.respondToInteraction.interaction.date | string | optional | Response timestamp |
data.respondToInteraction.interaction.interactionStatus | string | optional | Status of the response:
CreatedCompletedConfirmedFailed |