Edit a location
Overview
Change a location's name, label, your client_location_id, address, website, or phone numbers.
Use this when a location moves, renames, or its contact details change.
You'll need the store_id and the full set of location fields (this replaces the record, so send everything, not just what changed). An optional field you leave out is cleared.
Returns the location's id. A location with the same name, address, postal code and city as another location is rejected.
Prerequisites
- A Partner token. See Authentication.
- The location's id (
storeId). Get one location gives you the current values to start from.
Base URL
| Environment | URL |
|---|---|
| Production | https://production-api.shoutaboutus.com |
| Development | https://development-api.shoutaboutus.com |
Endpoint
POST /api/v1/partner/store/{storeId}/update
Authentication
Partner token
- The location must be inside your account tree; otherwise
404. - A location that belongs to another partner returns
403.
Rate limit
This endpoint has no rate limit.
Request parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
storeId | path | integer | Yes | The location's id. |
Request body
Every field is written on each call. An optional field you leave out is set to empty.
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The location's name. Max 255 characters, no < or >. |
storeid | string | No | A display label for the location (for example NYC01), not the numeric id. Max 100 characters, no < or >. |
client_location_id | string | No | Your own id for the location. Max 100 characters, no < or >. Saved as "" when left out. |
address | string | Yes | Street address. Max 255 characters, no < or >. |
city_id | integer | Yes | The city. Must be an existing city id. |
postal_code | string | Yes | Postal code. 3 to 12 characters, no < or >. |
site_url | string | No | The location's website. Must be a valid URL. |
phone | string | No | A secondary phone line. 9 to 15 characters. |
company_phone | string | No | The primary business phone. 9 to 15 characters. |
Request payload
{
"name": "Acme Plumbing - North",
"storeid": "NORTH-01",
"client_location_id": "loc-001",
"address": "14 King Street",
"city_id": 3243,
"postal_code": "2000",
"site_url": "https://acmebrand.com",
"company_phone": "0291234567"
}Response body
The payload is inside data.
| Field | Type | Description |
|---|---|---|
status | string | success. |
message | string | Location has been updated successfully! |
storeId | integer | The location's id. |
review_sites_backfilled | integer | Review site connection slots that were missing for the location's plan and were added by this call. Usually 0. |
Response payload
{
"data": {
"status": "success",
"message": "Location has been updated successfully!",
"storeId": 3076,
"review_sites_backfilled": 0
}
}Examples
Success payload
See Response payload.
Error payload
403 Another partner's location
{
"message": "Forbidden",
"status": "error",
"errors": "You do not have access to this store."
}404 Store not found
{
"message": "Not Found",
"status": "error",
"errors": "Store not found."
}422 Required fields missing
{
"message": "The name field is required. (and 3 more errors)",
"errors": {
"name": ["The name field is required."],
"address": ["The address field is required."],
"city_id": ["The city id field is required."],
"postal_code": ["The postal code field is required."]
}
}500 Duplicate location
Another location already has the same name, address, postal code and city.
{
"message": "This location is already registered!",
"status": "error",
"errors": []
}| Status | Meaning |
|---|---|
200 | The location is updated. |
401 | The token is missing, expired or invalid. |
403 | The location belongs to another partner. |
404 | The location doesn't exist or is outside your account tree, or its data is incomplete. |
422 | The request failed validation. The response names the fields. |
500 | Duplicate location, or unexpected server error. |
Example request
curl --request POST \
--url "https://production-api.shoutaboutus.com/api/v1/partner/store/3076/update" \
--header 'Authorization: Bearer <bearer-token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"name": "Acme Plumbing - North", "storeid": "NORTH-01", "client_location_id": "loc-001", "address": "14 King Street", "city_id": 3243, "postal_code": "2000", "site_url": "https://acmebrand.com", "company_phone": "0291234567"}'Updated 17 days ago
