Invite a colleague
POST
/storefront/sites/{host}/account/customers/{customerId}/invitations
const url = 'https://example.com/storefront/sites/northgate.shop.getbottle.app/account/customers/019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f/invitations';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"email":"hello@example.com","role":"manager"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/storefront/sites/northgate.shop.getbottle.app/account/customers/019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f/invitations \ --header 'Content-Type: application/json' \ --data '{ "email": "hello@example.com", "role": "manager" }'Deliberately without a staff session: a shopper on the business’s own shop. A manager asks somebody to buy for this customer with their own sign-in and a role. They are emailed a link that works for 7 days.
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”host
required
string
Example
northgate.shop.getbottle.appcustomerId
required
UUID v7
string format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8fUUID v7
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
email
required
string format: email
role
required
Manager: orders, sees invoices, invites and removes colleagues. buyer: orders and sees their own orders. accounts: invoices and statements, cannot order.
string
Responses
Section titled “Responses”Invited
Media typeapplication/json
object
id
required
UUID v7
string format: uuid
email
required
string
role
required
Manager: orders, sees invoices, invites and removes colleagues. buyer: orders and sees their own orders. accounts: invoices and statements, cannot order.
string
expiresAt
required
string format: date-time
createdAt
required
string format: date-time
Example
{ "id": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "role": "manager"}Refused: the message says why
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Not signed in
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Not from the shop itself, or the email is not confirmed yet
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}Not a shop. No body.
A real shop not selling now (shop_closed)
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
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string
Example
{ "error": "validation", "issues": [ { "path": "email", "message": "Invalid email" } ]}Too many tries
Media typeapplication/json
object
error
required
string
message
required
string
Example
{ "error": "not_found", "message": "Customer not found"}