API Documentation

Integrate your existing systems with VerticalSync using our powerful and simple REST API.

Authentication

All API requests must be authenticated using an API key. You can generate and manage your API key in the API Settings page.

Include your API key in the `Authorization` header of your requests, prefixed with "Bearer".

Authorization: Bearer YOUR_API_KEY

Available Endpoints

GET/api/v1/employees

Retrieve a list of all employees in your company.

curl -X GET 'https://your-app-domain.com/api/v1/employees' \
-H 'Authorization: Bearer YOUR_API_KEY'

Example Response (200 OK)


[
  {
    "id": "emp_12345",
    "name": "John Doe",
    "email": "john.doe@example.com",
    "role": "Software Engineer",
    "status": "Active",
    "departmentName": "Technology"
  },
  {
    "id": "emp_67890",
    "name": "Jane Smith",
    "email": "jane.smith@example.com",
    "role": "Product Manager",
    "status": "Active",
    "departmentName": "Product"
  }
]

POST/api/v1/employees

Create a new employee record. Note: This does not create a login account.

Request Body

  • name (string, required) - Full name of the employee.
  • email (string, required) - Unique email address.
  • role (string, required) - Job title or role.
  • departmentId (string, required) - ID of the department.
  • salary (number, required) - Annual salary or contract amount.
  • workerType (string, required) - Must be 'Salaried', 'Hourly', or 'Contractor'.

Example Request

curl -X POST 'https://your-app-domain.com/api/v1/employees' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '
{
  "name": "Richard Hendricks",
  "email": "richard.h@example.com",
  "role": "Software Engineer",
  "departmentId": "dept_abcde",
  "salary": 85000,
  "workerType": "Salaried"
}'

Example Response (201 Created)

{
  "success": true,
  "message": "Employee created successfully.",
  "employeeId": "new_emp_id_12345"
}