Locations

Location CRUD + account-user listing.

Location CRUD + account-user listing. Partners can also call these via account-owner impersonation; account owners use them directly with their own login.

Prerequisites

  • A bearer token in the Authorization header. Any endpoint that needs no token says so on its own page.
  • The id of each record the call targets. Every endpoint page lists the ids it needs.

Errors

StatusMeaning
401The bearer token is missing, expired or invalid
403The token is valid but the record sits outside your account
422The request failed validation — the response names the fields
500Unexpected server error

Individual endpoints may return more; each page lists its own.

Endpoints

MethodEndpointDescription
GETPartner-wide location listGet a paginated list of all store locations under the authenticated partner (aggregated across every account the partner owns), each row joined to its account name, address, and active-plan name + dates.
POSTAccount-user location list (POST)Returns a paginated list of stores accessible to the authenticated user, each row joined out to full location, account, and geographic detail (city, then state, then country) plus the active store_plan with its plan features, and a generated connect_page_url.
GETAccount-user location list (GET dropdown)Get a flat label/value list of the stores the authenticated user can access, for dropdowns.
POSTCreate locationCreate a new store location under an account in one transaction: a bundle_id=2 location-account record + its company options, the store row, and a store_options row (inheriting who_will_pay).
POSTEdit locationUpdate a store and its paired location-account record together (name, storeid, client_location_id, address, zip, city, site_url, phone, company_phone).
GETStore DetailsGet a single store with its account name, location detail, and active subscription.
GETBulk Upload Location Sample FileGet a download URL for the sample spreadsheet used by the bulk location upload.
POSTImport Locations Excel (Account – update existing)Upload an Excel file (first sheet only) and updates existing locations belonging to the authenticated account — matching each row by location_id against the location's saucode, then writing the store name/storeid plus the location-account company's name/address/city/zip.
POSTBulk Upload Locations (request verification)Accepts an Excel file of locations and an account_id (Account), validates the header row and every data row, stores the file to S3, and emails the admin team to verify before any locations are created.
POSTImport Locations (admin – create verified)Admin "create verified" import: validates the same Excel file/header/rows, then for each row persists an RsImportLocation record (company_id = account_id, location_name, raw row_data JSON) and dispatches a CreateLocation job to actually create the location asynchronously.