Skip to main content

Commands

Root options

These options are only available on the root bl command, not on subcommands.

OptionDescription
--bannerPrint the Backlog CLI banner and exit

Global options

These options are available on all subcommands.

OptionDescription
--no-colorDisable colored output
--space <SPACE_KEY>Override the active space for this command
--verbose / -vPrint verbose logs to stderr

bl auth

CommandDescription
bl auth loginAuthenticate with a Backlog API key (adds or updates a space); use --no-banner to skip the banner
bl auth login-oauthAuthenticate via browser-based OAuth 2.0; use --port <port> to override the default callback port (54321); use --no-banner to skip the banner
bl auth statusShow current auth status and verify credentials
bl auth listList all configured spaces
bl auth use <space-key>Switch the current space
bl auth keyringCheck if the system keyring is available
bl auth logout [<space-key>]Remove credentials for the current or specified space
bl auth logout --allRemove all spaces and delete all config files

bl space

Show information about your Backlog space.

bl space

Example output:

Space key:  mycompany
Name: My Company
Language: ja
Timezone: Asia/Tokyo
Formatting: markdown
Created: 2020-01-01T00:00:00Z
Updated: 2024-06-01T00:00:00Z

bl space activities

Show recent activities in your Backlog space.

bl space activities
bl space activities --count 50 --order asc
bl space activities --activity-type-id 1 --activity-type-id 2 --min-id 100 --json
bl space activities --max-id 500 --json

Example output:

[123] type=1 project=TEST user=John Doe created=2024-06-01T00:00:00Z
[124] type=2 project=TEST user=Jane Smith created=2024-06-02T00:00:00Z

bl space disk-usage

Show disk usage of your Backlog space. Requires Space Administrator privileges. Non-admin users will receive 403 Forbidden.

bl space disk-usage
bl space disk-usage --json

Example output:

Capacity:   5242880 bytes
Issue: 2048 bytes
Wiki: 512 bytes
File: 1024 bytes
Subversion: 64 bytes
Git: 256 bytes
Git LFS: 128 bytes
Details: 3 project(s) — use --json for breakdown

bl space notification

Show the notification message set for your Backlog space.

bl space notification
bl space notification --json

Example output:

Updated: 2024-06-18T07:55:37Z

Scheduled maintenance on 2024-07-01.

When no notification has been set:

Updated: (not set)

(no notification set)

bl space licence

Show the licence information for your Backlog space.

bl space licence
bl space licence --json

Example output:

Contract:  premium
Storage: 5242880 / 1073741824 bytes
Start: 2020-01-01

Some fields (startDate, storageUsage) may be absent depending on the Backlog plan. In that case those fields are shown as (not set) or (unknown):

Contract:  (not set)
Storage: (unknown) / 107374182400 bytes
Start: (not set)

bl space update-notification

Update the notification message set for your Backlog space.

bl space update-notification --content "Scheduled maintenance on 2024-07-01."
bl space update-notification --content "Hello." --json

Example output:

Updated: 2024-07-01T00:00:00Z

Scheduled maintenance on 2024-07-01.

bl space image

Download the space icon image.

The response is binary data. Use --output / -o to specify where the file is written. If omitted, the command saves the file in the current directory using the filename returned by the server (or space_image if none is provided).

bl space image
bl space image --output my_icon.png

Example output:

Saved: space_image.png (1234 bytes)

bl space upload-attachment

Upload a file as a space attachment. Returns the uploaded attachment metadata.

bl space upload-attachment ./report.pdf
bl space upload-attachment ./image.png --json

Example output:

ID:      1
Name: report.pdf
Size: 204800 bytes
Created: 2024-01-01T00:00:00Z

bl project list

List all projects you have access to.

bl project list
bl project list --json

Example output:

[TEST] Test Project
[PROD] Production [archived]

bl project show

Show details of a specific project.

bl project show <id-or-key>
bl project show <id-or-key> --json

Example output:

ID:         1
Key: TEST
Name: Test Project
Formatting: markdown
Archived: false

bl project activities

Show recent activities for a specific project.

bl project activities <id-or-key>
bl project activities <id-or-key> --count 50 --order asc
bl project activities <id-or-key> --activity-type-id 1 --min-id 100 --json
bl project activities <id-or-key> --max-id 200 --json

Example output:

[123] type=1 project=TEST user=John Doe created=2024-06-01T00:00:00Z

bl project disk-usage

Show disk usage for a specific project. Requires Space Administrator privileges. Non-admin users will receive 403 Forbidden.

bl project disk-usage <id-or-key>
bl project disk-usage <id-or-key> --json

Example output:

Issue:      2048 bytes
Wiki: 512 bytes
Document: 0 bytes
File: 1024 bytes
Subversion: 64 bytes
Git: 256 bytes
Git LFS: 128 bytes

bl project user list

List users who are members of a specific project.

bl project user list <id-or-key>
bl project user list <id-or-key> --json

Example output:

[john] John Doe
[jane] Jane Smith

bl project user add

Add a user to a project by numeric user ID.

bl project user add <id-or-key> --user-id <user-id>
bl project user add <id-or-key> --user-id <user-id> --json

Example output:

Added: [john] John Doe

bl project user delete

Remove a user from a project by numeric user ID.

bl project user delete <id-or-key> --user-id <user-id>
bl project user delete <id-or-key> --user-id <user-id> --json

Example output:

Deleted: [john] John Doe

bl project admin list

List administrators of a specific project.

bl project admin list <id-or-key>
bl project admin list <id-or-key> --json

Example output:

[admin1] Alice Admin

bl project admin add

Add a user as an administrator of a project by numeric user ID.

bl project admin add <id-or-key> --user-id <user-id>
bl project admin add <id-or-key> --user-id <user-id> --json

Example output:

Added: [john] John Doe

bl project admin delete

Remove a user from the administrators of a project by numeric user ID.

bl project admin delete <id-or-key> --user-id <user-id>
bl project admin delete <id-or-key> --user-id <user-id> --json

Example output:

Deleted: [john] John Doe

bl project status list

List issue statuses defined for a specific project.

bl project status list <id-or-key>
bl project status list <id-or-key> --json

Example output:

[1] Open
[2] In Progress
[3] Resolved
[4] Closed

bl project status add

Add a status to a project.

bl project status add <id-or-key> --name <name> --color <color>
bl project status add <id-or-key> --name <name> --color <color> --json

The --color value must be a 6-digit hex color code with a # prefix (e.g., #ed8077). Only hex colors are accepted; CSS color names and shorthand hex are not supported.

Example output:

Added: [5] In Review

bl project status update

Update a project status.

bl project status update <id-or-key> --status-id <id> --name <name>
bl project status update <id-or-key> --status-id <id> --color <color>
bl project status update <id-or-key> --status-id <id> --name <name> --color <color> --json

