Create Employee
Creates a new employee record in the system.
Authentication
This endpoint requires authentication. See Authentication for details.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| firstName | string | Yes | The first name of the employee |
| lastName | string | Yes | The last name of the employee |
| string | Yes | Employee's email address (must be unique) | |
| phone | string | Yes | Phone number with country code |
| governmentDNI | string | Yes | Government-issued identification number |
| cpf | string | No | Brazilian tax identification number |
| address | string | Yes | Primary address of the employee |
| addressExtraInfo | string | No | Additional address information |
| postCode | string | Yes | Postal/ZIP code |
| countryCode | string | Yes | Two-letter ISO country code |
| companyCode | string | Yes | Company code for the employee's company |
| city | string | Yes | City of residence |
Request
Production URL: https://orchestrator.tecspal.com/
Sandbox URL: https://tecspal-orchestrator.sandbox.lexartlabs.uy/
Endpoint: POST /employees
Example Request
{
"request": "employees",
"vendor": "tecspal",
"verb": "POST",
"data": {
"firstName": "John",
"lastName": "Doe",
"email": "john_doe@email.com",
"phone": "+598 99999999",
"governmentDNI": "DNI123456",
"address": "Plaza Independencia 848, Montevidéu, Uruguai",
"addressExtraInfo": "Praça Independência",
"postCode": "11100",
"countryCode": "UY",
"companyCode": "DM1",
"city": "Montevidéu"
}
}
Response Schema
| Property | Type | Description |
|---|---|---|
| statusCode | number | HTTP status code of the response |
| message | string | Description of the response status |
| envelop | object | Object containing the created employee data |
Employee Properties
| Property | Type | Description |
|---|---|---|
| id | string | Unique identifier of the employee |
| createdAt | string | Date/time when the employee was created (ISO 8601) |
| updatedAt | string | Date/time when the employee was last updated (ISO 8601) |
| firstName | string | First name of the employee |
| lastName | string | Last name of the employee |
| string | Email address of the employee | |
| status | string | Current status of the employee (e.g., "ACTIVE") |
| phone | string | Phone number including country code |
| governmentDNI | string | Government-issued identification number |
| cpf | string | null | Brazilian ID (nullable) |
| address | string | Primary address of the employee |
| addressExtraInfo | string | Additional address information (nullable) |
| postCode | string | Postal or ZIP code |
| countryCode | string | Country code in ISO 3166-1 alpha-2 format |
Example Response
{
"statusCode": 201,
"message": "Employee created successfully",
"envelop": {
"id": "0a86b6c2-7373-42fa-a44a-70857cef0f90",
"createdAt": "2025-04-10T14:58:05.119Z",
"updatedAt": "2025-04-10T14:58:05.119Z",
"firstName": "John",
"lastName": "Doe",
"email": "john_doe@email.com",
"status": "ACTIVE",
"phone": "+598 99999999",
"governmentDNI": "DNI123456",
"cpf": null,
"address": "Plaza Independencia 848, Montevidéu, Uruguai",
"addressExtraInfo": "Praça Independência",
"postCode": "11100",
"countryCode": "UY"
}
}
Error Responses
Bad Request (400)
{
"statusCode": 400,
"message": "Invalid request data",
"error": "Bad Request",
"details": [
{
"field": "email",
"message": "Invalid email format"
}
]
}
Unauthorized (401)
{
"statusCode": 401,
"message": "Unauthorized access",
"error": "Unauthorized"
}
Conflict (409)
{
"statusCode": 409,
"message": "Employee with this email already exists",
"error": "Conflict"
}
Notes
- Combination of
companyIdandemailaddresses must be unique across the system. - Phone numbers should include the country code and + symbol.
- Once created, employees are set to "ACTIVE" status by default.