List organization locations
const url = 'https://apisandbox.puurk.com/organizations/example/locations';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://apisandbox.puurk.com/organizations/example/locations \ --header 'Authorization: Bearer <token>'Returns every location of an organization. The one with is_primary true is the location onboarding reads for business_profile_complete and sales_tax_set.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Organization ID
Responses
Section titled “Responses”Successful operation
object
A physical location of an organization. Onboarding reads the primary location: business_profile_complete needs ein, a logo and a location with is_primary true, and sales_tax_set needs sales_tax_rate on that location.
Every property is nullable — a location written before these endpoints existed may be missing any of them.
object
Unique identifier for the location
Organization ID
External identifier
Two-letter US state or territory code. Accepted in any case on a write and stored upper-cased — ca is read back as CA.
12345 or 12345-6789
Exactly one location per organization is primary. The first location created is primary automatically.
Decimal fraction between 0 and 1 — 0.0825 for 8.25%, not 8.25.
Set by Puurk; never accepted from a request body.
Set by Puurk; never accepted from a request body.
Example
{ "locations": [ { "name": "Main Street", "address_line_1": "1 Main St", "address_line_2": "Suite 200", "city": "Austin", "state": "TX", "zip": "78701", "phone_number": "5125551234", "email_address": "main@example.com", "sales_tax_rate": 0.0825 } ]}Unauthorized
forbidden — the token lacks the read action on organizations for this organization. Scope is checked before existence, so an unauthorized caller gets this rather than a 404.
The standard error body. error is a stable, machine-readable code — branch on it rather than on message, which is for humans and may change.
object
Machine-readable error code.
Human-readable detail.
Example
{ "error": "merchant_account_missing", "message": "The organization has no merchant account. Complete Stripe Connect onboarding for this organization before generating pricing."}not_found — the organization does not exist.
The standard error body. error is a stable, machine-readable code — branch on it rather than on message, which is for humans and may change.
object
Machine-readable error code.
Human-readable detail.
Example
{ "error": "merchant_account_missing", "message": "The organization has no merchant account. Complete Stripe Connect onboarding for this organization before generating pricing."}