Home

Documentation

Last updated: April 18, 2026

Quick start

SimpleBoard is a visual Kanban board — you organize work by dragging cards between columns. No onboarding, no tutorials required. Get started in four steps:

  1. Sign up at app.simpleboard.pl/register — no credit card needed.
  2. Create your first board — click "+" on the home screen, enter a name, and you're done.
  3. Invite your team — copy an invite link or enter email addresses.
  4. Add cards — click "+" in the top-left of a column or "+ ADD CARD" at the bottom.
From login to first card in under a minute.

The trial lasts 30 days and gives full access to all features. No credit card required. After it ends you can subscribe — 1€/user/month or 10€/user/year.

Boards & columns

A board is a workspace for one project, team, or client. You can have an unlimited number of boards.

Creating a board

On the home screen click "+", enter a name, and optionally pick a color or icon. The board starts with default columns: Backlog, In Progress, Done — rename or rearrange them freely.

Column setup tailored to your exact workflow.

Columns

  • Add a column by clicking "+ Add column" at the end of the board.
  • Rename a column via the ⋮ menu on its header, then select "Rename".
  • Reorder columns by dragging them (grab the header).
  • Mark a column as "Done" via the ⋮ menu — cards in that column count as completed in analytics.

Board permissions

RoleWhat they can do
AdminManages the board: settings, invitations, role changes, deleting columns and cards
ParticipantAdds and edits cards, comments, logs time

Cards

A card is a single task. Click a card to open its detail panel.

What you can add to a card

  • Title and description — rich text editor.
  • Assignee — one team member responsible for the task.
  • Due date — the card is highlighted when the deadline passes.
  • Labels — color-coded tags (e.g. "Bug", "Feature").
  • Time tracking — a timer or manual time entry directly on the card (when enabled for the board).
  • Comments — discussion in the context of the task.
All task details in one place.

Moving cards

Drag a card between columns using drag & drop. On mobile, swipe a card left or right to move it to the adjacent column.

Drag & drop — move the card to wherever it belongs right now.

Time tracking

SimpleBoard lets you track time spent on each task — directly on cards, without separate timesheet apps.

Timer on a card

Open a card and click "Start timer" (clock icon). The timer runs in the background — switch cards and boards freely. Click "Stop" to save. The entry appears in the card's time log, recorded to the second.

Tip: Only one timer can run per account at a time. Starting a timer on another card automatically stops the previous one and asks whether to save the time.

The timer runs in the background — navigate the app freely.

Manual time entry

If you forget to start the timer — add time manually. On the card, in the "Time tracking" section, click "Add entry" and enter time in minutes or hours. You can also set the entry date — useful for filling in historical records.

Visibility: Time entries are visible to all Editors and Admins on the board.

Team & invitations

Click the "Invite member" icon (👤+) in the board header. Enter an email address and choose a role (Admin or Participant) — the invitation is sent by email. You can also copy the invitation link from the list of pending invites and share it directly.

To manage existing members, click the avatar group in the board header. In the members panel, Admins can change roles or remove participants.

Storage

Each administrator account comes with 10 GB of storage for attachments and files. The limit is shared across all boards within the account.

Current usage is shown in Settings → Account → Storage.

Need more space? Contact us at hello@simpleboard.pl — we handle storage upgrades individually.

Notifications

SimpleBoard notifies you when: you are assigned to a card, someone adds a comment to a card you are involved with, or a card is moved to another column.

Configure in Settings → Notifications. Available channels: in-app and email.

API

SimpleBoard provides a REST API — build your own integrations, automations, and internal tools. All responses are JSON.

Full interactive endpoint documentation is available at API Reference → — try requests directly from your browser.

Authentication

Generate an API key in Settings → API → New key. Pass it in every request header:

Authorization: Bearer your_api_key

Security: Your API key has the same permissions as your account. Do not share it publicly or commit it to a repository. You can revoke and regenerate a key at any time.

Base URL

https://api.simpleboard.pl/v1

Rate limits

PlanRequest limit
Trial / Monthly1,000 requests / hour
Annual5,000 requests / hour

