Skip to content

Lock a business

POST
/console/businesses/{id}/lock
curl --request POST \
--url https://example.com/console/businesses/019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f/lock \
--header 'Content-Type: application/json' \
--cookie bottle.session_token=<bottle.session_token> \
--data '{ "reason": "example" }'

Every request for the business is refused from now on, whoever makes it and however they got in, until it is unlocked. The reason is for staff and is never shown to the customer.

id
required

UUID v7

string format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f

UUID v7

Media typeapplication/json
object
reason
required
string
>= 1 characters <= 500 characters
Examplegenerated
{
"reason": "example"
}

Locked

Media typeapplication/json
object
id
required

UUID v7

string format: uuid
name
required
string
slug
required
string
createdAt
required
string format: date-time
subscription
required
object
plan
required
string
Allowed values: starter round depot
status
required
string
Allowed values: trialing active past_due unpaid canceled incomplete incomplete_expired paused none
inGoodStanding
required
boolean
manageable
required
boolean
trialEndsAt
required
string | null format: date-time
currentPeriodEnd
required
string | null format: date-time
cancelAt
required
string | null format: date-time
pendingPlan
required
string | null
Allowed values: starter round depot
pendingPlanAt
required
string | null format: date-time
rateLimits
required
object
requestsPerMinute
required
integer
> 0
heavyPerMinute
required
integer
> 0
discount
required
object
percentOff
required
integer
>= 1 <= 100
until
required
string | null format: date-time
customPrice
required
object
monthlyPence
required
integer
from
required
string | null format: date-time
vehiclesUsed
required
integer
limits
required
object
requestsPerMinute
required
integer
> 0
heavyPerMinute
required
integer
> 0
vehicleLimit
required
integer | null
vehicles
required
integer
members
required
integer
people
required
Array<object>
object
userId
required
string
name
required
string
email
required
string
role
required

Owner: billing, deleting the tenant, full control of members. admin: all operational work and may manage drivers and admins. driver: their own round only.

string
Allowed values: owner admin driver
supportAccess
required
object
level
required
string
Allowed values: none view act
until
required
string | null format: date-time
setByName
required
string | null
lockedAt
required
string | null format: date-time
lockedReason
required
string | null
Example
{
"id": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f",
"subscription": {
"plan": "starter",
"status": "trialing",
"pendingPlan": "starter"
},
"people": [
{
"role": "owner"
}
],
"supportAccess": {
"level": "none"
}
}

Not signed in

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Not Bottle staff, no two-step sign-in, or a console role too low for this

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Not found

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Validation failed

Media typeapplication/json
object
error
required
string
Allowed values: validation
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string
Example
{
"error": "validation",
"issues": [
{
"path": "email",
"message": "Invalid email"
}
]
}