Projects API

Bramble Projects: projects and their members and invites, work packages (tasks) with types, statuses and categories, documents, automation rules, notifications and "my work" across projects. Works with an API key.

Address
https://<your-org>.brambleit.cloud/api
Sign-in
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Endpoints
74
OpenAPI
projects.json
Guides
How Projects works

Project roles. Each member is an owner, admin, member or viewer of a project, in that order of rights: owners can delete the project and manage owners; admins manage members and settings; members work on it; viewers read.

Resources

Projects

Projects themselves (banner, icon, activity), your work across projects, and search.

MethodPathSummary
GET/v1/app/project/projectsList projects the caller is a member of
POST/v1/app/project/projectsCreate a project. Creator becomes owner; seeds the project with default work-package types and statuses
GET/v1/app/project/projects/:idGet a single project
PATCH/v1/app/project/projects/:idUpdate a project's name/description/color/status/client
DELETE/v1/app/project/projects/:idDelete a project. Requires owner role on the project
GET/v1/app/project/my-workList work packages assigned to the caller across every project in their tenant
GET/v1/app/project/searchSearch work packages by subject across every project the caller belongs to
POST/v1/app/project/projects/:id/iconUpload a project's icon image
DELETE/v1/app/project/projects/:id/iconClear a project's icon image
POST/v1/app/project/projects/:id/bannerUpload a project's banner image
DELETE/v1/app/project/projects/:id/bannerClear a project's banner image
GET/v1/app/project/projects/:id/activityList a project's recent activity log

Work packages

The tasks in a project, with relations between them and their history.

MethodPathSummary
GET/v1/app/project/projects/:id/versionsList a project's versions (Roadmap)
POST/v1/app/project/projects/:id/versionsCreate a version/roadmap milestone
PATCH/v1/app/project/projects/:id/versions/:versionIdUpdate a version/roadmap milestone
DELETE/v1/app/project/projects/:id/versions/:versionIdDelete a version/roadmap milestone
GET/v1/app/project/projects/:id/work-packagesList a project's work packages
POST/v1/app/project/projects/:id/work-packagesCreate a work package
GET/v1/app/project/projects/:id/work-packages/:wpIdGet a single work package
PATCH/v1/app/project/projects/:id/work-packages/:wpIdUpdate a work package
PATCH/v1/app/project/projects/:id/work-packages/:wpId/moveMove a work package between statuses/positions (Board drag-drop / reorder)
DELETE/v1/app/project/projects/:id/work-packages/:wpIdDelete a work package (soft delete)
GET/v1/app/project/projects/:id/relationsList every work-package relation edge in the project
GET/v1/app/project/projects/:id/work-packages/:wpId/relationsList a single work package's relations
POST/v1/app/project/projects/:id/work-packages/:wpId/relationsCreate a relation between two work packages
DELETE/v1/app/project/projects/:id/work-packages/:wpId/relations/:relIdDelete a work-package relation
GET/v1/app/project/projects/:id/work-packages/:wpId/commentsList a work package's comments
POST/v1/app/project/projects/:id/work-packages/:wpId/commentsAdd a comment to a work package
PATCH/v1/app/project/projects/:id/work-packages/:wpId/comments/:commentIdEdit a work-package comment
DELETE/v1/app/project/projects/:id/work-packages/:wpId/comments/:commentIdDelete a work-package comment (soft delete)

Members

Who's in a project and their role, and inviting people.

MethodPathSummary
GET/v1/app/project/projects/:id/membersList a project's members
GET/v1/app/project/projects/:id/available-usersList tenant users not yet on this project
PATCH/v1/app/project/projects/:id/members/:userIdChange a project member's role
DELETE/v1/app/project/projects/:id/members/:userIdRemove a project member, or leave the project yourself
GET/v1/app/project/projects/:id/invitesList a project's pending invites
POST/v1/app/project/projects/:id/invitesInvite an existing tenant user to a project
DELETE/v1/app/project/projects/:id/invites/:inviteIdRevoke a pending project invite
GET/v1/app/project/invitesList pending invites addressed to the caller
POST/v1/app/project/invites/:id/acceptAccept a pending project invite
POST/v1/app/project/invites/:id/declineDecline a pending project invite

