Fluent Boards REST API
Welcome to the Fluent Boards REST API documentation. This guide will help you integrate with Fluent Boards using RESTful HTTP requests to manage boards, tasks, stages, and more.
Overview
The Fluent Boards REST API provides programmatic access to your Fluent Boards data through standard HTTP methods. You can use this API to:
- Manage Boards: Create, read, update, archive and delete boards
- Handle Tasks: Manage tasks, subtasks, assignees, comments and attachments
- Control Stages: Organize tasks with custom stages and workflows
- Administer: Manage members and roles, webhooks, imports and global settings
Endpoints marked Pro need Fluent Boards Pro. Roadmap endpoints need the Fluent Roadmap add-on.
Base URL
All API requests should be made to:
https://yourdomain.com/wp-json/fluent-boards/v2Quick Start
- Set up authentication with a WordPress Application Password.
- List your boards:
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects" \
-u "USERNAME:APPLICATION_PASSWORD"Resources
| Resource | What it covers |
|---|---|
| Boards | Boards (/projects): list, create, update, archive, duplicate |
| Tasks | Tasks on a board: create, update, move, clone |
| Subtasks | Subtasks and subtask groups (Pro) |
| Stages | Board stages (columns) |
| Labels | Board labels and task labels |
| Comments | Task comments and replies |
| Attachments | Task attachments (Pro) |
| Custom Fields | Board custom fields and task values (Pro) |
| Folders | Board folders |
| Users & Members | Board members, invitations, board roles, member profiles |
| Managers & Roles | Global admins and bulk board access (Pro) |
| Notifications | User notifications and notification settings |
| Activities | Board, task and member activity logs |
| Time Tracking | Time entries and timesheets (Pro) |
| Templates | Board and task templates (Pro) |
| Roadmaps | Roadmap ideas, votes and comments (Fluent Roadmap add-on) |
| Reports | Overview, tasks, activity, roadmap and timesheet reports |
| Webhooks | Incoming and outgoing webhooks |
| Cloud Storage | File storage driver settings (Pro) |
| Import & Export | JSON, Trello, Asana and CSV imports |
| Admin Settings | Modules, general settings, MCP, license |
| AI | AI writing assistant and task AI actions |
| Dashboard & Utilities | Dashboard tasks, global search, selector options |
| Public Boards | Read-only access to boards shared publicly |
To add your own endpoints under the same namespace, see Extending the REST API.
Response Format
Responses are JSON. There is no shared envelope: each endpoint returns the object its controller builds, so the top-level keys differ per endpoint. For example, GET /projects/{board_id}/labels returns {"labels": [...]}, and POST /projects/{board_id}/user/{user_id}/make-manager returns:
{
"message": "Role updated successfully",
"member": {
"ID": 5,
"display_name": "Jane Smith"
}
}Each endpoint page shows the exact keys. Paginated lists use the framework paginator, which includes current_page, data, per_page, total and last_page inside the key that holds the list (for example boards in GET /projects).
Error Handling
Errors use standard HTTP status codes. Their body depends on where the request failed:
{
"code": "rest_forbidden",
"message": "Sorry, you are not allowed to do that.",
"data": {
"status": 403
}
}{
"title": {
"required": "The title field is required."
}
}The first comes from WordPress when the permission check fails; the second is a 422 validation error. Most endpoint-specific errors return {"message": "..."}. See Common Error Responses for all formats.
Common HTTP Status Codes
| Code | Description |
|---|---|
| 200 | Success (also used for creates) |
| 400 | Bad Request |
| 401 | Not authenticated |
| 403 | Forbidden |
| 404 | Not Found |
| 409 | Conflict (for example, user already a board member) |
| 422 | Validation or business-rule error |
| 500 | Internal Server Error |
SDKs and Tools
We don't provide official SDKs. The API works with any HTTP client library:
- PHP: Guzzle, cURL,
wp_remote_request() - JavaScript: Axios, Fetch API
- Python: Requests
- Ruby: Net::HTTP, HTTParty
- Any language that supports HTTP requests
Support
For support and assistance:
- Documentation Issues: Submit a GitHub issue
- API Questions: Contact support
- Feature Requests/Suggestions: Community forum
What's Next?
Ready to start building? Begin with Authentication to set up your API access.