At least one of --name or --color must be specified.

Example output:

Updated: [5] In Review

bl project status delete

Delete a project status. Issues with the deleted status are migrated to the substitute status.

bl project status delete <id-or-key> --status-id <id> --substitute-status-id <id>
bl project status delete <id-or-key> --status-id <id> --substitute-status-id <id> --json

Example output:

Deleted: [5] In Review

bl project status reorder

Reorder project statuses by specifying status IDs in the desired display order.

bl project status reorder <id-or-key> --status-id <id1> --status-id <id2> ...
bl project status reorder <id-or-key> --status-id <id1> --status-id <id2> --json

Example output:

[2] In Progress
[1] Open
[3] Resolved
[4] Closed

bl project issue-type list

List issue types defined for a specific project.

bl project issue-type list <id-or-key>
bl project issue-type list <id-or-key> --json

Example output:

[1] Bug
[2] Task
[3] Feature Request

bl project issue-type add

Add an issue type to a project.

bl project issue-type add <id-or-key> --name <name> --color <color>
bl project issue-type add <id-or-key> --name <name> --color <color> --json

--color must be a 6-digit hex code with a # prefix (e.g. #e30000).

Example output:

Added: [1] Bug

bl project issue-type update

Update a project issue type.

bl project issue-type update <id-or-key> --issue-type-id <id> --name <name>
bl project issue-type update <id-or-key> --issue-type-id <id> --color <color>
bl project issue-type update <id-or-key> --issue-type-id <id> --name <name> --color <color> --json

At least one of --name or --color must be specified. --color must be a valid hex code.

Example output:

Updated: [1] Bug

bl project issue-type delete

Delete a project issue type. Issues using the deleted type are moved to the substitute type.

bl project issue-type delete <id-or-key> --issue-type-id <id> --substitute-issue-type-id <id>
bl project issue-type delete <id-or-key> --issue-type-id <id> --substitute-issue-type-id <id> --json

--substitute-issue-type-id must differ from --issue-type-id.

Example output:

Deleted: [1] Bug

bl project category list

List categories defined for a specific project.

bl project category list <id-or-key>
bl project category list <id-or-key> --json

Example output:

[11] Development
[12] Design

bl project category add

Add a category to a project.

bl project category add <id-or-key> --name <name>
bl project category add <id-or-key> --name <name> --json

Example output:

Added: [11] Development

bl project category update

Update a project category.

bl project category update <id-or-key> --category-id <id> --name <name>
bl project category update <id-or-key> --category-id <id> --name <name> --json

Example output:

Updated: [11] Development

bl project category delete

Delete a project category.

bl project category delete <id-or-key> --category-id <id>
bl project category delete <id-or-key> --category-id <id> --json

Example output:

Deleted: [11] Development

bl project version list

List versions (milestones) defined for a specific project.

bl project version list <id-or-key>
bl project version list <id-or-key> --json

Example output:

[3] Version 0.1 (2024-01-01T00:00:00Z → 2024-01-31T00:00:00Z)
[4] Version 0.2 [archived]

bl project version add

Add a version (milestone) to a project.

bl project version add <id-or-key> --name "v1.0"
bl project version add <id-or-key> --name "v1.0" --start-date 2024-01-01 --release-due-date 2024-03-31
bl project version add <id-or-key> --name "v1.0" --description "First release" --json
FlagDefaultDescription
--nameVersion name (required)
--descriptionDescription
--start-dateStart date (YYYY-MM-DD)
--release-due-dateRelease due date (YYYY-MM-DD)

Example output:

Added: [5] v1.0 (2024-01-01 → 2024-03-31)

bl project version update

Update a version in a project.

bl project version update <id-or-key> --version-id 5 --name "v1.0.1"
bl project version update <id-or-key> --version-id 5 --name "v1.0" --archived true --json
FlagDefaultDescription
--version-idVersion ID (required)
--nameVersion name (required)
--descriptionDescription
--start-dateStart date (YYYY-MM-DD)
--release-due-dateRelease due date (YYYY-MM-DD)
--archivedtrue to archive, false to unarchive

Example output:

Updated: [5] v1.0.1 (2024-01-01 → 2024-03-31)

bl project version delete

Delete a version from a project.

bl project version delete <id-or-key> --version-id 5
bl project version delete <id-or-key> --version-id 5 --json
FlagDefaultDescription
--version-idVersion ID (required)

Example output:

Deleted: [5] v1.0

bl project custom-field list

List custom fields defined for a specific project.

bl project custom-field list <id-or-key>
bl project custom-field list <id-or-key> --json

Example output:

[1] Priority (type:6)
[2] Severity (type:7) [required]

bl project custom-field add

Add a custom field to a project.

bl project custom-field add <id-or-key> --type-id 6 --name "Priority"
bl project custom-field add <id-or-key> --type-id 1 --name "Notes" --description "Free text" --required true --json
FlagDefaultDescription
--type-idField type (required): 1=Text, 2=Sentence, 3=Number, 4=Date, 5=SingleList, 6=MultipleList, 7=Checkbox, 8=Radio
--nameField name (required)
--descriptionDescription
--requiredtrue to mark as required

Example output:

Added: [1] Priority (type:6)

bl project custom-field update

Update a custom field in a project. At least one of --name, --description, or --required must be provided.

bl project custom-field update <id-or-key> --custom-field-id 1 --name "Importance"
bl project custom-field update <id-or-key> --custom-field-id 1 --required true --json
FlagDefaultDescription
--custom-field-idCustom field ID (required)
--nameField name
--descriptionDescription
--requiredtrue to mark as required, false to unmark

Example output:

Updated: [1] Importance (type:6)

bl project custom-field delete

Delete a custom field from a project.

bl project custom-field delete <id-or-key> --custom-field-id 1
bl project custom-field delete <id-or-key> --custom-field-id 1 --json
FlagDefaultDescription
--custom-field-idCustom field ID (required)

Example output:

Deleted: [1] Priority (type:6)

bl project custom-field item add

Add an item to a list-type custom field.

bl project custom-field item add <id-or-key> --custom-field-id 1 --name "High"
bl project custom-field item add <id-or-key> --custom-field-id 1 --name "High" --json
FlagDefaultDescription
--custom-field-idCustom field ID (required)
--nameItem name (required)

bl project custom-field item update

Update an item in a list-type custom field.

bl project custom-field item update <id-or-key> --custom-field-id 1 --item-id 10 --name "Very High"
bl project custom-field item update <id-or-key> --custom-field-id 1 --item-id 10 --name "Very High" --json
FlagDefaultDescription
--custom-field-idCustom field ID (required)
--item-idItem ID (required)
--nameItem name (required)

bl project custom-field item delete

Delete an item from a list-type custom field.

