Generated from Redmine API 1.7.1+redmine.6.1.
redmine [command] [subcommand] [flags]Set REDMINE_HOST and REDMINE_API_KEY, or run redmine auth login --profile <name> --host <url> --api-key <key>. Login validates credentials with GET /users/current.json before saving them. Successful login stores or updates the selected profile and makes it current.
Common flags: --profile, --host, --api-key, --username, --password, --switch-user, --output json|yaml|raw, --config.
Profile selection order: --profile, REDMINE_PROFILE, current profile from config, default.
Request body commands accept generated body flags, repeated --field key=value, or --body @file.json.
Checks the credentials with GET /users/current.json and saves them to the selected profile only after a successful response. The selected profile is resolved from --profile, REDMINE_PROFILE, current config profile, or default. Successful login makes the selected profile current. The API key can also be read from stdin with --stdin.
Loads authentication from flags, environment, or the selected profile, calls GET /users/current.json, and prints the resolved profile, host, auth method, authenticated user, and status.
Lists saved profiles and marks the current profile.
Sets the current profile used when --profile and REDMINE_PROFILE are not provided.
Removes the selected profile. Use redmine auth logout --all to remove the entire config file.
redmine auth login --profile work --host https://redmine.example.com --api-key "$REDMINE_API_KEY"
redmine auth login --profile client --host https://client-redmine.example.com --api-key "$CLIENT_REDMINE_API_KEY"
redmine auth list
redmine auth use work
redmine auth status
redmine --profile client issue list --limit 20
redmine issue list --limit 20
redmine issue show 123 --include journals
redmine issue create --project-id my-project --subject "Fix checkout"
redmine project listredmine issue list- List issuesredmine issue create- Create issueredmine issue show <issue_id>- Show issueredmine issue update <issue_id>- Update issueredmine issue delete <issue_id>- Delete issueredmine issue add-watcher <issue_id>- Add watcherredmine issue remove-watcher <issue_id> <user_id>- Remove watcherredmine issue list-by-project <project_id>- List issues by projectredmine issue create-under-project <project_id>- Create issue under project
redmine project list- List projectsredmine project create- Create projectredmine project show <project_id>- Show projectredmine project update <project_id>- Update projectredmine project delete <project_id>- Delete projectredmine project archive <project_id>- Archive projectredmine project close <project_id>- Close projectredmine project reopen <project_id>- Reopen projectredmine project unarchive <project_id>- Unarchive project
redmine project-membership show <membership_id>- Show membershipredmine project-membership update <membership_id>- Update membershipredmine project-membership delete <membership_id>- Delete membershipredmine project-membership list <project_id>- List membershipsredmine project-membership create <project_id>- Create membership
redmine user list- List usersredmine user create- Create userredmine user show-current- Show current userredmine user show <user_id>- Show userredmine user update <user_id>- Update userredmine user delete <user_id>- Delete user
redmine time-entry create-under-issue <issue_id>- Create time entry under issueredmine time-entry list-by-project <project_id>- List time entries by projectredmine time-entry create-under-project <project_id>- Create time entry under projectredmine time-entry list- List time entriesredmine time-entry create- Create time entryredmine time-entry show <time_entry_id>- Show time entryredmine time-entry update <time_entry_id>- Update time entryredmine time-entry delete <time_entry_id>- Delete time entry
redmine news list- List newsredmine news show <news_id>- Show newsredmine news update <news_id>- Update newsredmine news delete <news_id>- Delete newsredmine news list-by-project <project_id>- List news by projectredmine news create <project_id>- Create news
redmine issue-relation list <issue_id>- List issue relationsredmine issue-relation create <issue_id>- Create issue relationredmine issue-relation show <issue_relation_id>- Show issue relationredmine issue-relation delete <issue_relation_id>- Delete issue relation
redmine version list-by-project <project_id>- List versions by projectredmine version create <project_id>- Create versionredmine version show <version_id>- Show versionredmine version update <version_id>- Update versionredmine version delete <version_id>- Delete version
redmine wiki-page list <project_id>- List wiki pagesredmine wiki-page show <project_id> <wiki_page_title>- Show wiki pageredmine wiki-page create-or-update <project_id> <wiki_page_title>- Create or update wiki pageredmine wiki-page delete <project_id> <wiki_page_title>- Delete wiki pageredmine wiki-page show-by-specific-version <project_id> <wiki_page_title> <version_id>- Show wiki page by specific version
redmine query list- List queries
redmine attachment download-file <attachment_id> <filename>- Download attachment fileredmine attachment download-thumbnail <attachment_id>- Download thumbnailredmine attachment show <attachment_id>- Show attachmentredmine attachment update <attachment_id>- Update attachmentredmine attachment delete <attachment_id>- Delete attachmentredmine attachment upload-file- Upload attachment file
redmine issue-status list- List issue statuses
redmine tracker list- List trackers
redmine enumeration list-document-categories- List document categoriesredmine enumeration list-issue-priorities- List issue prioritiesredmine enumeration list-time-entry-activities- List time entry activities
redmine issue-category show <issue_category_id>- Show issue categoryredmine issue-category update <issue_category_id>- Update issue categoryredmine issue-category delete <issue_category_id>- Delete issue categoryredmine issue-category list <project_id>- List issue categoriesredmine issue-category create <project_id>- Create issue category
redmine role list- List rolesredmine role show <role_id>- Show role
redmine group list- List groupsredmine group create- Create groupredmine group show <group_id>- Show groupredmine group update <group_id>- Update groupredmine group delete <group_id>- Delete groupredmine group add-user-to <group_id>- Add user to groupredmine group remove-user-from <group_id> <user_id>- Remove user from group
redmine custom-field list- List custom fields
redmine search search-within-project <project_id>- Search within projectredmine search run- Search
redmine file list <project_id>- List filesredmine file create <project_id>- Create file
redmine my-account show- Show my accountredmine my-account update- Update my account
redmine journal update <journal_id>- Update journal
redmine repository add-related-issue <project_id> <repository_id> <revision>- Add related issueredmine repository remove-related-issue <project_id> <repository_id> <revision> <issue_id>- Remove related issue
List issues
- Operation:
GET /issues.{format}(getIssues) - Flags:
--offset <integer>--limit <integer>--nometa <integer>--sort <string>: Sort order. Comma-separated list offieldorfield:desc. Default direction is ascending. Examples:id:desc,status:desc,id--include <string>: Comma-separated list of associated data to include for each issue. Values:attachments(file attachments),relations(issue relations)--issue-id <string>: Filter by issue ID. Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:1,>=100,><1|100--project-id <string>: Filter by project. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:mine(projects where current user is a member),bookmarks(bookmarked projects) Examples:1|2,mine,!mine--subproject-id <string>: Filter by subproject. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,*,!*--tracker-id <string>: Filter by tracker. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),ev(has ever been),!ev(has never been),cf(changed from) Examples:1|2,!3--status-id <string>: Filter by issue status. Format:[operator]value[|value2|...]Operators:o(open),=(default),!(not equal),c(closed),*(any),ev(has ever been),!ev(has never been),cf(changed from) Examples:o,1|2,c,!3--priority-id <string>: Filter by priority. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),ev(has ever been),!ev(has never been),cf(changed from) Examples:1|2,!3--assigned-to-id <string>: Filter by assignee. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none),ev(has ever been),!ev(has never been),cf(changed from) Special values:me(current user) Examples:1,me,!*,!me--author-id <string>: Filter by author. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:me(current user) Examples:1,me,!me--author-group <string>: Filter by author's group. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2--author-role <string>: Filter by author's role. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2--member-of-group <string>: Filter by assignee's group membership. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1,*--assigned-to-role <string>: Filter by assignee's role. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1,*--fixed-version-id <string>: Filter by target version. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none),ev(has ever been),!ev(has never been),cf(changed from) Examples:1|2,!*--fixed-version-due-date <string>: Filter by target version's due date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),nd(tomorrow),w(this week),lw(last week),l2w(last 2 weeks),nw(next week),m(this month),lm(last month),nm(next month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),t+(in n days),>t+(in more than n days),<t+(in less than n days),><t+(between n1 and n2 days from now),*(any),!*(none) Examples:>=2024-01-01,t,>t-7--fixed-version-status <string>: Filter by target version's status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Values:open,locked,closedExamples:open,open|locked,!closed--category-id <string>: Filter by category. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none),ev(has ever been),!ev(has never been),cf(changed from) Examples:1|2,!*--parent-id <string>: Filter by parent issue. Format:[operator]valueOperators:=(exact parent ID),~(descendant of, subtree search),*(any, i.e. is a subtask),!*(none, i.e. is a root issue) Examples:123,~123,*,!*--child-id <string>: Filter by child issue. Format:[operator]valueOperators:=(exact child ID),~(ancestor of, subtree search),*(any, i.e. has subtasks),!*(none, i.e. is a leaf issue) Examples:123,~123,*,!*--cf-x <object>: Filter by custom field value. Replacexwith the custom field ID (e.g.,cf_1,cf_12). Format and operators depend on the custom field type (string, int, date, list, etc.) and follow the same conventions as other filter parameters. Examples:cf_1=~keyword,cf_5=1|2,cf_10=>=2024-01-01--subject <string>: Filter by subject. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,^prefix--description <string>: Filter by description. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,!~excluded--notes <string>: Filter by journal notes. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword--created-on <string>: Filter by creation date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),*(any),!*(none) Examples:>=2024-01-01,t,>t-7,lm--updated-on <string>: Filter by last updated date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),*(any),!*(none) Examples:>=2024-01-01,t,>t-7,lm--closed-on <string>: Filter by closed date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),*(any),!*(none) Examples:>=2024-01-01,t,>t-7,lm--start-date <string>: Filter by start date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),nd(tomorrow),w(this week),lw(last week),l2w(last 2 weeks),nw(next week),m(this month),lm(last month),nm(next month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),t+(in n days),>t+(in more than n days),<t+(in less than n days),><t+(between n1 and n2 days from now),*(any),!*(none) Examples:>=2024-01-01,t,>t-7--due-date <string>: Filter by due date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),nd(tomorrow),w(this week),lw(last week),l2w(last 2 weeks),nw(next week),m(this month),lm(last month),nm(next month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),t+(in n days),>t+(in more than n days),<t+(in less than n days),><t+(between n1 and n2 days from now),*(any),!*(none) Examples:>=2024-01-01,t,>t-7--estimated-hours <string>: Filter by estimated hours. Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:>=5,><1|10,!*--spent-time <string>: Filter by total spent time. Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:>=5,><1|10,!*--done-ratio <string>: Filter by done ratio (percentage). Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:>=50,><0|99,100--is-private <string>: Filter by private flag. Format:[operator]valueOperators:=(default),!(not equal) Values:1(private),0(not private) Examples:1,0--attachment <string>: Filter by attachment filename. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~report,*.pdf--attachment-description <string>: Filter by attachment description. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~screenshot--watcher-id <string>: Filter by watcher. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:me(current user) Examples:1,me,!me--updated-by <string>: Filter by user who updated the issue. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:me(current user) Examples:1,me--last-updated-by <string>: Filter by user who last updated the issue. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:me(current user) Examples:1,me--project-status <string>: Filter by project status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Values:1(active),5(closed) Examples:1,!5--relates <string>: Filter by "relates to" relation. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),=p(same project),=!p(different project),!p(not in project),*o(related to open issue),!o(related to closed issue),*(any),!*(none) Examples:123,=p,*o,*--duplicates <string>: Filter by "duplicates" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--duplicated <string>: Filter by "duplicated by" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--blocks <string>: Filter by "blocks" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*o--blocked <string>: Filter by "blocked by" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*o--precedes <string>: Filter by "precedes" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--follows <string>: Filter by "follows" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--copied-to <string>: Filter by "copied to" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--copied-from <string>: Filter by "copied from" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--any-searchable <string>: Full-text search across all searchable fields. Format:<operator>valueOperators:~(contains all words),*~(contains any word),!~(not contains) Examples:~keyword,*~foo bar--query-id <integer>: ID of a saved query to apply. When specified, the saved query's filter criteria are used. Other filter parameters in the same request are ignored. Use GET /queries.json to retrieve available saved queries.--x-redmine-nometa <integer>
Create issue
- Operation:
POST /issues.{format}(createIssue) - Body root:
issue - Body flags:
--assigned-to-id <integer>--category-id <integer>--custom-field-values <object>--custom-fields <object>--description <string>--done-ratio <integer>--due-date <string:date>--estimated-hours <number>--fixed-version-id <integer>--is-private <boolean>--parent-issue-id <integer>--priority-id <integer>--project-id <integer|string>required--start-date <string:date>--status-id <integer>--subject <string>required--tracker-id <integer>--uploads <object>--watcher-user-ids <integer>
Show issue
- Operation:
GET /issues/{issue_id}.{format}(getIssue) - Arguments:
issue_id
- Flags:
--include <string>: Comma-separated list of associated data to include in the response. Values:children(child issues),attachments(file attachments),relations(issue relations),changesets(associated VCS changesets),journals(change history and notes),watchers(users watching the issue),allowed_statuses(status transitions available for the current user)
Update issue
- Operation:
PUT /issues/{issue_id}.{format}(updateIssue) - Arguments:
issue_id
- Body flags:
--issue <object>
Delete issue
- Operation:
DELETE /issues/{issue_id}.{format}(deleteIssue) - Arguments:
issue_id
Add watcher
- Operation:
POST /issues/{issue_id}/watchers.{format}(addWatcher) - Arguments:
issue_id
- Body flags:
--user-id <integer>required
Remove watcher
- Operation:
DELETE /issues/{issue_id}/watchers/{user_id}.{format}(removeWatcher) - Arguments:
issue_iduser_id
List issues by project
- Operation:
GET /projects/{project_id}/issues.{format}(getIssuesByProject) - Arguments:
project_id
- Flags:
--offset <integer>--limit <integer>--nometa <integer>--sort <string>: Sort order. Comma-separated list offieldorfield:desc. Default direction is ascending. Examples:id:desc,status:desc,id--include <string>: Comma-separated list of associated data to include for each issue. Values:attachments(file attachments),relations(issue relations)--issue-id <string>: Filter by issue ID. Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:1,>=100,><1|100--subproject-id <string>: Filter by subproject. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,*,!*--tracker-id <string>: Filter by tracker. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),ev(has ever been),!ev(has never been),cf(changed from) Examples:1|2,!3--status-id <string>: Filter by issue status. Format:[operator]value[|value2|...]Operators:o(open),=(default),!(not equal),c(closed),*(any),ev(has ever been),!ev(has never been),cf(changed from) Examples:o,1|2,c,!3--priority-id <string>: Filter by priority. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),ev(has ever been),!ev(has never been),cf(changed from) Examples:1|2,!3--assigned-to-id <string>: Filter by assignee. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none),ev(has ever been),!ev(has never been),cf(changed from) Special values:me(current user) Examples:1,me,!*,!me--author-id <string>: Filter by author. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:me(current user) Examples:1,me,!me--author-group <string>: Filter by author's group. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2--author-role <string>: Filter by author's role. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2--member-of-group <string>: Filter by assignee's group membership. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1,*--assigned-to-role <string>: Filter by assignee's role. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1,*--fixed-version-id <string>: Filter by target version. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none),ev(has ever been),!ev(has never been),cf(changed from) Examples:1|2,!*--fixed-version-due-date <string>: Filter by target version's due date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),nd(tomorrow),w(this week),lw(last week),l2w(last 2 weeks),nw(next week),m(this month),lm(last month),nm(next month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),t+(in n days),>t+(in more than n days),<t+(in less than n days),><t+(between n1 and n2 days from now),*(any),!*(none) Examples:>=2024-01-01,t,>t-7--fixed-version-status <string>: Filter by target version's status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Values:open,locked,closedExamples:open,open|locked,!closed--category-id <string>: Filter by category. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none),ev(has ever been),!ev(has never been),cf(changed from) Examples:1|2,!*--parent-id <string>: Filter by parent issue. Format:[operator]valueOperators:=(exact parent ID),~(descendant of, subtree search),*(any, i.e. is a subtask),!*(none, i.e. is a root issue) Examples:123,~123,*,!*--child-id <string>: Filter by child issue. Format:[operator]valueOperators:=(exact child ID),~(ancestor of, subtree search),*(any, i.e. has subtasks),!*(none, i.e. is a leaf issue) Examples:123,~123,*,!*--cf-x <object>: Filter by custom field value. Replacexwith the custom field ID (e.g.,cf_1,cf_12). Format and operators depend on the custom field type (string, int, date, list, etc.) and follow the same conventions as other filter parameters. Examples:cf_1=~keyword,cf_5=1|2,cf_10=>=2024-01-01--subject <string>: Filter by subject. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,^prefix--description <string>: Filter by description. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,!~excluded--notes <string>: Filter by journal notes. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword--created-on <string>: Filter by creation date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),*(any),!*(none) Examples:>=2024-01-01,t,>t-7,lm--updated-on <string>: Filter by last updated date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),*(any),!*(none) Examples:>=2024-01-01,t,>t-7,lm--closed-on <string>: Filter by closed date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),*(any),!*(none) Examples:>=2024-01-01,t,>t-7,lm--start-date <string>: Filter by start date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),nd(tomorrow),w(this week),lw(last week),l2w(last 2 weeks),nw(next week),m(this month),lm(last month),nm(next month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),t+(in n days),>t+(in more than n days),<t+(in less than n days),><t+(between n1 and n2 days from now),*(any),!*(none) Examples:>=2024-01-01,t,>t-7--due-date <string>: Filter by due date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),nd(tomorrow),w(this week),lw(last week),l2w(last 2 weeks),nw(next week),m(this month),lm(last month),nm(next month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),t+(in n days),>t+(in more than n days),<t+(in less than n days),><t+(between n1 and n2 days from now),*(any),!*(none) Examples:>=2024-01-01,t,>t-7--estimated-hours <string>: Filter by estimated hours. Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:>=5,><1|10,!*--spent-time <string>: Filter by total spent time. Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:>=5,><1|10,!*--done-ratio <string>: Filter by done ratio (percentage). Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:>=50,><0|99,100--is-private <string>: Filter by private flag. Format:[operator]valueOperators:=(default),!(not equal) Values:1(private),0(not private) Examples:1,0--attachment <string>: Filter by attachment filename. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~report,*.pdf--attachment-description <string>: Filter by attachment description. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~screenshot--watcher-id <string>: Filter by watcher. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:me(current user) Examples:1,me,!me--updated-by <string>: Filter by user who updated the issue. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:me(current user) Examples:1,me--last-updated-by <string>: Filter by user who last updated the issue. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:me(current user) Examples:1,me--project-status <string>: Filter by project status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Values:1(active),5(closed) Examples:1,!5--relates <string>: Filter by "relates to" relation. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),=p(same project),=!p(different project),!p(not in project),*o(related to open issue),!o(related to closed issue),*(any),!*(none) Examples:123,=p,*o,*--duplicates <string>: Filter by "duplicates" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--duplicated <string>: Filter by "duplicated by" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--blocks <string>: Filter by "blocks" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*o--blocked <string>: Filter by "blocked by" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*o--precedes <string>: Filter by "precedes" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--follows <string>: Filter by "follows" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--copied-to <string>: Filter by "copied to" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--copied-from <string>: Filter by "copied from" relation. Format:[operator]value[|value2|...]Operators:=,!,=p,=!p,!p,*o,!o,*,!*Examples:123,*--any-searchable <string>: Full-text search across all searchable fields. Format:<operator>valueOperators:~(contains all words),*~(contains any word),!~(not contains) Examples:~keyword,*~foo bar--query-id <integer>: ID of a saved query to apply. When specified, the saved query's filter criteria are used. Other filter parameters in the same request are ignored. Use GET /queries.json to retrieve available saved queries.--x-redmine-nometa <integer>
Create issue under project
- Operation:
POST /projects/{project_id}/issues.{format}(createIssueUnderProject) - Arguments:
project_id
- Body root:
issue - Body flags:
--assigned-to-id <integer>--category-id <integer>--custom-field-values <object>--custom-fields <object>--description <string>--done-ratio <integer>--due-date <string:date>--estimated-hours <number>--fixed-version-id <integer>--is-private <boolean>--parent-issue-id <integer>--priority-id <integer>--start-date <string:date>--status-id <integer>--subject <string>required--tracker-id <integer>--uploads <object>--watcher-user-ids <integer>
List projects
- Operation:
GET /projects.{format}(getProjects) - Flags:
--offset <integer>--limit <integer>--nometa <integer>--include <string>: Comma-separated list of associated data to include for each project. Values:trackers(available issue trackers),issue_categories(issue categories),time_entry_activities(time entry activity types),enabled_modules(enabled modules/features),issue_custom_fields(custom fields for issues)--status <string>: Filter by project status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Values:1(active),5(closed) Examples:1,1|5,!1--id <string>: Filter by project ID. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:mine(projects where current user is a member),bookmarks(bookmarked projects) Examples:1|2|3,mine,!mine,mine|bookmarks--name <string>: Filter by project name. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,^prefix--description <string>: Filter by project description. Format:<operator>valueOperators:~(contains),!~(not contains),*~(contains any word),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,!~excluded--parent-id <string>: Filter by parent project. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any, i.e. is a subproject),!*(none, i.e. is a root project) Special values:mine(projects where current user is a member),bookmarks(bookmarked projects) Examples:1|2,mine,*,!*--is-public <string>: Filter by public/private status. Format:[operator]valueOperators:=(default),!(not equal) Values:1(public),0(private) Examples:1,!1--created-on <string>: Filter by creation date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),*(any),!*(none) Examples:>=2024-01-01,><2024-01-01|2024-12-31,t,>t-7,lm--updated-on <string>: Filter by last updated date. Format:<operator>[value]Operators:=(on date),>=(on or after),<=(on or before),><(between, pipe-separated),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),t-(n days ago),>t-(less than n days ago),<t-(more than n days ago),><t-(between n1 and n2 days ago),*(any),!*(none) Examples:>=2024-01-01,><2024-01-01|2024-12-31,t,>t-7,lm--x-redmine-nometa <integer>
Create project
- Operation:
POST /projects.{format}(createProject) - Body root:
project - Body flags:
--custom-field-values <object>--custom-fields <object>--default-assigned-to-id <integer>: Default assignee for new issues in this project. Set to null to clear.--default-issue-query-id <integer>: Default saved query for the project's issue list page. Set to null to clear.--default-version-id <integer>: Default target version for new issues in this project. Set to null to clear.--description <string>--enabled-module-names <string>: Enabled module names for this project. Values:issue_tracking,time_tracking,news,documents,files,wiki,repository,boards,calendar,gantt--homepage <string>--identifier <string>required--inherit-members <boolean>: Inherit members from the parent project. Only effective for subprojects (parent_id is set).--is-public <boolean>--issue-custom-field-ids <integer>: IDs of issue custom fields enabled for this project. Custom fields withis_for_all=trueare always available regardless of this setting.--name <string>required--parent-id <integer>--tracker-ids <integer>: IDs of trackers available in this project.
Show project
- Operation:
GET /projects/{project_id}.{format}(getProject) - Arguments:
project_id
- Flags:
--include <string>: Comma-separated list of associated data to include in the response. Values:trackers(available issue trackers),issue_categories(issue categories),time_entry_activities(time entry activity types),enabled_modules(enabled modules/features),issue_custom_fields(custom fields for issues)
Update project
- Operation:
PUT /projects/{project_id}.{format}(updateProject) - Arguments:
project_id
- Body flags:
--project <object>
Delete project
- Operation:
DELETE /projects/{project_id}.{format}(deleteProject) - Arguments:
project_id
Archive project
- Operation:
PUT /projects/{project_id}/archive.{format}(archiveProject) - Arguments:
project_id
Close project
Undocumented: This operation is not listed in the official documentation.
- Operation:
PUT /projects/{project_id}/close.{format}(closeProject) - Arguments:
project_id
Reopen project
Undocumented: This operation is not listed in the official documentation.
- Operation:
PUT /projects/{project_id}/reopen.{format}(reopenProject) - Arguments:
project_id
Unarchive project
- Operation:
PUT /projects/{project_id}/unarchive.{format}(unarchiveProject) - Arguments:
project_id
Show membership
- Operation:
GET /memberships/{membership_id}.{format}(getMembership) - Arguments:
membership_id
Update membership
- Operation:
PUT /memberships/{membership_id}.{format}(updateMembership) - Arguments:
membership_id
- Body flags:
--membership <object>
Delete membership
- Operation:
DELETE /memberships/{membership_id}.{format}(deleteMembership) - Arguments:
membership_id
List memberships
- Operation:
GET /projects/{project_id}/memberships.{format}(getMemberships) - Arguments:
project_id
- Flags:
--offset <integer>--limit <integer>--nometa <integer>--x-redmine-nometa <integer>
Create membership
- Operation:
POST /projects/{project_id}/memberships.{format}(createMembership) - Arguments:
project_id
- Body root:
membership - Body flags:
--role-ids <integer>required--user-id <integer>required
List users
- Operation:
GET /users.{format}(getUsers) - Flags:
--offset <integer>--limit <integer>--nometa <integer>--include <string>: Comma-separated list of associated data to include for each user. Values:auth_source(authentication source information)--status <string>: Filter by user status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Values:1(active),2(registered),3(locked) Examples:1,1|2,!3--name <string>: Filter by name, login, or email (contains search). The API always uses the~(contains) operator regardless of any operator prefix. Examples:john,admin--group-id <string>: Filter by group membership (legacy parameter). Internally converted tois_member_of_groupfilter with=operator. Value is the group ID.--auth-source-id <string>: Filter by authentication source. Undocumented Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1,!1--twofa-scheme <string>: Filter by two-factor authentication scheme. Undocumented Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Only available when two-factor authentication is enabled in Redmine settings.--login <string>: Filter by login. Undocumented Format:[operator]valueOperators:~(contains, default),*~(contains any word),=(exact match),!~(does not contain),!(not equal),^(starts with),$(ends with),*(any),!*(none) Examples:~admin,^john--firstname <string>: Filter by first name. Undocumented Format:[operator]valueOperators:~(contains, default),*~(contains any word),=(exact match),!~(does not contain),!(not equal),^(starts with),$(ends with),*(any),!*(none) Examples:~John,=John--lastname <string>: Filter by last name. Undocumented Format:[operator]valueOperators:~(contains, default),*~(contains any word),=(exact match),!~(does not contain),!(not equal),^(starts with),$(ends with),*(any),!*(none) Examples:~Doe,=Doe--mail <string>: Filter by email address. Undocumented Format:[operator]valueOperators:~(contains, default),*~(contains any word),=(exact match),!~(does not contain),!(not equal),^(starts with),$(ends with),*(any),!*(none) Examples:~example.com,$@example.com--created-on <string>: Filter by creation date. Undocumented Format:[operator]valueOperators:=(on date),>=,<=,><(between, pipe-separated),>t-(more than N days ago),<t-(less than N days ago),><t-(between N and M days ago),t-(N days ago),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),*(any),!*(none) Examples:>=2024-01-01,>t-30,lm--last-login-on <string>: Filter by last login date. Undocumented Format:[operator]valueOperators:=(on date),>=,<=,><(between, pipe-separated),>t-(more than N days ago),<t-(less than N days ago),><t-(between N and M days ago),t-(N days ago),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),*(any),!*(none) Examples:>=2024-01-01,>t-30,!*--admin <string>: Filter by admin privilege. Undocumented Format:[operator]valueOperators:=(default),!(not equal) Values:1(admin),0(non-admin) Examples:1,!1--x-redmine-nometa <integer>
Create user
- Operation:
POST /users.{format}(createUser) - Body flags:
--pref <object>--send-information <boolean>: Set to true to send an account information email to the user. Not stored; only triggers email delivery.--user <object>required
Show current user
- Operation:
GET /users/current.{format}(getCurrentUser) - Flags:
--include <string>: Comma-separated list of associated data to include in the response. Values:memberships(project memberships with roles),groups(groups the user belongs to),auth_source(authentication source information)
Show user
- Operation:
GET /users/{user_id}.{format}(getUser) - Arguments:
user_id
- Flags:
--include <string>: Comma-separated list of associated data to include in the response. Values:memberships(project memberships with roles),groups(groups the user belongs to),auth_source(authentication source information)
Update user
- Operation:
PUT /users/{user_id}.{format}(updateUser) - Arguments:
user_id
- Body flags:
--pref <object>--send-information <boolean>: Set to true to send an account information email to the user. Not stored; only triggers email delivery.--user <object>
Delete user
- Operation:
DELETE /users/{user_id}.{format}(deleteUser) - Arguments:
user_id
Create time entry under issue
- Operation:
POST /issues/{issue_id}/time_entries.{format}(createTimeEntryUnderIssue) - Arguments:
issue_id
- Body root:
time_entry - Body flags:
--activity-id <integer>--comments <string>--custom-field-values <object>--custom-fields <object>--hours <number>required--project-id <integer>--spent-on <string:date>--user-id <integer>
List time entries by project
- Operation:
GET /projects/{project_id}/time_entries.{format}(getTimeEntriesByProject) - Arguments:
project_id
- Flags:
--offset <integer>--limit <integer>--nometa <integer>--user-id <string>: Filter by user. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Special values:me(current user) Examples:1,me,!*--spent-on <string>: Filter by date spent. Format:[operator]valueOperators:=(on date),>=,<=,><(between, pipe-separated),>t-(more than N days ago),<t-(less than N days ago),><t-(between N and M days ago),t-(N days ago),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),*(any),!*(none) Examples:=2024-01-01,>=2024-01-01,><2024-01-01|2024-12-31,>t-7,t,lw--from <string:date>: Shortcut forspent_onfilter. When used withto, filters as between (>=fromand<=to). When used alone, filters as>=from. Format:YYYY-MM-DD--to <string:date>: Shortcut forspent_onfilter. When used withfrom, filters as between (>=fromand<=to). When used alone, filters as<=to. Format:YYYY-MM-DD--subproject-id <string>: Filter by subproject. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,*,!*--issue-id <string>: Filter by issue. Format:[operator]valueOperators:=(exact match),~(issue and its subtasks),*(any),!*(none) Examples:=1,~1,*,!*--issue-tracker-id <string>: Filter by issue's tracker. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2,!3--issue-status-id <string>: Filter by issue's status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2,!3--issue-fixed-version-id <string>: Filter by issue's target version. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2,!3--issue-parent-id <string>: Filter by issue's parent. Format:[operator]valueOperators:=(exact match),~(issue and its subtasks),*(any),!*(none) Examples:=1,~1,*,!*--issue-category-id <string>: Filter by issue's category. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,!*--issue-subject <string>: Filter by issue's subject. Format:[operator]valueOperators:~(contains, default),*~(contains any word),!~(does not contain),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,^prefix,$suffix--user-group <string>: Filter by user's group. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,*--user-role <string>: Filter by user's role. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,*--author-id <string>: Filter by author. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Special values:me(current user) Examples:1,me,!*--activity-id <string>: Filter by activity. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2,!3--project-status <string>: Filter by project's status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Values:1(active),5(closed) Examples:1,!5--comments <string>: Filter by comments. Format:[operator]valueOperators:~(contains, default),*~(contains any word),!~(does not contain),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,^prefix--hours <string>: Filter by hours. Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:=8,>=4,><1|8--sort <string>: Sort order. Comma-separated list offieldorfield:desc. Default direction is ascending. Examples:spent_on:desc,hours:desc,spent_on--x-redmine-nometa <integer>
Create time entry under project
- Operation:
POST /projects/{project_id}/time_entries.{format}(createTimeEntryUnderProject) - Arguments:
project_id
- Body root:
time_entry - Body flags:
--activity-id <integer>--comments <string>--custom-field-values <object>--custom-fields <object>--hours <number>required--issue-id <integer>--spent-on <string:date>--user-id <integer>
List time entries
- Operation:
GET /time_entries.{format}(getTimeEntries) - Flags:
--offset <integer>--limit <integer>--nometa <integer>--user-id <string>: Filter by user. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Special values:me(current user) Examples:1,me,!*--project-id <string>: Filter by project. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Special values:mine(projects where current user is a member),bookmarks(bookmarked projects) Examples:1|2,mine,!mine--spent-on <string>: Filter by date spent. Format:[operator]valueOperators:=(on date),>=,<=,><(between, pipe-separated),>t-(more than N days ago),<t-(less than N days ago),><t-(between N and M days ago),t-(N days ago),t(today),ld(yesterday),w(this week),lw(last week),l2w(last 2 weeks),m(this month),lm(last month),y(this year),*(any),!*(none) Examples:=2024-01-01,>=2024-01-01,><2024-01-01|2024-12-31,>t-7,t,lw--from <string:date>: Shortcut forspent_onfilter. When used withto, filters as between (>=fromand<=to). When used alone, filters as>=from. Format:YYYY-MM-DD--to <string:date>: Shortcut forspent_onfilter. When used withfrom, filters as between (>=fromand<=to). When used alone, filters as<=to. Format:YYYY-MM-DD--subproject-id <string>: Filter by subproject. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,*,!*--issue-id <string>: Filter by issue. Format:[operator]valueOperators:=(exact match),~(issue and its subtasks),*(any),!*(none) Examples:=1,~1,*,!*--issue-tracker-id <string>: Filter by issue's tracker. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2,!3--issue-status-id <string>: Filter by issue's status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2,!3--issue-fixed-version-id <string>: Filter by issue's target version. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2,!3--issue-parent-id <string>: Filter by issue's parent. Format:[operator]valueOperators:=(exact match),~(issue and its subtasks),*(any),!*(none) Examples:=1,~1,*,!*--issue-category-id <string>: Filter by issue's category. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,!*--issue-subject <string>: Filter by issue's subject. Format:[operator]valueOperators:~(contains, default),*~(contains any word),!~(does not contain),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,^prefix,$suffix--user-group <string>: Filter by user's group. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,*--user-role <string>: Filter by user's role. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Examples:1|2,*--author-id <string>: Filter by author. Format:[operator]value[|value2|...]Operators:=(default),!(not equal),*(any),!*(none) Special values:me(current user) Examples:1,me,!*--activity-id <string>: Filter by activity. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Examples:1|2,!3--project-status <string>: Filter by project's status. Format:[operator]value[|value2|...]Operators:=(default),!(not equal) Values:1(active),5(closed) Examples:1,!5--comments <string>: Filter by comments. Format:[operator]valueOperators:~(contains, default),*~(contains any word),!~(does not contain),^(starts with),$(ends with),*(any),!*(none) Examples:~keyword,^prefix--hours <string>: Filter by hours. Format:[operator]valueOperators:=(default),>=,<=,><(between, pipe-separated),*(any),!*(none) Examples:=8,>=4,><1|8--sort <string>: Sort order. Comma-separated list offieldorfield:desc. Default direction is ascending. Examples:spent_on:desc,hours:desc,spent_on--x-redmine-nometa <integer>
Create time entry
- Operation:
POST /time_entries.{format}(createTimeEntry) - Body root:
time_entry - Body flags:
--activity-id <integer>--comments <string>--custom-field-values <object>--custom-fields <object>--hours <number>required--issue-id <integer>--project-id <integer>--spent-on <string:date>--user-id <integer>
Show time entry
- Operation:
GET /time_entries/{time_entry_id}.{format}(getTimeEntry) - Arguments:
time_entry_id
Update time entry
- Operation:
PUT /time_entries/{time_entry_id}.{format}(updateTimeEntry) - Arguments:
time_entry_id
- Body flags:
--time-entry <object>
Delete time entry
- Operation:
DELETE /time_entries/{time_entry_id}.{format}(deleteTimeEntry) - Arguments:
time_entry_id
List news
- Operation:
GET /news.{format}(getNewsList) - Flags:
--offset <integer>--limit <integer>--nometa <integer>--x-redmine-nometa <integer>
Show news
Undocumented: This operation is not listed in the official documentation.
- Operation:
GET /news/{news_id}.{format}(getNews) - Arguments:
news_id
- Flags:
--include <string>: Comma-separated list of associated data to include in the response. Values:attachments(file attachments),comments(comments/replies on the news item)
Update news
Undocumented: This operation is not listed in the official documentation.
- Operation:
PUT /news/{news_id}.{format}(updateNews) - Arguments:
news_id
- Body flags:
--news <object>
Delete news
Undocumented: This operation is not listed in the official documentation.
- Operation:
DELETE /news/{news_id}.{format}(deleteNews) - Arguments:
news_id
List news by project
- Operation:
GET /projects/{project_id}/news.{format}(getNewsListByProject) - Arguments:
project_id
- Flags:
--offset <integer>--limit <integer>--nometa <integer>--x-redmine-nometa <integer>
Create news
Undocumented: This operation is not listed in the official documentation.
- Operation:
POST /projects/{project_id}/news.{format}(createNews) - Arguments:
project_id
- Body root:
news - Body flags:
--description <string>required--summary <string>--title <string>required--uploads <object>
List issue relations
- Operation:
GET /issues/{issue_id}/relations.{format}(getIssueRelations) - Arguments:
issue_id
Create issue relation
- Operation:
POST /issues/{issue_id}/relations.{format}(createIssueRelation) - Arguments:
issue_id
- Body root:
relation - Body flags:
--delay <integer>: Number of days of delay forprecedes/followsrelations. Ignored for other relation types.--issue-to-id <integer>required--relation-type <string>required: Type of relation from this issue to the target issue. Values:relates(related to),duplicates(this duplicates target),duplicated(this is duplicated by target),blocks(this blocks target),blocked(this is blocked by target),precedes(this must finish before target starts),follows(this must start after target finishes),copied_to(this was copied to target),copied_from(this was copied from target)
Show issue relation
- Operation:
GET /relations/{issue_relation_id}.{format}(getIssueRelation) - Arguments:
issue_relation_id
Delete issue relation
- Operation:
DELETE /relations/{issue_relation_id}.{format}(deleteIssueRelation) - Arguments:
issue_relation_id
List versions by project
- Operation:
GET /projects/{project_id}/versions.{format}(getVersionsByProject) - Arguments:
project_id
- Flags:
--nometa <integer>--x-redmine-nometa <integer>
Create version
- Operation:
POST /projects/{project_id}/versions.{format}(createVersion) - Arguments:
project_id
- Body root:
version - Body flags:
--custom-field-values <object>--custom-fields <object>--default-project-version <boolean>: Set to true to make this the default target version for new issues in the project.--description <string>--due-date <string:date>--name <string>required--sharing <string>: Version sharing scope. Values:none(not shared),descendants(with subprojects),hierarchy(with ancestors and descendants),tree(with entire project tree),system(with all projects)--status <string>--wiki-page-title <string>: Title of a wiki page to associate with this version. Set to null to clear.
Show version
- Operation:
GET /versions/{version_id}.{format}(getVersion) - Arguments:
version_id
Update version
- Operation:
PUT /versions/{version_id}.{format}(updateVersion) - Arguments:
version_id
- Body flags:
--field version=<object>
Delete version
- Operation:
DELETE /versions/{version_id}.{format}(deleteVersion) - Arguments:
version_id
List wiki pages
- Operation:
GET /projects/{project_id}/wiki/index.{format}(getWikiPages) - Arguments:
project_id
Show wiki page
- Operation:
GET /projects/{project_id}/wiki/{wiki_page_title}.{format}(getWikiPage) - Arguments:
project_idwiki_page_title
- Flags:
--include <string>: Comma-separated list of associated data to include in the response. Values:attachments(file attachments)
Create or update wiki page
- Operation:
PUT /projects/{project_id}/wiki/{wiki_page_title}.{format}(updateWikiPage) - Arguments:
project_idwiki_page_title
- Body flags:
--wiki-page <object>
Delete wiki page
- Operation:
DELETE /projects/{project_id}/wiki/{wiki_page_title}.{format}(deleteWikiPage) - Arguments:
project_idwiki_page_title
Show wiki page by specific version
- Operation:
GET /projects/{project_id}/wiki/{wiki_page_title}/{version_id}.{format}(getWikiPageByVersion) - Arguments:
project_idwiki_page_titleversion_id
- Flags:
--include <string>: Comma-separated list of associated data to include in the response. Values:attachments(file attachments)
List queries
- Operation:
GET /queries.{format}(getQueries) - Flags:
--offset <integer>--limit <integer>--nometa <integer>--x-redmine-nometa <integer>
Download attachment file
Undocumented: This operation is not listed in the official documentation.
- Operation:
GET /attachments/download/{attachment_id}/{filename}(downloadAttachmentFile) - Arguments:
attachment_idfilename
Download thumbnail
Undocumented: This operation is not listed in the official documentation.
- Operation:
GET /attachments/thumbnail/{attachment_id}(downloadThumbnail) - Arguments:
attachment_id
- Flags:
--size <integer>: Desired thumbnail size in pixels (max 800). Rounded up to the nearest 50px increment. If not specified, the configured default thumbnail size is used.
Show attachment
- Operation:
GET /attachments/{attachment_id}.{format}(getAttachment) - Arguments:
attachment_id
Update attachment
- Operation:
PATCH /attachments/{attachment_id}.{format}(updateAttachment) - Arguments:
attachment_id
- Body flags:
--attachment <object>
Delete attachment
- Operation:
DELETE /attachments/{attachment_id}.{format}(deleteAttachment) - Arguments:
attachment_id
Upload attachment file
- Operation:
POST /uploads.{format}(uploadAttachmentFile) - Flags:
--filename <string>: Filename for the uploaded file. If not provided, a random hexadecimal name is generated.--content-type <string>: MIME type of the file (e.g.,application/pdf,image/png). If not provided, auto-detected from the filename.
- Body:
--input <file>sendsapplication/octet-stream.
List issue statuses
- Operation:
GET /issue_statuses.{format}(getIssueStatuses)
List trackers
- Operation:
GET /trackers.{format}(getTrackers)
List document categories
- Operation:
GET /enumerations/document_categories.{format}(getDocumentCategories)
List issue priorities
- Operation:
GET /enumerations/issue_priorities.{format}(getIssuePriorities)
List time entry activities
- Operation:
GET /enumerations/time_entry_activities.{format}(getTimeEntryActivities)
Show issue category
- Operation:
GET /issue_categories/{issue_category_id}.{format}(getIssueCategory) - Arguments:
issue_category_id
Update issue category
- Operation:
PUT /issue_categories/{issue_category_id}.{format}(updateIssueCategory) - Arguments:
issue_category_id
- Body flags:
--issue-category <object>
Delete issue category
- Operation:
DELETE /issue_categories/{issue_category_id}.{format}(deleteIssueCategory) - Arguments:
issue_category_id
- Flags:
--reassign-to-id <integer>: ID of another issue category to reassign issues to before deleting this category. If the category has associated issues and this parameter is not provided, the issues will have their category unset.
List issue categories
- Operation:
GET /projects/{project_id}/issue_categories.{format}(getIssueCategories) - Arguments:
project_id
- Flags:
--nometa <integer>--x-redmine-nometa <integer>
Create issue category
- Operation:
POST /projects/{project_id}/issue_categories.{format}(createIssueCategory) - Arguments:
project_id
- Body root:
issue_category - Body flags:
--assigned-to-id <integer>--name <string>required
List roles
- Operation:
GET /roles.{format}(getRoles)
Show role
- Operation:
GET /roles/{role_id}.{format}(getRole) - Arguments:
role_id
List groups
- Operation:
GET /groups.{format}(getGroups) - Flags:
--builtin <string>: Include built-in groups (e.g., "Anonymous", "Non member") in the response. Set to1to include built-in groups. Without this parameter, only user-created groups are returned.
Create group
- Operation:
POST /groups.{format}(createGroup) - Body root:
group - Body flags:
--custom-field-values <object>--custom-fields <object>--name <string>--twofa-required <boolean>: Require two-factor authentication for all members of this group.--user-ids <integer>: User IDs to add as members of this group.
Show group
- Operation:
GET /groups/{group_id}.{format}(getGroup) - Arguments:
group_id
- Flags:
--include <string>: Comma-separated list of associated data to include in the response. Values:users(list of users in the group),memberships(project memberships with roles)
Update group
- Operation:
PUT /groups/{group_id}.{format}(updateGroup) - Arguments:
group_id
- Body flags:
--group <object>
Delete group
- Operation:
DELETE /groups/{group_id}.{format}(deleteGroup) - Arguments:
group_id
Add user to group
- Operation:
POST /groups/{group_id}/users.{format}(addUserToGroup) - Arguments:
group_id
- Body flags:
--user-id <integer>required
Remove user from group
- Operation:
DELETE /groups/{group_id}/users/{user_id}.{format}(removeUserFromGroup) - Arguments:
group_iduser_id
List custom fields
- Operation:
GET /custom_fields.{format}(getCustomFields)
Search within project
- Operation:
GET /projects/{project_id}/search.{format}(getSearchByProject) - Arguments:
project_id
- Flags:
--limit <integer>--offset <integer>--nometa <integer>--q <string>: Search query string. Tokenized into words for matching. Whenall_wordsis enabled (default), all tokens must match. Otherwise, any token can match.--scope <string>: Search scope. Values:subprojects(include subprojects of the specified project) When not specified, only the specified project is searched.--all-words <string>: Require all words to match. Default istrue(all words must match). Set to empty string to disable (any word matches). Any non-empty value enables this option.--titles-only <string>: Search titles only. Default isfalse. Any non-empty value enables this option.--issues <integer>: Include issues in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--news <integer>: Include news in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--wiki-pages <integer>: Include wiki pages in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--documents <integer>: Include documents in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--changesets <integer>: Include changesets in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--messages <integer>: Include forum messages in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--open-issues <string>: Only return open issues. Default isfalse. Any non-empty value enables this option.--attachments <string>: Search attachments. Default is0(do not search attachments). Values:0(disabled),1(search attachments and content),only(search attachments only)--x-redmine-nometa <integer>
Search
- Operation:
GET /search.{format}(getSearch) - Flags:
--limit <integer>--offset <integer>--nometa <integer>--q <string>: Search query string. Tokenized into words for matching. Whenall_wordsis enabled (default), all tokens must match. Otherwise, any token can match.--scope <string>: Search scope. Values:all(all projects),my_projects(projects where current user is a member),bookmarks(bookmarked projects),subprojects(include subprojects, only effective for project-scoped search)--all-words <string>: Require all words to match. Default istrue(all words must match). Set to empty string to disable (any word matches). Any non-empty value enables this option.--titles-only <string>: Search titles only. Default isfalse. Any non-empty value enables this option.--issues <integer>: Include issues in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--news <integer>: Include news in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--wiki-pages <integer>: Include wiki pages in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--projects <integer>: Include projects in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched. Not available when searching within a specific project.--documents <integer>: Include documents in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--changesets <integer>: Include changesets in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--messages <integer>: Include forum messages in search results. Any non-empty value enables this search type. If no search type parameters are specified, all types are searched.--open-issues <string>: Only return open issues. Default isfalse. Any non-empty value enables this option.--attachments <string>: Search attachments. Default is0(do not search attachments). Values:0(disabled),1(search attachments and content),only(search attachments only)--x-redmine-nometa <integer>
List files
- Operation:
GET /projects/{project_id}/files.{format}(getFiles) - Arguments:
project_id
Create file
- Operation:
POST /projects/{project_id}/files.{format}(createFile) - Arguments:
project_id
- Body root:
file - Body flags:
--content-type <string>--description <string>--filename <string>--token <string>required--version-id <integer>
Show my account
- Operation:
GET /my/account.{format}(getMyAccount)
Update my account
- Operation:
PUT /my/account.{format}(updateMyAccount) - Body flags:
--pref <object>--user <object>
Update journal
Undocumented: This operation is not listed in the official documentation.
- Operation:
PUT /journals/{journal_id}.{format}(updateJournal) - Arguments:
journal_id
- Body flags:
--journal <object>
Add related issue
Undocumented: This operation is not listed in the official documentation.
- Operation:
POST /projects/{project_id}/repository/{repository_id}/revisions/{revision}/issues.{format}(addRelatedIssue) - Arguments:
project_idrepository_idrevision
- Body flags:
--issue-id <integer>required
Remove related issue
Undocumented: This operation is not listed in the official documentation.
- Operation:
DELETE /projects/{project_id}/repository/{repository_id}/revisions/{revision}/issues/{issue_id}.{format}(removeRelatedIssue) - Arguments:
project_idrepository_idrevisionissue_id