Employee.SignIn
Try it in Swagger
Endpoint
- Method:
POST
- Route:
Employee/SignIn
- Authentication:
Anonymous
Request Schema
| Header |
Required |
Notes |
X-Api-Key |
Required when tenant is not resolved by subdomain |
Tenant resolution still applies unless the request is exempted by middleware. |
This endpoint does not require Authorization: Bearer {token}. The returned token is used on subsequent authorized requests.
JSON Body
Body type: EmployeeSignInRequest
| Field |
Type |
Required |
Max Length |
Notes |
userId |
string |
Yes |
|
Server check-in user id (Server.ServerCheckInUserID). |
password |
string |
Yes |
|
Server check-in password (Server.ServerCheckInPassword). |
Request Sample
{
"userId": "JPOLANCO",
"password": "..."
}
Expected Response Schema
Status Codes
| Status |
Notes |
200 OK |
Employee authenticated and a Bearer token was issued. |
400 Bad Request |
userId or password is missing. |
401 Unauthorized |
Invalid credentials, missing tenant, or the tenant cannot access the API. |
Success Body
Response type: EmployeeSignInResponse
| Field |
Type |
Required |
Max Length |
Notes |
token |
string |
Yes |
|
JWT used as Authorization: Bearer {token}. |
expiresInMinutes |
int |
Yes |
|
Employee tokens expire after 480 minutes. |
employeeCode |
string |
Yes |
|
Server.Code for the authenticated employee. |
employeeName |
string |
Yes |
|
Server.Name for the authenticated employee. |
Response Sample
{
"token": "jwt-token-value",
"expiresInMinutes": 480,
"employeeCode": "1005",
"employeeName": "JUAN POLANCO"
}
Error Sample
{
"message": "Invalid credentials"
}