The /employees endpoint manages employee records - the central identity for tip recipients on the Aplauso platform.

Create an Employee

POST /v2/employees
Content-Type: application/json
Authorization: Bearer <idToken>

Request

{
  "propertyId": "prop456",
  "organizationId": "org789",
  "firstName": "Maria",
  "lastName": "Garcia",
  "email": "maria@hotel.com",
  "phone": "+13125551234",
  "position": "Housekeeper",
  "departmentId": "dept111",
  "outletId": "out222",
  "firebaseUid": "firebase-uid-string",
  "environment": "live"
}

Auto-Generated Fields

FieldDescription
shortCode6-character alphanumeric code derived from the employeeId; used in QR code URLs
employmentInviteCode8-character invite code for onboarding (see Invite Codes)

Response

{
  "success": true,
  "employeeId": "emp_xxxxxxxxxxx",
  "shortCode": "MARIA1",
  "employee": { ... }
}

Look Up an Employee by Short Code

Short codes are embedded in QR code URLs (k.aplauso.io/{shortCode}). To resolve a short code to a full employee record:

GET /v2/employees?shortCode=MARIA1&environment=live

Response

{
  "employee": {
    "employeeId": "emp_xxxxxxxxxxx",
    "firstName": "Maria",
    "lastName": "Garcia",
    "shortCode": "MARIA1",
    "position": "Housekeeper",
    "propertyId": "prop456",
    "status": 10
  }
}

Get the Current User's Employee Record

GET /v2/employees?me=true&environment=live
Authorization: Bearer <idToken>

Returns the employee record linked to the authenticated user's Firebase UID. If the user has multiple employee records across properties, this returns the active one based on users.activeEmployeeId. Also sets activeEmployeeId on the user document on first call.

Query Employees

GET /v2/employees?propertyId=prop456&environment=live
Authorization: Bearer <idToken>

Query Parameters

ParameterDescription
me=trueReturn current authenticated user's employee record
propertyIdAll employees at a property
departmentIdEmployees in a specific department
employeeIdSingle employee by ID
shortCodeSingle employee by QR short code
environmentlive / sandbox / demo

Employee Status Codes

StatusValueMeaning
Active10Employee is active and receiving tips
Inactive20Temporarily disabled
Deleted30Permanently removed

Linking Firebase Users to Employees

Pass firebaseUid when creating an employee to link it to an existing Firebase Auth user. If the employee was created before the user signed up, the link is created automatically when the user signs in for the first time and enters their invite code.

An employee without a firebaseUid is a placeholder invite record - it will appear in the Aplauso management dashboard but cannot log in or receive push notifications until a user accepts the invite.