# Boards
The Boards API allows you to manage boards in Fluent Boards. You can create, read, update, and delete boards, as well as manage their members, stages, and settings.
# List All Boards
Retrieve a paginated list of boards.
HTTP Request
GET /wp-json/fluent-boards/v2/projects
 1
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects?per_page=10&page=1" \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD"
 1
2
2
# Parameters
| Parameter | Type | Default | Description | 
|---|---|---|---|
per_page |  integer | 10 | Number of boards per page | 
page |  integer | 1 | Page number for pagination | 
search |  string | - | Search boards by title | 
type |  string | - | Filter by board type (to-do, roadmap) | 
order_by |  string | id | Sort field (id, title, created_at) | 
order_type |  string | DESC | Sort direction (ASC, DESC) | 
# Example Response
{
  "boards": {
  "current_page": 1,
  "data": [
    {
      "id": 1,
        "title": "Sample Board",
      "type": "to-do",
      "background": {
          "color": "#2196F3",
          "id": "solid_1"
        },
        "settings": {
          "tasks_count": 15
        },
        "completed_tasks_count": "5",
        "users": [
          {
            "ID": 1,
            "user_login": "admin",
            "display_name": "Admin User",
            "role": "Admin",
            "photo": "https://secure.gravatar.com/avatar/example?s=128&d=mm&r=g"
          }
        ],
        "stages": [
          {
            "id": 1,
            "title": "To Do",
            "position": "1.00"
          }
        ]
      }
    ],
    "per_page": 20,
    "total": 1
  },
  "folder_mapping": []
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# Get a Single Board
Retrieve a specific board by ID.
HTTP Request
GET /wp-json/fluent-boards/v2/projects/{board_id}
 1
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects/{board_id}" \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD"
 1
2
2
# Example Response
{
  "board": {
    "id": 1,
    "title": "Sample Board",
    "type": "to-do",
    "background": {
      "color": "#2196F3",
      "id": "solid_1"
    },
    "settings": {
      "tasks_count": 15
    },
    "labelColor": {
      "green": "#4bce97",
      "blue": "#579dff",
      "red": "#f87168"
    },
    "labelColorText": {
      "green": "#1B2533",
      "blue": "#1B2533",
      "red": "#1B2533"
    },
    "users": [
      {
        "ID": 1,
        "user_login": "admin",
        "display_name": "Admin User",
        "role": "Admin"
      }
    ],
    "owner": {
      "ID": 1,
      "display_name": "Admin User"
    },
    "stages": [
      {
        "id": 1,
        "title": "To Do",
        "position": "1.00"
      },
      {
        "id": 2,
        "title": "In Progress",
        "position": "2.00"
      }
    ],
    "labels": [
      {
        "id": 1,
        "title": "bug",
        "bg_color": "#E6B0AA"
      },
      {
        "id": 2,
        "title": "feature",
        "bg_color": "#AED6F1"
      }
    ],
    "custom_fields": []
  }
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# Create a Board
Create a new board.
HTTP Request
POST /wp-json/fluent-boards/v2/projects
 1
# Request Body
| Parameter | Type | Required | Description | 
|---|---|---|---|
board[title] |  string | Yes | Board title | 
board[description] |  string | No | Board description | 
board[type] |  string | Yes | Board type (to-do, roadmap) | 
board[currency] |  string | No | Currency for the board | 
folder_id |  integer | No | Folder ID to add board to (Pro feature) | 
stages |  array | No | Custom stages for roadmap boards | 
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects" \
  -X POST \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD" \
  -H "Content-Type: application/json" \
  -d '{
    "board": {
      "title": "New Project Board",
      "description": "A new project board for development tasks",
      "type": "to-do"
    }
  }'
 1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# Example Response
{
  "message": "Board has been created successfully",
  "board": {
    "title": "New Project Board",
    "type": "to-do",
    "description": "A new project board for development tasks",
    "currency": "USD",
    "background": {
      "id": "solid_4",
      "is_image": false,
      "image_url": null,
      "color": "#5f27cd"
    },
    "created_by": 1,
    "id": 9,
    "meta": [],
    "isUserOnlyViewer": false
  }
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Update a Board
Update an existing board.
HTTP Request
PUT /wp-json/fluent-boards/v2/projects/{board_id}
 1
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects/{board_id}" \
  -X PUT \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Updated Board Title",
    "description": "Updated board description"
  }'
 1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# Request Body
| Parameter | Type | Required | Description | 
|---|---|---|---|
title |  string | Yes | Board title | 
description |  string | No | Board description | 
# Example Request
{
    "title": "Updated Board Title",
  "description": "Updated board description"
}
 1
2
3
4
2
3
4
# Example Response
{
  "message": "Board has been updated",
  "board": {
    "id": 9,
    "title": "Updated Board Title",
    "description": "Updated board description",
    "type": "to-do",
    "background": {
      "color": "#5f27cd"
    }
    // ... other board properties
  },
  "stages": [
    {
      "id": 96,
      "title": "Open",
      "position": "1.00"
      // ... other stage properties
    },
    {
      "id": 97,
      "title": "In Progress",
      "position": "2.00"
      // ... other stage properties
    },
    {
      "id": 98,
      "title": "Completed",
      "position": "3.00"
      // ... other stage properties
    }
  ]
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# Delete a Board
Delete a board.
HTTP Request
DELETE /wp-json/fluent-boards/v2/projects/{board_id}
 1
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects/{board_id}" \
  -X DELETE \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD"
 1
2
3
2
3
# Example Response
{
  "message": "Board deleted successfully"
}
 1
2
3
2
3
# Archive a Board
Archive a board .
HTTP Request
PUT /wp-json/fluent-boards/v2/projects/{board_id}/archive-board
 1
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects/{board_id}/archive-board" \
  -X PUT \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD"
 1
2
3
2
3
# Example Response
{
  "board": {
    "id": 9,
    "title": "Updated Board Title",
    "description": "Updated board description",
    "type": "to-do",
    "background": {
      "color": "#5f27cd"
    },
    "archived_at": "2025-08-06 06:40:05"
    // ... other board properties
  },
  "message": "Board has been archived successfully!"
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# Restore a Board
Restore an archived board.
HTTP Request
PUT /wp-json/fluent-boards/v2/projects/{board_id}/restore-board
 1
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects/{board_id}/restore-board" \
  -X PUT \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD"
 1
2
3
2
3
# Example Response
{
  "board": {
    "id": 9,
    "title": "Updated Board Title",
    "description": "Updated board description",
    "type": "to-do",
    "background": {
      "color": "#5f27cd"
    },
    "archived_at": null
    // ... other board properties
  },
  "message": "Board has been restored successfully!"
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# Duplicate a Board
Create a copy of an existing board.
HTTP Request
POST /wp-json/fluent-boards/v2/projects/{board_id}/duplicate-board
 1
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects/{board_id}/duplicate-board" \
  -X POST \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD" \
  -H "Content-Type: application/json" \
  -d '{
    "board": {"title": "Board Alpha - Copy"},
    "isWithTasks": "yes",
    "isWithLabels": "yes",
    "isWithTemplates": "no"
  }'
 1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# Request Body
| Parameter | Type | Required | Description | 
|---|---|---|---|
board[title] |  string | Yes | Title for the duplicated board | 
isWithTasks |  string | No | Whether to include tasks ("yes" or "no") | 
isWithLabels |  string | No | Whether to include labels ("yes" or "no") | 
isWithTemplates |  string | No | Whether to include templates ("yes" or "no") | 
# Example Request
{
  "board": {
    "title": "Board Alpha - Copy"
  },
  "isWithTasks": "yes",
  "isWithLabels": "yes",
  "isWithTemplates": "no"
}
 1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# Example Response
{
  "board": {
    "id": 10,
    "title": "Board Alpha - Copy",
    "type": "to-do",
    "background": {
      "color": "#5f27cd"
    },
    "created_by": 1
    // ... other board properties
  }
}
 1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# Get Board Members
Retrieve all members of a board.
HTTP Request
GET /wp-json/fluent-boards/v2/projects/{board_id}/users
 1
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects/{board_id}/users" \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD"
 1
2
2
# Example Response
{
  "users": [
    {
      "ID": 1,
      "display_name": "John Doe",
      "user_login": "john_doe",
      "email": "[email protected]",
      "photo": "https://secure.gravatar.com/avatar/...",
      "role": "member",
      "is_super": false,
      "is_wpadmin": true
    },
    {
      "ID": 2,
      "display_name": "Jane Smith",
      "user_login": "jane_smith",
      "email": "[email protected]",
      "photo": "https://secure.gravatar.com/avatar/...",
      "role": "member",
      "is_super": false,
      "is_wpadmin": false
    }
  ],
  "global_admins": []
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Get Board Activities
Retrieve recent activities for a board.
HTTP Request
GET /wp-json/fluent-boards/v2/projects/{board_id}/activities
 1
# Parameters
| Parameter | Type | Default | Description | 
|---|---|---|---|
per_page |  integer | 20 | Number of activities per page | 
page |  integer | 1 | Page number for pagination | 
# Example Request
curl "https://yourdomain.com/wp-json/fluent-boards/v2/projects/{board_id}/activities?per_page=40&page=1" \
  -H "Authorization: Basic API_USERNAME:API_PASSWORD"
 1
2
2
# Example Response
{
  "activities": {
  "current_page": 1,
  "data": [
    {
        "id": 538,
        "object_id": "3",
        "object_type": "board_activity",
        "action": "deleted",
        "column": "task",
        "old_value": "Updated Task Title",
        "new_value": null,
        "description": null,
        "created_by": "1",
        "settings": null,
        "created_at": "2025-08-04T09:23:52+00:00",
        "user": {
          "ID": 1,
          "display_name": "John Doe",
          "user_login": "john_doe",
          "email": "[email protected]",
          "photo": "https://secure.gravatar.com/avatar/..."
        }
      },
      {
        "id": 533,
        "object_id": "3",
        "object_type": "board_activity",
        "action": "created",
        "column": "task",
        "old_value": null,
        "new_value": "New Task Title",
        "description": "on stage Feature Requests",
        "created_by": "1",
        "settings": {
          "task_id": 279
        },
        "created_at": "2025-08-04T09:00:39+00:00",
        "user": {
          "ID": 1,
          "display_name": "John Doe",
          "user_login": "john_doe",
          "email": "[email protected]",
          "photo": "https://secure.gravatar.com/avatar/..."
        }
      }
    ],
    "per_page": 40,
    "total": 94
    // ... other pagination properties
  }
}
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# Error Responses
See Common Error Responses for standard error formats.
# Common Board-Specific Errors
- 404 Not Found - Board not found
 - 403 Forbidden - You don't have permission to access this board
 - 400 Bad Request - Invalid board data or missing required fields
 
← Authentication Tasks →