bl project custom-field item delete <id-or-key> --custom-field-id 1 --item-id 10
bl project custom-field item delete <id-or-key> --custom-field-id 1 --item-id 10 --json
FlagDefaultDescription
--custom-field-idCustom field ID (required)
--item-idItem ID (required)

bl project team list

List teams assigned to a project.

bl project team list <id-or-key>
bl project team list <id-or-key> --json

bl project team add

Add a team to a project.

bl project team add <id-or-key> --team-id 1
bl project team add <id-or-key> --team-id 1 --json
FlagDefaultDescription
--team-idNumeric team ID to add (required)

bl project team delete

Remove a team from a project.

bl project team delete <id-or-key> --team-id 1
bl project team delete <id-or-key> --team-id 1 --json
FlagDefaultDescription
--team-idNumeric team ID to remove (required)

bl project webhook list

List webhooks defined for a project.

bl project webhook list <id-or-key>
bl project webhook list <id-or-key> --json

bl project webhook show

Show details of a specific webhook.

bl project webhook show <id-or-key> <webhook-id>
bl project webhook show <id-or-key> <webhook-id> --json

bl project webhook add

Add a webhook to a project.

bl project webhook add <id-or-key> --name "Deploy hook" --hook-url "https://example.com/hook"
bl project webhook add <id-or-key> --name "All events" --hook-url "https://example.com/hook" --all-event true --json
bl project webhook add <id-or-key> --name "Filtered" --hook-url "https://example.com/hook" --activity-type-id 1 --activity-type-id 2
FlagDefaultDescription
--nameWebhook name (required)
--hook-urlWebhook URL (required)
--descriptionDescription
--all-eventTrigger on all events (true/false)
--activity-type-idActivity type ID to trigger on (repeatable)

bl project webhook update

Update a webhook. At least one of --name, --hook-url, --description, --all-event, or --activity-type-id must be provided.

bl project webhook update <id-or-key> <webhook-id> --name "New Name"
bl project webhook update <id-or-key> <webhook-id> --hook-url "https://new.example.com/hook" --json
FlagDefaultDescription
--nameNew webhook name
--hook-urlNew webhook URL
--descriptionNew description
--all-eventTrigger on all events (true/false)
--activity-type-idActivity type IDs (repeatable; replaces existing list)

bl project webhook delete

Delete a webhook from a project.

bl project webhook delete <id-or-key> <webhook-id>
bl project webhook delete <id-or-key> <webhook-id> --json

bl project create

Create a new project.

bl project create --name "My Project" --key MYPRJ
bl project create --name "My Project" --key MYPRJ --chart-enabled --subtasking-enabled
bl project create --name "My Project" --key MYPRJ --text-formatting-rule backlog --json
FlagDefaultDescription
--nameProject name (required)
--keyProject key: uppercase letters, numbers, underscore; 2–10 chars (required)
--chart-enabledfalseEnable burndown chart feature
--subtasking-enabledfalseEnable subtasking
--text-formatting-rulemarkdownbacklog or markdown
--jsonOutput as JSON

Example output:

ID:         1
Key: MYPRJ
Name: My Project
Formatting: markdown
Archived: false

bl project update

Update an existing project. At least one field must be specified.

bl project update <id-or-key> --name "New Name"
bl project update <id-or-key> --key NEWKEY --chart-enabled true
bl project update <id-or-key> --archived true --json
FlagDescription
--nameNew project name
--keyNew project key
--chart-enabledtrue or false
--subtasking-enabledtrue or false
--text-formatting-rulebacklog or markdown
--archivedtrue or false
--jsonOutput as JSON

Example output:

ID:         1
Key: MYPRJ
Name: New Name
Formatting: markdown
Archived: false

bl project delete

Delete a project permanently.

bl project delete <id-or-key>
bl project delete <id-or-key> --json

Example output:

Deleted: My Project (MYPRJ)

bl project image

Download the project icon image.

The response is binary data. Use --output / -o to specify where the file is written. If omitted, the command saves the file in the current directory using the filename returned by the server (or project_image when the filename is missing or a generic attachment placeholder).

bl project image <id-or-key>
bl project image <id-or-key> --output my_icon.png

Example output:

Saved: project_image (1234 bytes)

bl issue list

List issues with optional filters.

bl issue list
bl issue list --project-id 1 --status-id 1
bl issue list --issue-type-id 1 --category-id 2 --milestone-id 3
bl issue list --parent-child not-child --keyword "login" --count 50
bl issue list --json

--parent-child values: all, not-child, child, standalone, parent.

Example output:

[TEST-1] Fix login issue (Open, Normal, -)
[TEST-2] Add dark mode (In Progress, Normal, John Doe)

bl issue count

Count issues with optional filters. Accepts the same filters as bl issue list.

bl issue count
bl issue count --project-id 1 --issue-type-id 1 --parent-child not-child --json

Example output:

42

bl issue show

Show details of a specific issue.

bl issue show <id-or-key>
bl issue show TEST-1 --json

Example output:

TEST-1 Fix login issue
Status: Open
Priority: Normal
Type: Bug
Assignee: -
Created: 2024-01-01T00:00:00Z
Updated: 2024-06-01T00:00:00Z

bl issue create

Create a new issue. Requires --project-id, --summary, --issue-type-id, and --priority-id.

bl issue create --project-id 1 --summary "Fix login" --issue-type-id 1 --priority-id 2
bl issue create --project-id 1 --summary "Bug" --issue-type-id 1 --priority-id 2 \
--description "Details..." --assignee-id 123 --due-date 2024-12-31 --json

Priority IDs: 1 = High, 2 = Normal, 3 = Low.

bl issue update

Update an existing issue. All fields are optional.

bl issue update TEST-1 --summary "Updated summary"
bl issue update TEST-1 --status-id 2 --comment "Fixed in v1.2" --json

bl issue delete

Delete an issue.

bl issue delete TEST-1
bl issue delete TEST-1 --json

Example output:

Deleted: TEST-1

bl issue comment list

List comments on an issue.

bl issue comment list TEST-1
bl issue comment list TEST-1 --json

Example output:

[1] John Doe (2024-01-01T00:00:00Z): Fixed the issue.
[2] Jane Smith (2024-01-02T00:00:00Z): Confirmed.

bl issue comment add

Add a comment to an issue.

bl issue comment add TEST-1 --content "This is a comment"
bl issue comment add TEST-1 --content "Done" --json

bl issue comment update

Update an existing comment.

bl issue comment update TEST-1 42 --content "Updated comment"
bl issue comment update TEST-1 42 --content "Fixed" --json

bl issue comment delete

Delete a comment.

bl issue comment delete TEST-1 42
bl issue comment delete TEST-1 42 --json

bl issue comment count

Count comments on an issue.