Statuses

A project's workflow states.

MethodPathSummary
GET/v1/app/project/projects/:id/statusesList a project's statuses (also used as the Board's columns)
POST/v1/app/project/projects/:id/statusesCreate a status/board column
PATCH/v1/app/project/projects/:id/statuses/:statusIdUpdate a status/board column
DELETE/v1/app/project/projects/:id/statuses/:statusIdDelete a status/board column

Types

Kinds of work package (task, bug, milestone…).

MethodPathSummary
GET/v1/app/project/projects/:id/typesList a project's work-package types
POST/v1/app/project/projects/:id/typesCreate a work-package type
PATCH/v1/app/project/projects/:id/types/:typeIdUpdate a work-package type
DELETE/v1/app/project/projects/:id/types/:typeIdDelete a work-package type

Categories & tags

Categories and tags for grouping work.

MethodPathSummary
GET/v1/app/project/projects/:id/categoriesList a project's work-package categories
POST/v1/app/project/projects/:id/categoriesCreate a work-package category
PATCH/v1/app/project/projects/:id/categories/:catIdUpdate a work-package category
DELETE/v1/app/project/projects/:id/categories/:catIdDelete a work-package category
GET/v1/app/project/projects/:id/tagsList a project's tags
POST/v1/app/project/projects/:id/tagsCreate a work-package tag
PATCH/v1/app/project/projects/:id/tags/:tagIdRename or recolor a tag
DELETE/v1/app/project/projects/:id/tags/:tagIdDelete a tag. Requires at least member role on the project

Documents

Documents attached to a project.

MethodPathSummary
GET/v1/app/project/projects/:id/documentsList a project's documents (Wiki)
POST/v1/app/project/projects/:id/documentsCreate a document. Requires at least member role on the project
GET/v1/app/project/projects/:id/documents/:docIdGet a single document, including its content
PATCH/v1/app/project/projects/:id/documents/:docIdUpdate a document. Requires at least member role on the project
DELETE/v1/app/project/projects/:id/documents/:docIdDelete a document (soft delete)

Automation rules

Rules that change work packages automatically when something happens.

MethodPathSummary
GET/v1/app/project/projects/:id/automation-rulesA project's automation rules
POST/v1/app/project/projects/:id/automation-rulesAdmin role: higher than Tags'/ Categories' "member" tier, since a rule can auto-assign users or change status on every new work package, same tier as project…
PUT/v1/app/project/projects/:id/automation-rules/:ruleIdBulk-replace name/conditions/ actions in one UPDATE (no transaction needed — see the JSON-column rationale above)
PATCH/v1/app/project/projects/:id/automation-rules/:ruleIdJust the enable/disable toggle, kept separate from PUT so the list view's switch doesn't have to resend the whole conditions/actions payload
DELETE/v1/app/project/projects/:id/automation-rules/:ruleIdDelete an automation rule

Notifications

Your Projects notifications.

MethodPathSummary
GET/v1/app/project/notificationsList the caller's cross-project notifications
GET/v1/app/project/notifications/unread-countGet the caller's unread notification count
PATCH/v1/app/project/notifications/:id/readMark a notification as read
POST/v1/app/project/notifications/read-allMark all of the caller's notifications as read

Admin

Projects administration and image uploads.

MethodPathSummary
GET/v1/app/project/images/:idFetch a project image (icon/banner/comment attachment) by id
GET/v1/app/project/admin/overviewTenant-wide project stats overview (for BRM-Admin)
GET/v1/app/project/admin/projectsList every project in the tenant (for BRM-Admin)
PATCH/v1/app/project/admin/projects/:idArchive or reactivate any project in the tenant (for BRM-Admin)