# Update  business location

```http
POST https://api.synup.com/api/v4/locations/update
```

## Update Location

This API allows you to modify the attributes of an existing location within your account. It enables businesses to keep their location data up to date by updating key details such as address, contact information, business hours, categories, and other metadata.

:::info []

**Processing Time for Location Updates**
Updates to location attributes including `enabledSiteIds` or `submissionDisabledSiteIds`, are processed asynchronously before they are accurately reflected across all publishers and within the system. Allow this time for updates to be reflected accurately.

:::

Source: https://developer.synup.com/api/locations/update-business-location

## Request body

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `input` | object | required |  |
| `input.id` | string | required | Unique identifier in Base64 encoded format. Must be in the format `Location:<Location ID>` |
| `input.name` | string | optional | Name of the business |
| `input.archived` | boolean | optional | Indicates if the location is archived. Read-only. |
| `input.archivedAt` | string | optional | Timestamp when the location was archived. Read-only. |
| `input.billingPeriod` | string | optional | Billing cycle period. Read-only. |
| `input.bizUrl` | string | optional | URL of the business website |
| `input.bookingUrl` | null | optional | URL for booking appointments. Applicable only for Food industry businesses |
| `input.city` | string | optional | City where the business is located |
| `input.countryIso` | string | optional | Country ISO code. Refer to the Places API for valid ISOs. |
| `input.customAttributes` | array of object | optional |  |
| `input.customAttributes[].archived` | boolean | optional |  |
| `input.customAttributes[].enumValues` | array of string | optional |  |
| `input.customAttributes[].name` | string | optional |  |
| `input.customAttributes[].slug` | string | optional |  |
| `input.customAttributes[].type` | string | optional |  |
| `input.customAttributes[].value` | array of string | optional |  |
| `input.description` | string | optional | Detailed description of the business |
| `input.facebookUrl` | string | optional | URL of the business's Facebook page |
| `input.googleAdsPhone` | string | optional | Google Ads-specific phone number |
| `input.hideAddress` | boolean | optional | Set to true if location is a Service Area Business |
| `input.instagramUrl` | string | optional | URL of the business's Instagram page |
| `input.linkedinUrl` | string | optional | URL of the business's LinkedIn page |
| `input.offeringsUrl` | null | optional | URL for listing business offerings. Applicable only for food industry businesses |
| `input.ownerEmail` | string | optional | Email of the business owner |
| `input.ownerName` | string | optional | Name of the business owner |
| `input.paymentMethods` | array of string | optional | Accepted payment methods ("VISA", "MASTERCARD", "AMEX", "CASH", "CHEQUE", "CRYPTO", "DINERS_CLUB", "DISCOVER", "FINANCING", "INVOICE", "TRAVELERS_CHECK", "APPLE_PAY", "SAMSUNG_PAY", "PAYPAL", "ANDROID_PAY" ) |
| `input.phone` | string | optional | - Must follow the international **E.164 format**. [Ref here.](https://www.twilio.com/docs/glossary/what-e164) - Do not include the `+` sign or country code. - Remove parentheses and special characters. - Example:   - **Incorrect**: `(123)-456-7890`, `+1-123-456-7890`   - **Correct**: `1234567890` |
| `input.additionalPhones` | array of string | optional | Additional contact phone numbers |
| `input.pinterestUrl` | string | optional | URL of the business's Pinterest page |
| `input.postalCode` | string | optional | Postal code of the business location |
| `input.reservationUrl` | null | optional | URL for making reservations. Applicable only for restaurant only businesses. |
| `input.serviceItems` | array of string | optional |  |
| `input.stateIso` | string | optional | State ISO code. Refer to the Places API for valid ISOs. |
| `input.storeId` | null | optional | Unique store identifier. Must be unique across all locations. |
| `input.street` | string | optional | Street address of the business |
| `input.street1` | string | optional | Additional street address information |
| `input.subCategoryId` | integer | optional | ID of the subcategory the business belongs to |
| `input.additionalCategoryIds` | array of string | optional | Additional category IDs for the business |
| `input.tagline` | string | optional | Tagline of the business |
| `input.tags` | array of string | optional |  |
| `input.temporarilyClosed` | boolean | optional | Set to true if the location's business hours should be marked as closed |
| `input.tiktokUrl` | null | optional | URL of the business's TikTok page |
| `input.twitterUrl` | string | optional | URL of the business's Twitter page |
| `input.videos` | array of string | optional | List of valid video URLs |
| `input.yearOfIncorporation` | integer | optional | Year the business was established |
| `input.youtubeUrl` | null | optional | URL of the business's YouTube page |
| `input.enabledSiteIds` | array of integer | optional | List of site IDs where the business details should be published |
| `input.submissionDisabledSiteIds` | array of integer | optional | List of site IDs where the business details should not be published |
| `input.placeActionLinks` | array of object | required |  |
| `input.placeActionLinks[].placeActionType` | string | required | One of the valid types. One of: `APPOINTMENT`, `ONLINE_APPOINTMENT`, `DINING_RESERVATION`, `FOOD_ORDERING`, `FOOD_DELIVERY`, `FOOD_TAKEOUT` |
| `input.placeActionLinks[].isPreferred` | boolean | required | Marks this link preferred for its type. At most one preferred per type. |
| `input.placeActionLinks[].uri` | string | required | Destination URL. |
| `input.placeActionLinks[].name` | string | optional | The link's identifier, returned by the read endpoints once the link has synced to Google. Optional on write — include it (when available) to target a specific saved link most accurately. |
| `input.placeActionLinks[].action` | string | optional | add (default) or delete (for deleting saved uri) |
| `input.businessHours` | array of object | optional | Business hours for each day of the week |
| `input.businessHours[].day` | string | required | Day of the week \| Special One of: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`, `SPECIAL` |
| `input.businessHours[].slots` | array of object | required | Array of time slots (minimum 1, maximum 2). Required only if type is OPEN. |
| `input.businessHours[].slots[].start` | string | optional | Opening time. Valid formats: `<HH>:<MM>am` OR `<HH>:<MM>pm` |
| `input.businessHours[].slots[].end` | string | optional | Closing time. Valid formats: `<HH>:<MM>am` OR `<HH>:<MM>pm` |
| `input.businessHours[].type` | string | required | Type of business hours (e.g., OPEN, CLOSED, OPEN_24x7) One of: `OPEN`, `OPEN_24x7`, `CLOSED` |
| `input.businessHours[].specialDate` | string | optional | Day should be `SPECIAL`. Regular hours is mandatory.  **Regular hours is mandatory for special hours to be allowed ** |

## Example request

```bash
curl -X POST 'https://api.synup.com/api/v4/locations/update' \
  -H 'Authorization: API YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "input": {
    "id": "TG9jYXRpb246MTE4MjcxOA==",
    "name": "Greenleaf Bakery 2",
    "businessHours": [
      {
        "day": "SUNDAY",
        "slots": null,
        "specialDate": null,
        "type": "CLOSED"
      },
      {
        "day": "MONDAY",
        "slots": [
          {
            "end": "12:00pm",
            "start": "08:00am"
          },
          {
            "end": "06:00pm",
            "start": "01:00pm"
          }
        ],
        "specialDate": null,
        "type": "OPEN"
      },
      {
        "day": "TUESDAY",
        "slots": [
          {
            "end": "06:00pm",
            "start": "08:00am"
          }
        ],
        "specialDate": null,
        "type": "OPEN"
      },
      {
        "day": "WEDNESDAY",
        "slots": [
          {
            "end": "06:00pm",
            "start": "08:00am"
          }
        ],
        "specialDate": null,
        "type": "OPEN"
      },
      {
        "day": "THURSDAY",
        "slots": [
          {
            "end": "06:00pm",
            "start": "08:00am"
          }
        ],
        "specialDate": null,
        "type": "OPEN"
      },
      {
        "day": "FRIDAY",
        "slots": [
          {
            "end": "06:00pm",
            "start": "08:00am"
          }
        ],
        "specialDate": null,
        "type": "OPEN"
      },
      {
        "day": "SATURDAY",
        "slots": [
          {
            "end": "04:00pm",
            "start": "08:00am"
          }
        ],
        "specialDate": null,
        "type": "OPEN"
      },
      {
        "day": "SPECIAL",
        "slots": [
          {
            "end": "04:00pm",
            "start": "08:00am"
          }
        ],
        "specialDate": "2025-07-12",
        "type": "OPEN"
      }
    ],
    "placeActionLinks": [
      {
        "placeActionType": "FOOD_ORDERING",
        "uri": "https://order.example.com",
        "name": "<link-name-if-synced>",
        "action": "delete"
      },
      {
        "placeActionType": "FOOD_ORDERING",
        "uri": "https://new-order.example.com",
        "isPreferred": true,
        "action": "add"
      },
      {
        "placeActionType": "FOOD_ORDERING",
        "uri": "https://ordering.sample_discovered_url.com",
        "isPreferred": false,
        "action": "add"
      }
    ]
  }
}'
```

## Responses

| Status | Description |
| --- | --- |
| `200` | Location created successfully |
| `400` |  |