bl issue comment count TEST-1
bl issue comment count TEST-1 --json

bl issue comment show

Show a specific comment.

bl issue comment show TEST-1 42
bl issue comment show TEST-1 42 --json

bl issue comment notification list

List notifications for a comment.

bl issue comment notification list TEST-1 42
bl issue comment notification list TEST-1 42 --json

bl issue comment notification add

Add notifications for a comment.

bl issue comment notification add TEST-1 42 --notified-user-id 1
bl issue comment notification add TEST-1 42 --notified-user-id 1 --notified-user-id 2 --json

bl issue attachment list

List attachments on an issue.

bl issue attachment list TEST-1
bl issue attachment list TEST-1 --json

Example output:

[1] screenshot.png (204800 bytes)
[2] log.txt (1024 bytes)

bl issue attachment get

Download an attachment from an issue.

bl issue attachment get TEST-1 1
bl issue attachment get TEST-1 1 --output ./downloaded.png

Saves the file to the specified path (--output) or to the original filename in the current directory.

Example output:

Saved: screenshot.png (204800 bytes)

bl issue attachment delete

Delete an attachment from an issue.

bl issue attachment delete TEST-1 1
bl issue attachment delete TEST-1 1 --json

bl issue participant list

List participants of an issue.

bl issue participant list TEST-1
bl issue participant list TEST-1 --json

bl issue shared-file list

List shared files linked to an issue.

bl issue shared-file list TEST-1
bl issue shared-file list TEST-1 --json

Link shared files to an issue.

bl issue shared-file link TEST-1 --shared-file-id 1
bl issue shared-file link TEST-1 --shared-file-id 1 --shared-file-id 2 --json

Unlink a shared file from an issue.

bl issue shared-file unlink TEST-1 1
bl issue shared-file unlink TEST-1 1 --json

bl document list

List documents in a project.

bl document list --project-id 1
bl document list --project-id 1 --keyword design
bl document list --project-id 1 --count 50 --offset 0 --json

Example output:

[abc123] Design Document
[def456] API Reference

bl document tree

Show the document tree for a project.

bl document tree TEST
bl document tree TEST --json

Example output:

Project: 1
Active:
Root [root-id]
Design Document [abc123]
Frontend [def456]
Backend [ghi789]
Trash:
Trash [trash-id]

bl document show

Show details of a document.

bl document show abc123
bl document show abc123 --json

Example output:

ID: abc123
Title: Design Document
Project ID: 1
Status: 1
Content:
Hello world
Created: Taro (2024-01-01T00:00:00Z)
Updated: Taro (2024-06-01T00:00:00Z)

bl document create

Create a new document.

bl document create --project-id 1 --title "New Doc" --content "# New Doc"
bl document create --project-id 1 --title "Child Doc" --parent-id abc123 --json

bl document delete

Delete a document.

bl document delete abc123
bl document delete abc123 --json

bl document attachment get

Download a document attachment.

bl document attachment get abc123 1
bl document attachment get abc123 1 --output /path/to/file.pdf

bl wiki list

List wiki pages in a project.

bl wiki list TEST
bl wiki list TEST --keyword setup
bl wiki list TEST --json

Example output:

Home [guide, onboarding]
Setup
API Reference

bl wiki show

Show the content of a wiki page.

bl wiki show 12345
bl wiki show 12345 --json

Example output:

Home
Tags: guide, onboarding
Created: 2024-01-01T00:00:00Z
Updated: 2024-06-01T00:00:00Z

# Home
Welcome to the project wiki!

bl wiki create

Create a new wiki page.

bl wiki create --project-id 1 --name "Setup" --content "# Setup\nSee README."
bl wiki create --project-id 1 --name "Setup" --content "# Setup" --mail-notify --json

bl wiki update

Update an existing wiki page. At least one of --name or --content is required.

bl wiki update 12345 --content "# Updated content"
bl wiki update 12345 --name "New Title" --content "New content" --mail-notify
bl wiki update 12345 --name "Renamed" --json

bl wiki delete

Delete a wiki page.

bl wiki delete 12345
bl wiki delete 12345 --mail-notify --json

bl wiki history

Show the revision history of a wiki page.

bl wiki history 12345
bl wiki history 12345 --json

Example output:

v3 Home — 2024-06-01T00:00:00Z
v2 Home — 2024-03-15T00:00:00Z
v1 Home — 2024-01-01T00:00:00Z

bl wiki count

Count wiki pages in a project.

bl wiki count
bl wiki count TEST
bl wiki count TEST --json

Example output:

42

bl wiki tag list

List tags used in wiki pages.

bl wiki tag list
bl wiki tag list TEST
bl wiki tag list TEST --json

Example output:

[1] guide
[2] api

bl wiki star list

List stars on a wiki page.

bl wiki star list 12345
bl wiki star list 12345 --json

Example output:

[1] Home (John Doe)

bl wiki attachment list

List attachments of a wiki page.

bl wiki attachment list 12345
bl wiki attachment list 12345 --json

Example output:

[1] diagram.png (204800 bytes)
[2] notes.txt (1024 bytes)

bl wiki attachment add

Add attachments to a wiki page by pre-uploaded attachment ID.

bl wiki attachment add 12345 --attachment-id 1
bl wiki attachment add 12345 --attachment-id 1 --attachment-id 2 --json

bl wiki attachment get

Download an attachment from a wiki page.

bl wiki attachment get 12345 1
bl wiki attachment get 12345 1 --output ./downloads/diagram.png

bl wiki attachment delete

Delete an attachment from a wiki page.

bl wiki attachment delete 12345 1
bl wiki attachment delete 12345 1 --json

bl wiki shared-file list

List shared files linked to a wiki page.

bl wiki shared-file list 12345
bl wiki shared-file list 12345 --json

Example output:

[1] /docs/spec.pdf (204800 bytes)

Link shared files to a wiki page.

bl wiki shared-file link 12345 --shared-file-id 1
bl wiki shared-file link 12345 --shared-file-id 1 --shared-file-id 2 --json

Unlink a shared file from a wiki page.

bl wiki shared-file unlink 12345 1
bl wiki shared-file unlink 12345 1 --json

bl team list

List all teams in the space.

bl team list
bl team list --count 50 --offset 10
bl team list --json

Example output:

[1] dev-team (3 members)
[2] design-team (2 members)

bl team show

Show details of a specific team. Depending on the Backlog space configuration, this command may return 403 Forbidden.

bl team show <id>
bl team show <id> --json

Example output:

ID:      1
Name: dev-team
Created: 2024-01-01T00:00:00Z
Updated: 2024-06-01T00:00:00Z
Members:
[2] Developer
[3] Engineer

bl team add

Create a new team. Depending on the Backlog space configuration, this command may return 403 Forbidden.

