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.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/projects | List projects the caller is a member of |
| POST | /v1/app/project/projects | Create a project. Creator becomes owner; seeds the project with default work-package types and statuses |
| GET | /v1/app/project/projects/:id | Get a single project |
| PATCH | /v1/app/project/projects/:id | Update a project's name/description/color/status/client |
| DELETE | /v1/app/project/projects/:id | Delete a project. Requires owner role on the project |
| GET | /v1/app/project/my-work | List work packages assigned to the caller across every project in their tenant |
| GET | /v1/app/project/search | Search work packages by subject across every project the caller belongs to |
| POST | /v1/app/project/projects/:id/icon | Upload a project's icon image |
| DELETE | /v1/app/project/projects/:id/icon | Clear a project's icon image |
| POST | /v1/app/project/projects/:id/banner | Upload a project's banner image |
| DELETE | /v1/app/project/projects/:id/banner | Clear a project's banner image |
| GET | /v1/app/project/projects/:id/activity | List a project's recent activity log |
Work packages
The tasks in a project, with relations between them and their history.
Members
Who's in a project and their role, and inviting people.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/projects/:id/members | List a project's members |
| GET | /v1/app/project/projects/:id/available-users | List tenant users not yet on this project |
| PATCH | /v1/app/project/projects/:id/members/:userId | Change a project member's role |
| DELETE | /v1/app/project/projects/:id/members/:userId | Remove a project member, or leave the project yourself |
| GET | /v1/app/project/projects/:id/invites | List a project's pending invites |
| POST | /v1/app/project/projects/:id/invites | Invite an existing tenant user to a project |
| DELETE | /v1/app/project/projects/:id/invites/:inviteId | Revoke a pending project invite |
| GET | /v1/app/project/invites | List pending invites addressed to the caller |
| POST | /v1/app/project/invites/:id/accept | Accept a pending project invite |
| POST | /v1/app/project/invites/:id/decline | Decline a pending project invite |
Statuses
A project's workflow states.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/projects/:id/statuses | List a project's statuses (also used as the Board's columns) |
| POST | /v1/app/project/projects/:id/statuses | Create a status/board column |
| PATCH | /v1/app/project/projects/:id/statuses/:statusId | Update a status/board column |
| DELETE | /v1/app/project/projects/:id/statuses/:statusId | Delete a status/board column |
Types
Kinds of work package (task, bug, milestone…).
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/projects/:id/types | List a project's work-package types |
| POST | /v1/app/project/projects/:id/types | Create a work-package type |
| PATCH | /v1/app/project/projects/:id/types/:typeId | Update a work-package type |
| DELETE | /v1/app/project/projects/:id/types/:typeId | Delete a work-package type |
Categories & tags
Categories and tags for grouping work.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/projects/:id/categories | List a project's work-package categories |
| POST | /v1/app/project/projects/:id/categories | Create a work-package category |
| PATCH | /v1/app/project/projects/:id/categories/:catId | Update a work-package category |
| DELETE | /v1/app/project/projects/:id/categories/:catId | Delete a work-package category |
| GET | /v1/app/project/projects/:id/tags | List a project's tags |
| POST | /v1/app/project/projects/:id/tags | Create a work-package tag |
| PATCH | /v1/app/project/projects/:id/tags/:tagId | Rename or recolor a tag |
| DELETE | /v1/app/project/projects/:id/tags/:tagId | Delete a tag. Requires at least member role on the project |
Documents
Documents attached to a project.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/projects/:id/documents | List a project's documents (Wiki) |
| POST | /v1/app/project/projects/:id/documents | Create a document. Requires at least member role on the project |
| GET | /v1/app/project/projects/:id/documents/:docId | Get a single document, including its content |
| PATCH | /v1/app/project/projects/:id/documents/:docId | Update a document. Requires at least member role on the project |
| DELETE | /v1/app/project/projects/:id/documents/:docId | Delete a document (soft delete) |
Automation rules
Rules that change work packages automatically when something happens.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/projects/:id/automation-rules | A project's automation rules |
| POST | /v1/app/project/projects/:id/automation-rules | Admin 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/:ruleId | Bulk-replace name/conditions/ actions in one UPDATE (no transaction needed — see the JSON-column rationale above) |
| PATCH | /v1/app/project/projects/:id/automation-rules/:ruleId | Just 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/:ruleId | Delete an automation rule |
Notifications
Your Projects notifications.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/notifications | List the caller's cross-project notifications |
| GET | /v1/app/project/notifications/unread-count | Get the caller's unread notification count |
| PATCH | /v1/app/project/notifications/:id/read | Mark a notification as read |
| POST | /v1/app/project/notifications/read-all | Mark all of the caller's notifications as read |
Admin
Projects administration and image uploads.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/app/project/images/:id | Fetch a project image (icon/banner/comment attachment) by id |
| GET | /v1/app/project/admin/overview | Tenant-wide project stats overview (for BRM-Admin) |
| GET | /v1/app/project/admin/projects | List every project in the tenant (for BRM-Admin) |
| PATCH | /v1/app/project/admin/projects/:id | Archive or reactivate any project in the tenant (for BRM-Admin) |