module BacklogKit::Client::Project
Methods for the Project
API
Public Instance Methods
Add a category to a project
@param project_id_or_key [Integer, String] Project
id or project key @param name [String] Category name @return [BacklogKit::Response] The category information
# File lib/backlog_kit/client/project.rb, line 196 def add_category(project_id_or_key, name) post("projects/#{project_id_or_key}/categories", name: name) end
Add an issue type to a project
@param project_id_or_key [Integer, String] Project
id or project key @param name [String] Issue
type name @param color [String] Background color of the issue type @return [BacklogKit::Response] The issue type information
# File lib/backlog_kit/client/project.rb, line 159 def add_issue_type(project_id_or_key, name, color) post("projects/#{project_id_or_key}/issueTypes", name: name, color: color) end
Add Project
Administrator role to a user
@param project_id_or_key [Integer, String] Project
id or project key @param user_id [Integer, String] User
id @return [BacklogKit::Response] The user information
# File lib/backlog_kit/client/project.rb, line 132 def add_project_admin_auth(project_id_or_key, user_id) post("projects/#{project_id_or_key}/administrators", user_id: user_id) end
Add a team to a project
@param project_id_or_key [Integer, String] Project
id or project key @param team_id [Integer, String] Team
id @return [BacklogKit::Response] The team information
# File lib/backlog_kit/client/project.rb, line 80 def add_project_team(project_id_or_key, team_id) post("projects/#{project_id_or_key}/teams", team_id: team_id) end
Add a user to a project
@param project_id_or_key [Integer, String] Project
id or project key @param user_id [Integer, String] User
id @return [BacklogKit::Response] The user information
# File lib/backlog_kit/client/project.rb, line 106 def add_project_user(project_id_or_key, user_id) post("projects/#{project_id_or_key}/users", user_id: user_id) end
Add a comment to a pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @param params [Hash] Request parameters @return [BacklogKit::Response] The comment information
# File lib/backlog_kit/client/project.rb, line 409 def add_pull_request_comment(project_id_or_key, repository_id_or_name, pull_request_number, params = {}) get("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}/comments", params) end
Add a version to a project
@param project_id_or_key [Integer, String] Project
id or project key @param name [String] Version name @param params [Hash] Request parameters @return [BacklogKit::Response] The version information
# File lib/backlog_kit/client/project.rb, line 233 def add_version(project_id_or_key, name, params = {}) params[:name] = name post("projects/#{project_id_or_key}/versions", params) end
Add a webhook to a project
@param project_id_or_key [Integer, String] Project
id or project key @param name [String] Webhook name @param hook_url [String] Webhook URL @param params [Hash] Request parameters @return [BacklogKit::Response] The webhook information
# File lib/backlog_kit/client/project.rb, line 308 def add_webhook(project_id_or_key, name, hook_url, params = {}) params[:name] = name params[:hook_url] = hook_url post("projects/#{project_id_or_key}/webhooks", params) end
Create a new project
@param key [String] Project
key @param name [String] Project
name @param params [Hash] Request parameters @return [BacklogKit::Response] The project information
# File lib/backlog_kit/client/project.rb, line 27 def create_project(key, name, params = {}) params[:key] = key params[:name] = name post('projects', params) end
Create a new pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param params [Hash] Request parameters @return [BacklogKit::Response] The pull request information
# File lib/backlog_kit/client/project.rb, line 367 def create_pull_request(project_id_or_key, repository_id_or_name, params = {}) post("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests", params) end
Delete a project
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] The project information
# File lib/backlog_kit/client/project.rb, line 46 def delete_project(project_id_or_key) delete("projects/#{project_id_or_key}") end
Download a project icon image
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] Binary image data
# File lib/backlog_kit/client/project.rb, line 54 def download_project_icon(project_id_or_key) get("projects/#{project_id_or_key}/image") end
Download an attachment file on pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @param attachment_id [Integer, String] Attachment file id @return [BacklogKit::Response] Binary data
# File lib/backlog_kit/client/project.rb, line 442 def download_pull_request_attachment(project_id_or_key, repository_id_or_name, pull_request_number, attachment_id) get("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}/attachments/#{attachment_id}") end
Get list of categories
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] List of categories
# File lib/backlog_kit/client/project.rb, line 187 def get_categories(project_id_or_key) get("projects/#{project_id_or_key}/categories") end
Get list of issue types
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] List of issue types
# File lib/backlog_kit/client/project.rb, line 149 def get_issue_types(project_id_or_key) get("projects/#{project_id_or_key}/issueTypes") end
Get a project
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] The project information
# File lib/backlog_kit/client/project.rb, line 17 def get_project(project_id_or_key) get("projects/#{project_id_or_key}") end
Get list of project activities
@param project_id_or_key [Integer, String] Project
id or project key @param params [Hash] Request parameters @return [BacklogKit::Response] List of recent updates in the project
# File lib/backlog_kit/client/project.rb, line 63 def get_project_activities(project_id_or_key, params = {}) get("projects/#{project_id_or_key}/activities", params) end
Get list of users who has Project
Administrator role
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] List of users
# File lib/backlog_kit/client/project.rb, line 123 def get_project_administrators(project_id_or_key) get("projects/#{project_id_or_key}/administrators") end
Get disk usage
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] The disk usage information
# File lib/backlog_kit/client/project.rb, line 280 def get_project_disk_usage(project_id_or_key) get("projects/#{project_id_or_key}/diskUsage") end
Get list of project teams
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] List of teams
# File lib/backlog_kit/client/project.rb, line 71 def get_project_teams(project_id_or_key) get("projects/#{project_id_or_key}/teams") end
Get list of project members
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] List of users
# File lib/backlog_kit/client/project.rb, line 97 def get_project_users(project_id_or_key) get("projects/#{project_id_or_key}/users") end
Get list of projects
@param params [Hash] Request parameters @return [BacklogKit::Response] List of projects
# File lib/backlog_kit/client/project.rb, line 9 def get_projects(params = {}) get('projects', params) end
Get a pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @return [BacklogKit::Response] The pull request information
# File lib/backlog_kit/client/project.rb, line 357 def get_pull_request(project_id_or_key, repository_id_or_name, pull_request_number) get("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}") end
Get list of attachment files on pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @return [BacklogKit::Response] List of files
# File lib/backlog_kit/client/project.rb, line 431 def get_pull_request_attachments(project_id_or_key, repository_id_or_name, pull_request_number) get("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}/attachments") end
Get number of comments in pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @return [BacklogKit::Response] Number of comments
# File lib/backlog_kit/client/project.rb, line 398 def get_pull_request_comment_count(project_id_or_key, repository_id_or_name, pull_request_number) get("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}/comments/count") end
Get list of comments in pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @return [BacklogKit::Response] List of comments
# File lib/backlog_kit/client/project.rb, line 388 def get_pull_request_comments(project_id_or_key, repository_id_or_name, pull_request_number) get("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}/comments") end
Get number of pull requests
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @return [BacklogKit::Response] Number of pull requests
# File lib/backlog_kit/client/project.rb, line 347 def get_pull_request_count(project_id_or_key, repository_id_or_name) get("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/count") end
Get list of pull requests
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @return [BacklogKit::Response] List of pull requests
# File lib/backlog_kit/client/project.rb, line 338 def get_pull_requests(project_id_or_key, repository_id_or_name) get("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests") end
Get list of versions
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] List of versions
# File lib/backlog_kit/client/project.rb, line 223 def get_versions(project_id_or_key) get("projects/#{project_id_or_key}/versions") end
Get a webhook
@param project_id_or_key [Integer, String] Project
id or project key @param webhook_id [Integer, String] Webhook id @return [BacklogKit::Response] The webhook information
# File lib/backlog_kit/client/project.rb, line 297 def get_webhook(project_id_or_key, webhook_id) get("projects/#{project_id_or_key}/webhooks/#{webhook_id}") end
Get list of webhooks
@param project_id_or_key [Integer, String] Project
id or project key @return [BacklogKit::Response] List of webhooks
# File lib/backlog_kit/client/project.rb, line 288 def get_webhooks(project_id_or_key) get("projects/#{project_id_or_key}/webhooks") end
Remove a category from project
@param project_id_or_key [Integer, String] Project
id or project key @param category_id [Integer, String] Category id @return [BacklogKit::Response] The category information
# File lib/backlog_kit/client/project.rb, line 215 def remove_category(project_id_or_key, category_id) delete("projects/#{project_id_or_key}/categories/#{category_id}") end
Remove an issue type from project
@param project_id_or_key [Integer, String] Project
id or project key @param type_id [Integer, String] Issue
type id @param substitute_type_id [Integer, String] Issue
type id to change linked issue @return [BacklogKit::Response] The issue type information
# File lib/backlog_kit/client/project.rb, line 179 def remove_issue_type(project_id_or_key, type_id, substitute_type_id) delete("projects/#{project_id_or_key}/issueTypes/#{type_id}", substitute_issue_type_id: substitute_type_id) end
Remove Project
Administrator role from user
@param project_id_or_key [Integer, String] Project
id or project key @param user_id [Integer, String] User
id @return [BacklogKit::Response] The user information
# File lib/backlog_kit/client/project.rb, line 141 def remove_project_admin_auth(project_id_or_key, user_id) delete("projects/#{project_id_or_key}/administrators", user_id: user_id) end
Remove a team from project
@param project_id_or_key [Integer, String] Project
id or project key @param team_id [Integer, String] Team
id @return [BacklogKit::Response] The team information
# File lib/backlog_kit/client/project.rb, line 89 def remove_project_team(project_id_or_key, team_id) delete("projects/#{project_id_or_key}/teams", team_id: team_id) end
Remove a user from project
@param project_id_or_key [Integer, String] Project
id or project key @param user_id [Integer, String] User
id @return [BacklogKit::Response] The user information
# File lib/backlog_kit/client/project.rb, line 115 def remove_project_user(project_id_or_key, user_id) delete("projects/#{project_id_or_key}/users", user_id: user_id) end
Remove an attachment file from pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @param attachment_id [Integer, String] Attachment file id @return [BacklogKit::Response] The pull request information
# File lib/backlog_kit/client/project.rb, line 453 def remove_pull_request_attachment(project_id_or_key, repository_id_or_name, pull_request_number, attachment_id) delete("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}/attachments/#{attachment_id}") end
Remove a version from project
@param project_id_or_key [Integer, String] Project
id or project key @param version_id [Integer, String] Version id @return [BacklogKit::Response] The version information
# File lib/backlog_kit/client/project.rb, line 253 def remove_version(project_id_or_key, version_id) delete("projects/#{project_id_or_key}/versions/#{version_id}") end
Remove a webhook from project
@param project_id_or_key [Integer, String] Project
id or project key @param webhook_id [Integer, String] Webhook id @return [BacklogKit::Response] The webhook information
# File lib/backlog_kit/client/project.rb, line 329 def remove_webhook(project_id_or_key, webhook_id) delete("projects/#{project_id_or_key}/webhooks/#{webhook_id}") end
Update a category
@param project_id_or_key [Integer, String] Project
id or project key @param category_id [Integer, String] Category id @param name [String] Category name @return [BacklogKit::Response] The category information
# File lib/backlog_kit/client/project.rb, line 206 def update_category(project_id_or_key, category_id, name) patch("projects/#{project_id_or_key}/categories/#{category_id}", name: name) end
Update an issue type
@param project_id_or_key [Integer, String] Project
id or project key @param type_id [Integer, String] Issue
type id @param params [Hash] Request parameters @return [BacklogKit::Response] The issue type information
# File lib/backlog_kit/client/project.rb, line 169 def update_issue_type(project_id_or_key, type_id, params = {}) patch("projects/#{project_id_or_key}/issueTypes/#{type_id}", params) end
Update a project
@param project_id_or_key [Integer, String] Project
id or project key @param params [Hash] Request parameters @return [BacklogKit::Response] The project information
# File lib/backlog_kit/client/project.rb, line 38 def update_project(project_id_or_key, params = {}) patch("projects/#{project_id_or_key}", params) end
Update a pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @param params [Hash] Request parameters @return [BacklogKit::Response] The pull request information
# File lib/backlog_kit/client/project.rb, line 378 def update_pull_request(project_id_or_key, repository_id_or_name, pull_request_number, params = {}) patch("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}", params) end
Update a comment in pull request
@param project_id_or_key [Integer, String] Project
id or project key @param repository_id_or_name [Integer, String] Repository id or repository name @param pull_request_number [Integer, String] Pull request number @param comment_id [Integer, String] Comment id @param content [String] Content of the comment @return [BacklogKit::Response] The comment information
# File lib/backlog_kit/client/project.rb, line 421 def update_pull_request_comment(project_id_or_key, repository_id_or_name, pull_request_number, comment_id, content) patch("projects/#{project_id_or_key}/git/repositories/#{repository_id_or_name}/pullRequests/#{pull_request_number}/comments/#{comment_id}", content: content) end
Update a version
@param project_id_or_key [Integer, String] Project
id or project key @param version_id [Integer, String] Version id @param params [Hash] Request parameters @return [BacklogKit::Response] The version information
# File lib/backlog_kit/client/project.rb, line 244 def update_version(project_id_or_key, version_id, params = {}) patch("projects/#{project_id_or_key}/versions/#{version_id}", params) end
Update a webhook
@param project_id_or_key [Integer, String] Project
id or project key @param webhook_id [Integer, String] Webhook id @param params [Hash] Request parameters @return [BacklogKit::Response] The webhook information
# File lib/backlog_kit/client/project.rb, line 320 def update_webhook(project_id_or_key, webhook_id, params = {}) patch("projects/#{project_id_or_key}/webhooks/#{webhook_id}", params) end