bl team add --name <name>
bl team add --name <name> --member <user-id> --member <user-id>
bl team add --name <name> --json

Example output:

Created: [1] dev-team (0 members)

bl team update

Update a team. At least one of --name or --member must be provided. Depending on the Backlog space configuration, this command may return 403 Forbidden.

bl team update <id> --name <new-name>
bl team update <id> --member <user-id> --member <user-id>
bl team update <id> --name <new-name> --json

Example output:

Updated: [1] dev-team (3 members)

bl team delete

Delete a team. Depending on the Backlog space configuration, this command may return 403 Forbidden.

bl team delete <id>
bl team delete <id> --json

Example output:

Deleted: [1] dev-team (3 members)

bl team icon

Download the team icon image. Depending on the Backlog space configuration, this command may return 403 Forbidden.

bl team icon <id>
bl team icon <id> --output <path>

Example output:

Saved: icon.png (10240 bytes)

bl user activities

Show recent activities of a specific user.

bl user activities <id>
bl user activities <id> --count 50 --order asc
bl user activities <id> --activity-type-id 1 --min-id 100 --json
bl user activities <id> --max-id 200 --json

Example output:

[3153] type=2 project=SUB user=admin created=2024-06-01T00:00:00Z

bl user recently-viewed

Show issues recently viewed by the authenticated user.

bl user recently-viewed
bl user recently-viewed --count 50 --offset 20 --order asc
bl user recently-viewed --json

Example output:

[BLG-1] Fix login (Open, -)
[BLG-2] Add dark mode (In Progress, John Doe)

bl user add

Add a new user. Requires Space Administrator privileges.

bl user add --user-id john --password secret --name "John Doe" --mail-address john@example.com --role-type normal
bl user add --user-id john --password secret --name "John Doe" --mail-address john@example.com --role-type normal --json

Role types: administrator, normal, reporter, viewer, guest-reporter, guest-viewer.

Example output:

Added: john (John Doe) [roleType: 2]

bl user update

Update an existing user. Requires Space Administrator privileges.

bl user update <id> --name "New Name"
bl user update <id> --mail-address new@example.com --role-type viewer --json

Example output:

Updated: john (New Name) [roleType: 4]

bl user delete

Delete a user. Requires Space Administrator privileges.

bl user delete <id>
bl user delete <id> --json

Example output:

Deleted: john (John Doe)

bl user recently-viewed-projects

Show projects recently viewed by the authenticated user.

bl user recently-viewed-projects
bl user recently-viewed-projects --count 50 --offset 20 --order asc
bl user recently-viewed-projects --json

Example output:

[MYPRJ] My Project
[TEST] Test Project

bl user recently-viewed-wikis

Show wiki pages recently viewed by the authenticated user.

bl user recently-viewed-wikis
bl user recently-viewed-wikis --count 50 --offset 20 --order asc
bl user recently-viewed-wikis --json

Example output:

[1] Home (project: 1)
[2] API Reference (project: 2)

bl shared-file list

List shared files in a project directory.

bl shared-file list <id-or-key>
bl shared-file list <id-or-key> --path docs --count 50 --order asc --json
OptionDefaultDescription
--pathrootDirectory path
--count20Number of files to retrieve (1–100)
--orderSort order (asc or desc)
--offsetOffset for pagination

Example output:

[1] /test.txt (1024 bytes)
[2] /docs/readme.txt (512 bytes)

bl shared-file get

Download a shared file.

bl shared-file get <id-or-key> <id>
bl shared-file get <id-or-key> <id> --output /tmp/file.txt
OptionDefaultDescription
--output / -ooriginal filenameSave path

Example output:

Saved: file.txt (1024 bytes)

bl star add

Add a star to an issue, comment, wiki page, pull request, or pull request comment. Exactly one target must be specified.

bl star add --issue-id <id>
bl star add --comment-id <id>
bl star add --wiki-id <id>
bl star add --pull-request-id <id>
bl star add --pull-request-comment-id <id>
OptionDefaultDescription
--issue-idID of the issue to star
--comment-idID of the issue comment to star
--wiki-idID of the wiki page to star
--pull-request-idID of the pull request to star
--pull-request-comment-idID of the pull request comment to star

On success, this command prints no output (HTTP 204 No Content).

bl star delete

Remove a star.

bl star delete <id>

On success, this command prints no output (HTTP 204 No Content).

bl user star list

List stars given by a user.

bl user star list <id>
bl user star list <id> --count 50 --order asc --json
bl user star list <id> --min-id 100 --max-id 200 --json

Example output:

[1] Fix login bug
[2] Add dark mode feature

bl user star count

Count stars given by a user.

bl user star count <id>
bl user star count <id> --since 2024-01-01 --until 2024-12-31 --json

Example output:

42

bl user icon

Download a user's icon image.

The response is binary data. Use --output / -o to specify where the file is written. If omitted, the command saves the file in the current directory using the filename returned by the server (or user_icon when the filename is missing or a generic attachment placeholder).

bl user icon <id>
bl user icon <id> --output my_icon.png

Example output:

Saved: user_icon (1234 bytes)

bl user list

List all users in the space. Requires Space Administrator privileges. Non-admin users will receive 403 Forbidden.

bl user list
bl user list --json

Example output:

[john] John Doe
[jane] Jane Smith
[12345] Bot User

bl user show

Show details of a specific user by numeric ID.

bl user show <id>
bl user show <id> --json

Example output:

ID:           123
User ID: john
Name: John Doe
Mail: john@example.com
Role: 1
Lang: ja
Last login: 2024-06-01T00:00:00Z

bl notification list

List notifications for the authenticated user.

bl notification list
bl notification list --count 50 --order asc
bl notification list --min-id 100 --sender-id 123 --json
bl notification list --unread --json

Example output:

[101] reason=2 project=TEST issue=TEST-1 read=false created=2024-06-01T00:00:00Z
[102] reason=6 project=TEST issue=TEST-2 read=true created=2024-06-02T00:00:00Z

bl notification count

Count unread notifications for the authenticated user.

bl notification count
bl notification count --json

Example output:

3

bl notification read <id>

Mark a specific notification as read.

bl notification read <id>

bl notification reset-unread

Reset the unread notification count. Note: this resets the counter, but does not mark individual notifications as read.

bl notification reset-unread

Example output:

Unread count reset.

bl watch list

List watchings for a user.

bl watch list <user-id> [--order asc|desc] [--sort created|updated|issue-updated] [--count N] [--offset N] [--resource-already-read true|false] [--issue-id ID ...] [--json]

Example output:

[1] Fix login bug (TEST-42)
[2] Update docs (TEST-7)

bl watch count

Count watchings for a user.

bl watch count <user-id> [--resource-already-read true|false] [--already-read true|false] [--json]

Example output:

5

bl watch show <id>

Show details of a watching.

