Projects API

Projects are represented as Boards in the API.

Projects are represented as Boards in the API. When creating or managing a project, use the Board endpoints.

Note: In the API, Projects are referred to as Boards.

TL;DR: Board = Project

List Boards

Retrieve all boards accessible to the authenticated user.

Endpoint: GET /boards

Parameters:

  • None

Response Example:

{
  "status": true,
  "boards": [
    {
      "id": 1,
      "name": "My Design Project",
      "folders_count": 5,
      "media_count": 23
    }
  ]
}

Curl Example:

Create Board

Create a new board for organizing your design assets.

Endpoint: POST /boards

Parameters:

  • name (string, Required) - Name of the board

Response Example:

Curl Example:


Get Board

Retrieve a specific board with its folders and media.

Endpoint: GET /boards/:id

Parameters:

  • id (integer, Required) - Board ID in URL path

Response Example:

Curl Example:


Update Board

Update board information (requires admin/owner permissions).

Endpoint: PUT /boards/:id

Parameters:

  • id (integer, Required) - Board ID in URL path

  • name (string, Optional) - New name for the board

Response Example:

Curl Example:


Delete Board

Delete a board and all its contents (requires admin/owner permissions).

Endpoint: DELETE /boards/:id

Parameters:

  • id (integer, Required) - Board ID in URL path

Response Example:

Curl Example:


Board Folders

List Folders

Retrieve all folders within a specific board with their media.

Endpoint: GET /boards/:board_id/folders

Parameters:

  • board_id (integer, Required) - Board ID in URL path

Response Example:

Curl Example:


Create Folder

Create a new folder within a board.

Endpoint: POST /boards/:board_id/folders

Parameters:

  • board_id (integer, Required) - Board ID in URL path

  • name (string, Required) - Folder name

  • parent_id (integer, Optional) - Parent folder ID for nested folders

Response Example:

Curl Example:


Update Folder

Update folder information.

Endpoint: PUT /boards/:board_id/folders/:id

Parameters:

  • board_id (integer, Required) - Board ID in URL path

  • id (integer, Required) - Folder ID in URL path

  • name (string, Optional) - New folder name

  • parent_id (integer, Optional) - New parent folder ID

Response Example:

Curl Example:


Delete Folder

Delete a folder and all its contents.

Endpoint: DELETE /boards/:board_id/folders/:id

Parameters:

  • board_id (integer, Required) - Board ID in URL path

  • id (integer, Required) - Folder ID in URL path

Response Example:

Curl Example:


Board Media

Create Media

Add media (images, files) to a board or folder. Images will be processed in the background.

Endpoint: POST /boards/:board_id/media

Parameters:

  • board_id (integer, Required) - Board ID in URL path

  • url (string, Optional) - Primary media URL

  • control_image (string, Optional) - Secondary/reference image URL

  • folder_id (integer, Optional) - Folder ID to organize media

  • extras (string, Optional) - Additional metadata as JSON string

Response Example:

Note: The url and control_image fields will be populated after background processing completes.

Curl Example:


Delete Media

Remove media from a board.

Endpoint: DELETE /boards/:board_id/media/:id

Parameters:

  • board_id (integer, Required) - Board ID in URL path

  • id (integer, Required) - Media ID in URL path

Response Example:

Curl Example:


Move Media

Move media between folders within the same board.

Endpoint: PUT /boards/:board_id/media/:id/move

Parameters:

  • board_id (integer, Required) - Board ID in URL path

  • id (integer, Required) - Media ID in URL path

  • folder_id (integer, Optional) - Target folder ID (null to move to board root)

Response Example:

Curl Example:


Last updated