Authentication
Authenticate using email/password or PIN (for POS terminals). All requests require a Bearer token.
POST
/auth/registerRegister a new organization
{
"email": "string (email)",
"password": "string (min 8 chars)",
"firstName": "string",
"lastName": "string",
"organizationName": "string",
"organizationSlug": "string (optional)"
}POST
/auth/loginLogin with email and password
{
"email": "string (email)",
"password": "string"
}POST
/auth/pin-loginQuick login via PIN (POS terminals)
{
"pin": "string (4-6 digits)",
"locationId": "uuid"
}POST
/auth/refreshRefresh authentication token
{
"refreshToken": "string"
}POST
/auth/logoutLogout user
{
"refreshToken": "string (optional)"
}POST
/auth/set-pinSet user PIN
{
"pin": "string (4-6 digits)"
}POST
/auth/users/{userId}/reset-pinReset user PIN (Admin/Owner only)
{}