Skip to content
Bloomcount API
Esc
navigateopen⌘Jpreview

Create a staff member

Adds someone who can be assigned to events. Only name is required; a rate is what event labour costs are worked out from.

Avatars cannot be attached over the API, because an upload needs a signed URL this API does not hand out.

Errors

  • 422 staff_name_required — no name, or a blank one.
  • 422 invalid_rate — a negative rate.
POST/api/v1/staff
Authorization
AuthorizationBearer token (bloomcount_...) · headerrequired
Request body
requiredapplication/json
namestring
The person's name. Required to create.
hourlyRatenumber
Pay per hour in the tenant's currency, used to cost an event's labour. Must not be negative.
mileageRatenumber
Pay per mile in the tenant's currency, used to cost travel. Must not be negative.
addressstring
Where they travel from
emailstring
Contact email.
phonestring
Contact number.
companyNamestring
Their company
websitestring
Their website
Responses
201Created
staffIdstringrequired
namestringrequired
hourlyRatenumber | null
mileageRatenumber | null
addressstring | null
emailstring | null
phonestring | null
companyNamestring | null
websitestring | null
hasAccountbooleanrequired
True when this row belongs to a signed-in member. Those rows can't be deleted over the API.
401Missing or invalid API key, or revoked / expired.
errorstringrequired
403Authenticated, but the key lacks the required scope or the tenant has no API access.
errorstringrequired
422Request body or arguments failed validation.
errorstringrequired
429Per-minute rate limit (60/min) or per-month cap exceeded.
errorstringrequired
Try it
Server
Authorization
Bodyapplication/json
Request
curl -X POST "https://app.bloomcount.com/api/v1/staff" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "string",
  "hourlyRate": 0,
  "mileageRate": 0,
  "address": "string",
  "email": "string",
  "phone": "string",
  "companyName": "string",
  "website": "string"
}'
Response
{
  "staffId": "stf_r4t7v2x9z1b6n3q8w5y0m2k7",
  "name": "Priya Raman",
  "hourlyRate": 22.5,
  "mileageRate": 0.45,
  "address": null,
  "email": "priya@example.com",
  "phone": null,
  "companyName": null,
  "website": null,
  "hasAccount": false
}