bl watch show <id> [--json]

Example output:

[1] Fix login bug (TEST-42)
note: Check this later

bl watch add

Add a watching.

bl watch add --issue <issue-id-or-key> [--note NOTE] [--json]

Example output:

Added: [1] Fix login bug (TEST-42)

bl watch update <id>

Update the note of a watching.

bl watch update <id> --note NOTE [--json]

Example output:

Updated: [1] Fix login bug (TEST-42)

bl watch delete <id>

Delete a watching.

bl watch delete <id> [--json]

Example output:

Deleted: [1] Fix login bug (TEST-42)

bl watch read <id>

Mark a watching as read.

bl watch read <id>

On success, this command prints no output (HTTP 204 No Content).

bl priority list

List issue priorities.

bl priority list [--json]

Example output:

[2] High
[3] Normal
[4] Low

bl resolution list

List issue resolutions.

bl resolution list [--json]

Example output:

[0] Fixed
[1] Won't Fix
[2] Invalid
[3] Duplication
[4] Cannot Reproduce

bl pr list

List pull requests in a repository.

bl pr list <project-id-or-key> <repo-id-or-name>
bl pr list <project-id-or-key> <repo-id-or-name> --json

bl pr count

Count pull requests in a repository.

bl pr count <project-id-or-key> <repo-id-or-name>
bl pr count <project-id-or-key> <repo-id-or-name> --json

bl pr show

Show details of a pull request.

bl pr show <project-id-or-key> <repo-id-or-name> <number>
bl pr show <project-id-or-key> <repo-id-or-name> <number> --json

bl pr create

Create a pull request.

bl pr create <project-id-or-key> <repo-id-or-name> --summary <summary> --base <base> --branch <branch>
bl pr create <project-id-or-key> <repo-id-or-name> --summary <summary> --base <base> --branch <branch> --json
bl pr create <project-id-or-key> <repo-id-or-name> --summary <summary> --base <base> --branch <branch> --description <desc> --issue-id <id> --assignee-id <id>

bl pr update

Update a pull request. At least one of --summary, --description, --base, --issue-id, --assignee-id, or --comment is required.

bl pr update <project-id-or-key> <repo-id-or-name> <number> --summary <summary>
bl pr update <project-id-or-key> <repo-id-or-name> <number> --summary <summary> --json
bl pr update <project-id-or-key> <repo-id-or-name> <number> --comment <comment>

bl pr comment list

List comments on a pull request.

bl pr comment list <project-id-or-key> <repo-id-or-name> <number>
bl pr comment list <project-id-or-key> <repo-id-or-name> <number> --json

bl pr comment count

Count comments on a pull request.

bl pr comment count <project-id-or-key> <repo-id-or-name> <number>
bl pr comment count <project-id-or-key> <repo-id-or-name> <number> --json

bl pr comment add

Add a comment to a pull request.

bl pr comment add <project-id-or-key> <repo-id-or-name> <number> --content <content>
bl pr comment add <project-id-or-key> <repo-id-or-name> <number> --content <content> --json

bl pr comment update

Update a comment on a pull request.

bl pr comment update <project-id-or-key> <repo-id-or-name> <number> <comment-id> --content <content>
bl pr comment update <project-id-or-key> <repo-id-or-name> <number> <comment-id> --content <content> --json

bl pr attachment list

List attachments of a pull request.

bl pr attachment list <project-id-or-key> <repo-id-or-name> <number>
bl pr attachment list <project-id-or-key> <repo-id-or-name> <number> --json

bl pr attachment get

Download an attachment from a pull request.

bl pr attachment get <project-id-or-key> <repo-id-or-name> <number> <attachment-id>
bl pr attachment get <project-id-or-key> <repo-id-or-name> <number> <attachment-id> --output <path>

bl pr attachment delete

Delete an attachment from a pull request.

bl pr attachment delete <project-id-or-key> <repo-id-or-name> <number> <attachment-id>
bl pr attachment delete <project-id-or-key> <repo-id-or-name> <number> <attachment-id> --json

bl git repo list

List Git repositories in a project.

bl git repo list <project-id-or-key>
bl git repo list <project-id-or-key> --json

Example output:

main
develop

bl git repo show

Show details of a Git repository.

bl git repo show <project-id-or-key> <repo-id-or-name>
bl git repo show <project-id-or-key> <repo-id-or-name> --json

Example output:

main
Description: Main repository
HTTP URL: https://example.backlog.com/git/TEST/main.git
SSH URL: git@example.backlog.com:/TEST/main.git
Created: 2024-01-01T00:00:00Z
Updated: 2024-01-02T00:00:00Z

bl rate-limit

Show the current API rate limit status.

bl rate-limit
bl rate-limit --json

Example output:

Read:    limit=600, remaining=599, reset=1698230400
Update: limit=150, remaining=150, reset=1698230400
Search: limit=150, remaining=150, reset=1698230400
Icon: limit=60, remaining=60, reset=1698230400

The Icon row is only shown when the Backlog plan includes the icon rate limit category.

Command coverage

The table below maps Backlog API v2 endpoints to bl commands.

Space

CommandAPI endpointStatus
bl spaceGET /api/v2/space✅ Implemented
bl space activitiesGET /api/v2/space/activities✅ Implemented
bl space disk-usageGET /api/v2/space/diskUsage✅ Implemented
bl space notificationGET /api/v2/space/notification✅ Implemented
bl space licenceGET /api/v2/space/licence✅ Implemented
bl space update-notificationPUT /api/v2/space/notification✅ Implemented
bl space imageGET /api/v2/space/image✅ Implemented
bl space upload-attachment <file>POST /api/v2/space/attachment✅ Implemented

Projects

