Teamwork is project management software for teams. This gem attempts to get as close to 100% coverage for the API as possible, with a few notable holes being uploading files and managing companies. I would welcome any pull-request that add these capabilities.
To get started add gem "teamworkpm"
to your Gemfile
(if using Bundler) or run gem install teamworkpm
.
In order to use the teamworkpm
gem you will need to have an active teamwork account with full API access. You can read the docs
on getting your API key here.
Authentication to the API is done through the class method authenticate
. Teamwork.authenticate(api_key)
will log you in. Failed authentication will return a 401
, else the account for the authenticated user.
Teamwork.account_info
Teamwwork.authenticate(api_key)
Teamwork.recent_activity(options) # Defaults to returning 60 items
Teamwork.get_comments(resource, id, options = {})
Teamwork.get_comment(id)
Teamwork.post_comment(resource, id, options)
Teamwork.update_comment(id, options)
Teamwork.delete_comment(id)
Teamwork.get_companies
Teamwork.get_file(id)
Teamwwork.get_message(id)
Teamwork.get_notebooks(options = {})
Teamwork.get_people(options = {})
Teamwork.project_activity(project_id, options = {})
Teamwork.project_timers(project_id, options = {})
Teamwork.project_people(project_id)
Teamwork.project_files(project_id)
Teamwork.project_messages(project_id)
Teamwork.project_companies(project_id)
Teamwork.projects(options = {})
Teamwork.project(id)
Teamwork.toggle_project_star(id, star: true)
Teamwork.create_project(options = {})
Teamwork.update_project(id, options = {})
Teamwork.delete_project(id)
Teamwork.task_timers(task_id, options)
Teamwork.all_tasks(options = {})
Teamwork.time_entries(options = {})
Teamwork.time_entry(id)
Teamwork.update_time_entry(options = {})
Teamwork.delete_time_entry(id)