Response headers X-RateLimit-Remaining and X-RateLimit-Reset show remaining requests and reset time.

Endpoints — Boards

MethodEndpointDescription
GET/boardsList all your boards
GET/boards/{id}Board details
POST/boardsCreate a new board
PATCH/boards/{id}Update a board
DELETE/boards/{id}Delete a board

Endpoints — Cards

MethodEndpointDescription
GET/boards/{id}/cardsList cards on a board
GET/cards/{id}Card details
POST/boards/{id}/cardsCreate a card
PATCH/cards/{id}Update a card
DELETE/cards/{id}Delete a card
POST/cards/{id}/time-entriesAdd a time entry
GET/cards/{id}/time-entriesList time entries

Examples

Fetch all boards:

curl https://api.simpleboard.pl/v1/boards \
  -H "Authorization: Bearer your_api_key"

Response:

{
  "data": [
    {
      "id": "brd_01j9xk2m",
      "name": "Q2 Sprint",
      "created_at": "2026-03-01T10:00:00Z",
      "members_count": 5
    }
  ],
  "meta": { "total": 1 }
}

Create a new card:

curl -X POST https://api.simpleboard.pl/v1/boards/brd_01j9xk2m/cards \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "title": "New task", "column_id": "col_backlog", "assignee_ids": ["usr_abc"] }'

Log a time entry:

curl -X POST https://api.simpleboard.pl/v1/cards/crd_xyz/time-entries \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "duration_seconds": 5400, "date": "2026-04-18", "note": "Implementation" }'

Webhooks

Webhooks let SimpleBoard actively notify your system about events — instead of polling the API, SimpleBoard sends a POST request to your URL whenever something happens.

Creating a webhook

  1. On the board page, click the webhook icon in the header (visible to admins).
  2. Click "Add webhook" and enter your endpoint URL (must be publicly accessible via HTTPS).
  3. Select the events you want to listen to.
  4. Optionally set a signing secret for request verification.
  5. Click "Add" — the webhook is active immediately.

Events

EventWhen it fires
card.createdA new card was created
card.updatedCard title, description, due date or labels changed
card.movedCard moved to another column
card.assignedUser assigned to or unassigned from a card
card.completedCard moved to a "Done" column
card.deletedCard deleted
comment.createdComment added to a card
time_entry.createdTime entry added
member.joinedUser joined the board
member.removedUser removed from the board

Payload format

{
  "event": "card.moved",
  "timestamp": "2026-04-18T14:32:10Z",
  "board_id": "brd_01j9xk2m",
  "data": {
    "card_id": "crd_xyz123",
    "card_title": "Implement login",
    "from_column": "In Progress",
    "to_column": "Done",
    "moved_by": {
      "id": "usr_abc",
      "name": "John Smith"
    }
  }
}

Signature verification

If you set a secret, every request includes X-SimpleBoard-Signature with an HMAC-SHA256 signature:

const crypto = require('crypto');

function verifySignature(payload, secret, signature) {
  const expected = crypto
    .createHmac('sha256', secret)
    .update(payload)
    .digest('hex');
  return `sha256=${expected}` === signature;
}

// In an Express handler:
app.post('/webhook', express.raw({ type: 'application/json' }), (req, res) => {
  const sig = req.headers['x-simpleboard-signature'];
  if (!verifySignature(req.body, process.env.WEBHOOK_SECRET, sig)) {
    return res.status(401).send('Invalid signature');
  }
  const event = JSON.parse(req.body);
  console.log('Received event:', event.event);
  res.sendStatus(200);
});

Tip: Your endpoint must respond with 2xx within 10 seconds. On failure SimpleBoard retries 3 times with exponential backoff (1 min, 5 min, 30 min). After 3 failed attempts the webhook is deactivated and you receive an email notification.

Pricing & billing

After signing up you get 30 days of free access to all features. No credit card required. When the trial ends, boards switch to read-only — your data is safe.

PlanPriceBilling
Monthly1€ / userEvery month, cancel anytime
Annual10€ / userOnce a year (~17% cheaper)

Cancel anytime in Settings → Billing. You keep access until the end of the paid period.

Help & contact