CommandAPI endpointStatus
bl project listGET /api/v2/projects✅ Implemented
bl project show <id-or-key>GET /api/v2/projects/{projectIdOrKey}✅ Implemented
bl project createPOST /api/v2/projects✅ Implemented
bl project update <id-or-key>PATCH /api/v2/projects/{projectIdOrKey}✅ Implemented
bl project delete <id-or-key>DELETE /api/v2/projects/{projectIdOrKey}✅ Implemented
bl project activities <id-or-key>GET /api/v2/projects/{projectIdOrKey}/activities✅ Implemented
bl project disk-usage <id-or-key>GET /api/v2/projects/{projectIdOrKey}/diskUsage✅ Implemented
bl project user list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/users✅ Implemented
bl project user add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/users✅ Implemented
bl project user delete <id-or-key>DELETE /api/v2/projects/{projectIdOrKey}/users✅ Implemented
bl project admin list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/administrators✅ Implemented
bl project admin add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/administrators✅ Implemented
bl project admin delete <id-or-key>DELETE /api/v2/projects/{projectIdOrKey}/administrators✅ Implemented
bl project image <id-or-key>GET /api/v2/projects/{projectIdOrKey}/image✅ Implemented
bl project status list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/statuses✅ Implemented
bl project status add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/statuses✅ Implemented
bl project status update <id-or-key> --status-id <id>PATCH /api/v2/projects/{projectIdOrKey}/statuses/{id}✅ Implemented
bl project status delete <id-or-key> --status-id <id>DELETE /api/v2/projects/{projectIdOrKey}/statuses/{id}✅ Implemented
bl project status reorder <id-or-key>PATCH /api/v2/projects/{projectIdOrKey}/statuses/updateDisplayOrder✅ Implemented
bl project issue-type list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/issueTypes✅ Implemented
bl project issue-type add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/issueTypes✅ Implemented
bl project issue-type update <id-or-key> --issue-type-id <id>PATCH /api/v2/projects/{projectIdOrKey}/issueTypes/{id}✅ Implemented
bl project issue-type delete <id-or-key> --issue-type-id <id>DELETE /api/v2/projects/{projectIdOrKey}/issueTypes/{id}✅ Implemented
bl project category list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/categories✅ Implemented
bl project category add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/categories✅ Implemented
bl project category update <id-or-key> --category-id <id>PATCH /api/v2/projects/{projectIdOrKey}/categories/{id}✅ Implemented
bl project category delete <id-or-key> --category-id <id>DELETE /api/v2/projects/{projectIdOrKey}/categories/{id}✅ Implemented
bl project version list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/versions✅ Implemented
bl project version add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/versions✅ Implemented
bl project version update <id-or-key> --version-id <id>PATCH /api/v2/projects/{projectIdOrKey}/versions/{id}✅ Implemented
bl project version delete <id-or-key> --version-id <id>DELETE /api/v2/projects/{projectIdOrKey}/versions/{id}✅ Implemented
bl project custom-field list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/customFields✅ Implemented
bl project custom-field add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/customFields✅ Implemented
bl project custom-field update <id-or-key> --custom-field-id <id>PATCH /api/v2/projects/{projectIdOrKey}/customFields/{id}✅ Implemented
bl project custom-field delete <id-or-key> --custom-field-id <id>DELETE /api/v2/projects/{projectIdOrKey}/customFields/{id}✅ Implemented
bl project custom-field item add <id-or-key> --custom-field-id <id>POST /api/v2/projects/{projectIdOrKey}/customFields/{id}/items✅ Implemented
bl project custom-field item update <id-or-key> --custom-field-id <id> --item-id <id>PATCH /api/v2/projects/{projectIdOrKey}/customFields/{id}/items/{itemId}✅ Implemented
bl project custom-field item delete <id-or-key> --custom-field-id <id> --item-id <id>DELETE /api/v2/projects/{projectIdOrKey}/customFields/{id}/items/{itemId}✅ Implemented
bl project webhook list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/webhooks✅ Implemented
bl project webhook show <id-or-key> <webhook-id>GET /api/v2/projects/{projectIdOrKey}/webhooks/{webhookId}✅ Implemented
bl project webhook add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/webhooks✅ Implemented
bl project webhook update <id-or-key> <webhook-id>PATCH /api/v2/projects/{projectIdOrKey}/webhooks/{webhookId}✅ Implemented
bl project webhook delete <id-or-key> <webhook-id>DELETE /api/v2/projects/{projectIdOrKey}/webhooks/{webhookId}✅ Implemented
bl project team list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/teams✅ Implemented
bl project team add <id-or-key>POST /api/v2/projects/{projectIdOrKey}/teams✅ Implemented
bl project team delete <id-or-key>DELETE /api/v2/projects/{projectIdOrKey}/teams/{teamId}✅ Implemented

Priorities & Resolutions

CommandAPI endpointStatus
bl priority listGET /api/v2/priorities✅ Implemented
bl resolution listGET /api/v2/resolutions✅ Implemented

Issues

CommandAPI endpointStatus
bl issue listGET /api/v2/issues✅ Implemented
bl issue countGET /api/v2/issues/count✅ Implemented
bl issue show <id-or-key>GET /api/v2/issues/{issueIdOrKey}✅ Implemented
bl issue createPOST /api/v2/issues✅ Implemented
bl issue update <id-or-key>PATCH /api/v2/issues/{issueIdOrKey}✅ Implemented
bl issue delete <id-or-key>DELETE /api/v2/issues/{issueIdOrKey}✅ Implemented
bl issue comment list <id-or-key>GET /api/v2/issues/{issueIdOrKey}/comments✅ Implemented
bl issue comment add <id-or-key>POST /api/v2/issues/{issueIdOrKey}/comments✅ Implemented
bl issue comment count <id-or-key>GET /api/v2/issues/{issueIdOrKey}/comments/count✅ Implemented
bl issue comment show <id-or-key> <comment-id>GET /api/v2/issues/{issueIdOrKey}/comments/{commentId}✅ Implemented
bl issue comment update <id-or-key> <comment-id>PATCH /api/v2/issues/{issueIdOrKey}/comments/{commentId}✅ Implemented
bl issue comment delete <id-or-key> <comment-id>DELETE /api/v2/issues/{issueIdOrKey}/comments/{commentId}✅ Implemented
bl issue comment notification list <id-or-key> <comment-id>GET /api/v2/issues/{issueIdOrKey}/comments/{commentId}/notifications✅ Implemented
bl issue comment notification add <id-or-key> <comment-id>POST /api/v2/issues/{issueIdOrKey}/comments/{commentId}/notifications✅ Implemented
bl issue attachment list <id-or-key>GET /api/v2/issues/{issueIdOrKey}/attachments✅ Implemented
bl issue attachment get <id-or-key> <attachment-id>GET /api/v2/issues/{issueIdOrKey}/attachments/{attachmentId}✅ Implemented
bl issue attachment delete <id-or-key> <attachment-id>DELETE /api/v2/issues/{issueIdOrKey}/attachments/{attachmentId}✅ Implemented
bl issue participant list <id-or-key>GET /api/v2/issues/{issueIdOrKey}/participants✅ Implemented
bl issue shared-file list <id-or-key>GET /api/v2/issues/{issueIdOrKey}/sharedFiles✅ Implemented
bl issue shared-file link <id-or-key>POST /api/v2/issues/{issueIdOrKey}/sharedFiles✅ Implemented
bl issue shared-file unlink <id-or-key> <shared-file-id>DELETE /api/v2/issues/{issueIdOrKey}/sharedFiles/{id}✅ Implemented

Documents

CommandAPI endpointStatus
bl document listGET /api/v2/documents✅ Implemented
bl document treeGET /api/v2/documents/tree✅ Implemented
bl document show <id>GET /api/v2/documents/{documentId}✅ Implemented
bl document createPOST /api/v2/documents✅ Implemented
bl document delete <id>DELETE /api/v2/documents/{documentId}✅ Implemented
bl document attachment get <id> <attachment-id>GET /api/v2/documents/{documentId}/attachments/{attachmentId}✅ Implemented

