Popularity
0.8
Stable
Activity
0.0
Stable
2
1
1

Monthly Downloads: 2
Programming language: Elixir
License: MIT License
Tags: Third Party APIs    
Latest version: v0.0.1

asanaficator alternatives and similar packages

Based on the "Third Party APIs" category.
Alternatively, view asanaficator alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of asanaficator or a related project?

Add another 'Third Party APIs' Package

README

Build Status

Asanaficator

Simple Elixir wrapper for the Asana API. Based on Tentacat.

Documentation can be found here.

Features

  • Users
  • Tasks
    • Projects

Quickstart

Fetching dependencies and running on elixir console:

mix deps.get
iex -S mix

You will see something like this:

Erlang/OTP 17 [erts-6.0] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false]

Interactive Elixir (0.13.3) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)>

Now you can run the examples!

Examples

Every call to Asana need a client.

Getting info from a user using a client

iex> client = Asanaficator.Client.new(%{access_token: "1234567890"})
Asanaficator.Client{auth: %{access_token: "1234567890"}, endpoint: "https://app.asana.com/api/1.0/"}
iex> Asanaficator.Users.me client
%{"data" => %{"email" => "[email protected]", "id" => 123,
    "name" => "John Doe",
    "photo" => %{"image_128x128" => "https://s3.amazonaws.com/profile_photos/123.abc_128x128.png",
      "image_21x21" => "https://s3.amazonaws.com/profile_photos/123.abc_21x21.png",
      "image_27x27" => "https://s3.amazonaws.com/profile_photos/123.abc_27x27.png",
      "image_36x36" => "https://s3.amazonaws.com/profile_photos/123.abc_36x36.png",
      "image_60x60" => "https://s3.amazonaws.com/profile_photos/123.abc_60x60.png"},
    "workspaces" => [%{"id" => 456, "name" => "example.com"},
     %{"id" => 789, "name" => "Personal Projects"}]}}

Getting a task

iex> Asanaficator.Tasks.find(12345, client)
%{"data" => %{"assignee" => nil, "assignee_status" => "upcoming",
    "completed" => false, "completed_at" => nil,
    "created_at" => "2015-06-30T00:40:30.971Z", "due_at" => nil,
    "due_on" => nil,
    "followers" => [%{"id" => 123, "name" => "John Doe"}], "hearted" => false,
    "hearts" => [], "id" => 456,
    "memberships" => [%{"project" => %{"id" => 456,
         "name" => "That Awesome Project"}, "section" => nil}],
    "modified_at" => "2015-06-30T11:11:37.472Z",
    "name" => "This is an example task",
    "notes" => "Some really great descriptive notes",
    "num_hearts" => 0, "parent" => nil,
    "projects" => [%{"id" => 456,
       "name" => "That Awesome Project"}], "tags" => [],
    "workspace" => %{"id" => 456, "name" => "example.com"}}}

Contributing

Start by forking this repo

Then run this command to fetch dependencies and run tests:

MIX_ENV=test mix do deps.get, test

Pull requests are greatly appreciated