HomeDevelopersREST API

REST API

Complete REST API documentation for WorkSkedge. Access all resources programmatically with simple HTTP requests.

REST API Overview

The WorkSkedge REST API provides comprehensive programmatic access to all your construction management data. Use standard HTTP methods to create, read, update, and delete resources across 8 major domains.

Base URLhttps://app.workskedge.com/api/v1
AuthenticationAPI Key via X-API-Key header
FormatJSON request and response bodies
SecuritySee the Authentication tab for security best practices

Quick Start

Get started with your first API request in three simple steps:

1

Get API Key

Generate your API key from WorkSkedge Settings → Apps & Integrations
2

Make Request

Include your key in the X-API-Key header with each request
3

Handle Response

Process JSON responses and handle standard HTTP status codes

Example Request

GET /api/v1/projectsbash
curl -X GET "https://app.workskedge.com/api/v1/projects?limit=10&offset=0" \
  -H "X-API-Key: wsk_your_api_key_here" \
  -H "Content-Type: application/json"
Responsejson
{
  "data": [
    {
      "id": "proj_123",
      "name": "Downtown Office Renovation",
      "status": "active",
      "customer_id": "cust_456",
      "start_date": "2024-01-15",
      "created_at": "2024-01-10T08:00:00Z"
    }
  ],
  "pagination": { "limit": 10, "offset": 0, "total": 42 }
}

Resource Domains

Access all your WorkSkedge data through 8 comprehensive resource domains:

People Management

Employees, Contacts

  • GET/POST/PUT/DELETE /employees
  • GET/POST/PUT/DELETE /contacts

Work Management

Projects, Work Orders, Schedules

  • GET/POST/PUT/DELETE /projects
  • GET/POST/PUT/DELETE /work-orders
  • GET /schedules

Time & Attendance

Timesheets, Time Off

  • GET/POST/PUT/DELETE /timesheets
  • GET/POST/PUT/DELETE /time-off

Supply Chain

Vendors, Locations, Purchase Orders

  • GET/POST/PUT/DELETE /vendors
  • GET/POST/PUT/DELETE /vendor-locations
  • GET/POST/PUT /purchase-orders

Business Data

Customers, Locations

  • GET/POST/PUT/DELETE /customers
  • GET/POST/PUT/DELETE /locations

Reporting

Daily Reports, Completion Reports

  • GET/POST /daily-reports
  • GET/POST /completion-reports

Pagination

All list endpoints support pagination using limit and offset query parameters.

limitNumber of records per page. Default 50, Maximum 100
offsetNumber of records to skip. Default 0
Paginated responsejson
{
  "data": [/* ... */],
  "pagination": { "limit": 50, "offset": 0, "total": 156 }
}

Error Handling

The API uses standard HTTP status codes and returns detailed error messages in JSON format.

200 OKRequest succeeded
201 CreatedResource created successfully
400 Bad RequestInvalid request parameters or body
401 UnauthorizedMissing or invalid API key
403 ForbiddenAPI key lacks required permissions
404 Not FoundResource does not exist
429 Too Many RequestsRate limit exceeded
500 Internal Server ErrorUnexpected server error
Error responsejson
{
  "error": {
    "code": "INVALID_REQUEST",
    "message": "The 'start_date' field is required",
    "details": { "field": "start_date", "reason": "Field is required but was not provided" }
  }
}