Wiki

CommandAPI endpointStatus
bl wiki listGET /api/v2/wikis✅ Implemented
bl wiki countGET /api/v2/wikis/count✅ Implemented
bl wiki tag listGET /api/v2/wikis/tags✅ Implemented
bl wiki show <id>GET /api/v2/wikis/{wikiId}✅ Implemented
bl wiki createPOST /api/v2/wikis✅ Implemented
bl wiki update <id>PATCH /api/v2/wikis/{wikiId}✅ Implemented
bl wiki delete <id>DELETE /api/v2/wikis/{wikiId}✅ Implemented
bl wiki history <id>GET /api/v2/wikis/{wikiId}/history✅ Implemented
bl wiki star list <id>GET /api/v2/wikis/{wikiId}/stars✅ Implemented
bl wiki attachment list <id>GET /api/v2/wikis/{wikiId}/attachments✅ Implemented
bl wiki attachment add <id>POST /api/v2/wikis/{wikiId}/attachments✅ Implemented
bl wiki attachment get <id> <attachment-id>GET /api/v2/wikis/{wikiId}/attachments/{attachmentId}✅ Implemented
bl wiki attachment delete <id> <attachment-id>DELETE /api/v2/wikis/{wikiId}/attachments/{attachmentId}✅ Implemented
bl wiki shared-file list <id>GET /api/v2/wikis/{wikiId}/sharedFiles✅ Implemented
bl wiki shared-file link <id>POST /api/v2/wikis/{wikiId}/sharedFiles✅ Implemented
bl wiki shared-file unlink <id> <shared-file-id>DELETE /api/v2/wikis/{wikiId}/sharedFiles/{id}✅ Implemented

Shared Files

CommandAPI endpointStatus
bl shared-file list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/files/metadata/{path}✅ Implemented
bl shared-file get <id-or-key> <id>GET /api/v2/projects/{projectIdOrKey}/files/{sharedFileId}✅ Implemented

Stars

CommandAPI endpointStatus
bl star addPOST /api/v2/stars✅ Implemented
bl star delete <id>DELETE /api/v2/stars/{starId}✅ Implemented
bl user star list <id>GET /api/v2/users/{userId}/stars✅ Implemented
bl user star count <id>GET /api/v2/users/{userId}/stars/count✅ Implemented

Pull Requests

CommandAPI endpointStatus
bl pr list <id-or-key> <repo>GET /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests✅ Implemented
bl pr count <id-or-key> <repo>GET /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/count✅ Implemented
bl pr show <id-or-key> <repo> <number>GET /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}✅ Implemented
bl pr create <id-or-key> <repo>POST /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests✅ Implemented
bl pr update <id-or-key> <repo> <number>PATCH /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}✅ Implemented
bl pr comment list <id-or-key> <repo> <number>GET /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}/comments✅ Implemented
bl pr comment count <id-or-key> <repo> <number>GET /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}/comments/count✅ Implemented
bl pr comment add <id-or-key> <repo> <number>POST /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}/comments✅ Implemented
bl pr comment update <id-or-key> <repo> <number> <comment-id>PATCH /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}/comments/{commentId}✅ Implemented
bl pr attachment list <id-or-key> <repo> <number>GET /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}/attachments✅ Implemented
bl pr attachment get <id-or-key> <repo> <number> <attachment-id>GET /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}/attachments/{attachmentId}✅ Implemented
bl pr attachment delete <id-or-key> <repo> <number> <attachment-id>DELETE /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}/pullRequests/{number}/attachments/{attachmentId}✅ Implemented

Git Repositories

CommandAPI endpointStatus
bl git repo list <id-or-key>GET /api/v2/projects/{projectIdOrKey}/git/repositories✅ Implemented
bl git repo show <id-or-key> <repo>GET /api/v2/projects/{projectIdOrKey}/git/repositories/{repoIdOrName}✅ Implemented

Users

CommandAPI endpointStatus
bl auth statusGET /api/v2/users/myself✅ Implemented (internal)
bl user listGET /api/v2/users✅ Implemented
bl user show <id>GET /api/v2/users/{userId}✅ Implemented
bl user addPOST /api/v2/users✅ Implemented
bl user update <id>PATCH /api/v2/users/{userId}✅ Implemented
bl user delete <id>DELETE /api/v2/users/{userId}✅ Implemented
bl user activities <id>GET /api/v2/users/{userId}/activities✅ Implemented
bl user recently-viewedGET /api/v2/users/myself/recentlyViewedIssues✅ Implemented
bl user recently-viewed-projectsGET /api/v2/users/myself/recentlyViewedProjects✅ Implemented
bl user recently-viewed-wikisGET /api/v2/users/myself/recentlyViewedWikis✅ Implemented
bl user star list <id>GET /api/v2/users/{userId}/stars✅ Implemented
bl user star count <id>GET /api/v2/users/{userId}/stars/count✅ Implemented
bl user icon <id>GET /api/v2/users/{userId}/icon✅ Implemented

Notifications

CommandAPI endpointStatus
bl notification listGET /api/v2/notifications✅ Implemented
bl notification countGET /api/v2/notifications/count✅ Implemented
bl notification read <id>POST /api/v2/notifications/{notificationId}/markAsRead✅ Implemented
bl notification reset-unreadPOST /api/v2/notifications/markAsRead✅ Implemented

Watching

CommandAPI endpointStatus
bl watch listGET /api/v2/users/{userId}/watchings✅ Implemented
bl watch countGET /api/v2/users/{userId}/watchings/count✅ Implemented
bl watch show <id>GET /api/v2/watchings/{watchingId}✅ Implemented
bl watch addPOST /api/v2/watchings✅ Implemented
bl watch update <id>PATCH /api/v2/watchings/{watchingId}✅ Implemented
bl watch delete <id>DELETE /api/v2/watchings/{watchingId}✅ Implemented
bl watch read <id>POST /api/v2/watchings/{watchingId}/markAsRead✅ Implemented

Teams

CommandAPI endpointStatus
bl team listGET /api/v2/teams✅ Implemented
bl team show <id>GET /api/v2/teams/{teamId}✅ Implemented
bl team addPOST /api/v2/teams✅ Implemented
bl team update <id>PATCH /api/v2/teams/{teamId}✅ Implemented
bl team delete <id>DELETE /api/v2/teams/{teamId}✅ Implemented
bl team icon <id>GET /api/v2/teams/{teamId}/icon✅ Implemented

System

CommandAPI endpointStatus
bl rate-limitGET /api/v2/rateLimit✅ Implemented