API Reference

The Waveboard REST API gives you full access to your clients, projects, tasks, and time entries. Authenticate with API keys, paginate results, and filter data exactly how you need it.

Base URL:https://waveboard.pipewave.de/api/v1

Authentication

All API requests require authentication via a Bearer token. Generate API keys in Settings → API Keys.

curl -H "Authorization: Bearer sk_live_abc123..." \
  https://waveboard.pipewave.de/api/v1/clients
Keep your API keys secure. Never expose them in client-side code. API keys provide full access to your account data. Use environment variables in production.

Response Format

All responses use a consistent JSON structure. Single resources are wrapped in a data object, lists include a meta object with the total count.

Single Resource
{
  "data": {
    "id": "uuid",
    "name": "Resource",
    ...
  }
}
List Response
{
  "data": [{ ... }, { ... }],
  "meta": {
    "total": 42
  }
}

Error Handling

Errors return a consistent structure with an error code and human-readable message.

{
  "error": {
    "code": "NOT_FOUND",
    "message": "The requested resource was not found"
  }
}
StatusCodeDescription
400BAD_REQUESTInvalid request parameters
401UNAUTHORIZEDMissing or invalid API key
403FORBIDDENInsufficient permissions
404NOT_FOUNDResource not found
422VALIDATION_ERRORRequest body validation failed
500INTERNAL_ERRORUnexpected server error

Pagination

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

GET /api/v1/tasks?limit=20&offset=40

// Returns items 41-60 from the total result set
// Default limit: 50  |  Max limit: 100

Clients

Manage your client list. Each client can have linked contacts, projects, invoices, and time entries.

Contacts

Manage contacts linked to your clients. Each contact belongs to a single client and can be marked as the primary point of contact.

Projects

Projects are linked to clients and contain kanban boards, tasks, labels, and modules. Each project can have its own billing configuration.

Tasks

Tasks live inside project board columns and can be organized with priorities, labels, modules, and due dates.

Task Comments

Add, update, and delete comments on tasks. Comments are ordered chronologically and support rich text content.

Task Labels

Assign and remove project labels from individual tasks. Labels must first be created on the project before they can be assigned to tasks.

Time Entries

Track time spent on tasks and projects. Time entries can be linked to tasks for accurate billing. Includes a live timer that can be started and stopped.

Invoices

Create and manage invoices linked to clients. Invoices include line items, tax rates, and payment info. Invoice numbers are auto-generated.

Today (Focus)

The Today Board lets you pull tasks from any project into a focused daily view. Plan your day with a cross-project task list.

Company Profile

Manage your company profile used for invoices and branding. Includes address, banking details, and default invoice settings. A single profile per account.

Need an API key?

Log in to Waveboard and navigate to Settings → API to generate your keys.