https://github.com/dashofcode/extracker
Simple Elixir wrapper for the Pivotal Tracker API.
Based heavily on the Tentacat and ExTwiter libraries.
- Account
- Account Memberships
- Accounts
- Activity
- Attachments
- Comments
- Get
- Put
- Post
- Delete
- Epic
- Epics
- Exports
- Iterations
- Labels
- Me
- Get
- Put
- Notifications
- Project
- Get
- Put
- Delete
- Project History
- Project Integrations
- Project Memberships
- Project Webhooks
- Projects
- Get
- Post
- Reports
- Request Aggregator
- Search
- Source Commits
- Stories
- Get
- Post
- Story
- Get
- Put
- Delete
- Story Tasks
- Story Transitions
- Workspaces
Documentation can be found here
- Add extracker to your list of dependencies in
mix.exs:
defdepsdo[{:extracker,"~> 0.1"}]end- Ensure extracker is started before your application:
defapplicationdo[applications: [:extracker]]end# Create a client.iex>client=ExTracker.Client.new(%{access_token: "d55c3bc1f74346b843ca84ba340b29bf"})%ExTracker.Client{auth: %{access_token: "d55c3bc1f74346b843ca84ba340b29bf"},endpoint: "https://www.pivotaltracker.com/services/v5/"}# Get project including epics and the epic's label.iex>%ExTracker.Record.Project{name: name,epics: epics}=...>ExTracker.Projects.find(1027488,...>client,...>fields: ":default,epics(:default,label(name))")%ExTracker.Record.Project{number_of_done_iterations_to_show: 12,point_scale: "0,1,2,3",week_start_day: "Monday",iteration_override_numbers: nil,enable_tasks: true,story_ids: nil,membership_ids: nil,created_at: "2014-03-02T07:11:04Z",integration_ids: nil,start_time: "2014-02-10T08:00:00Z",has_google_domain: false,current_iteration_number: 104,label_ids: nil,time_zone: %ExTracker.Record.TimeZone{kind: "time_zone",offset: "-08:00",olson_name: "America/Los_Angeles"},labels: nil,current_volatility: nil,bugs_and_chores_are_estimatable: false,iteration_length: 1,name: "My Sample Project",epic_ids: nil,profile_content: "This is a demo project, created by Tracker, with example stories for a simple shopping web site.",description: nil,account: nil,start_date: nil,updated_at: "2014-03-02T07:11:04Z",initial_velocity: 10,velocity_averaged_over: 3,automatic_planning: true,id: 1027488,atom_enabled: false,project_type: "demo",account_id: 621384,epics: [%ExTracker.Record.Epic{description: "Get the Admin users working on the site",id: 1087314,kind: "epic",label: %ExTracker.Record.Label{counts: nil,id: 7849080,kind: nil,name: "admin",project_id: nil},label_id: nil,name: "Admin Users",project_id: 1027488,url: "https://www.pivotaltracker.com/epic/show/1087314"},%ExTracker.Record.Epic{description: "Allow shoppers to use the site",id: 1087316,kind: "epic",label: %ExTracker.Record.Label{counts: nil,id: 7849082,kind: nil,name: "shopping",project_id: nil},label_id: nil,name: "Shoppers",project_id: 1027488,url: "https://www.pivotaltracker.com/epic/show/1087316"}],public: false,current_velocity: nil,kind: "project",version: 80,shown_iterations_start_time: nil,enable_incoming_emails: true,point_scale_is_custom: false}iex>name"My Sample Project"iex>[%ExTracker.Record.Epic{name: epic_name,label: %ExTracker.Record.Label{name: label_name}}|_]=epicsiex>epic_name"Admin Users"iex>label_name"admin"