Skip to content

q60/balalaika_bear

 
 

Repository files navigation

BalalaikaBear

Join the chat at https://gitter.im/balalaika_bear/Lobby CircleCI

BalalaikaBear - simple elixir wrapper for VK API

Installation

Add balalaika_bear to your list of dependencies in mix.exs:

def deps do
  [{:balalaika_bear, "~> 0.1.2"}]
end

Usage

All VK api method groups have corresponding modules. For example, Users method group corresponds to BalalaikaBear.Users module. All api methods take map with params and return tuple with {:ok, result} or {:error, result}, result is also map. Method names are snakecased.

Examples:

iex> BalalaikaBear.Users.get(%{user_ids: [13886710], fields: ["photo_max", "sex"], name_case: "ins"})
{:ok,
 [%{"first_name" => "Айратом", "hidden" => 1,
    "last_name" => "Бадыковым",
    "photo_max" => "https://pp.vk.me/c837131/v837131710/1240d/roPlCfnhZf4.jpg",
    "sex" => 2, "uid" => 13886710}]}

iex> BalalaikaBear.Friends.get_recent(%{access_token: "0632e6d2eda02e4a891da1ddcec99ff333804cce64f4a156a1a988f2c5696ee299209f2179e33038c8447"})
{:ok,
 [85795727, 397515497, 1853478, 17040466, 60572844, 102237877, 311351751,
  24024015, 7425266, 37130508, 33338345, 90365581, 10848035, 19841812, 19295783,
  40546021, 97004807, 16633457, 684522, 95240582, 37732872, 28975723, 31308630,
  16607929, 24965682, 46861948, 273283791, 15733285, 51835166, 250923080,
  14563583, 251266422, 43352802, 196192600, 89721960, 278044518, 38296606,
  8225855, 30534493, 37613006, 12958248, 92178223, 43750368, 53755118, 10507005,
  3969963, 74360103, 20342602, 8854979, ...]}

iex> BalalaikaBear.Apps.get(%{app_id: 5803246})
{:ok,
 %{"author_id" => 13886710, "author_url" => "https://vk.com/id13886710",
   "banner_186" => "https://vk.com/images/dquestion_x.gif",
   "banner_896" => "https://vk.com/images/dquestion_v.png",
   "icon_100" => "https://vk.com/images/dquestion_100.gif",
   "icon_128" => "https://vk.com/images/dquestion_i.png",
   "icon_200" => "https://vk.com/images/dquestion_a.png",
   "icon_25" => "https://vk.com/images/dquestion_e.gif",
   "icon_256" => "https://vk.com/images/dquestion_f.png",
   "icon_50" => "https://vk.com/images/dquestion_c.gif",
   "icon_75" => "https://vk.com/images/dquestion_d.png", "id" => 5803246,
   "is_in_catalog" => 0, "leaderboard_type" => 0, "members_count" => 1,
   "title" => "test_elixir", "type" => "standalone"}}

More examples can be found in test files.

Available api modules

  • BalalaikaBear.Account
  • BalalaikaBear.Apps
  • BalalaikaBear.Audio
  • BalalaikaBear.Auth
  • BalalaikaBear.Board
  • BalalaikaBear.Database
  • BalalaikaBear.Docs
  • BalalaikaBear.Fave
  • BalalaikaBear.Friends
  • BalalaikaBear.Gifts
  • BalalaikaBear.Groups
  • BalalaikaBear.Leads
  • BalalaikaBear.Likes
  • BalalaikaBear.Market
  • BalalaikaBear.Messages
  • BalalaikaBear.Newsfeed
  • BalalaikaBear.Notes
  • BalalaikaBear.Notifications
  • BalalaikaBear.Orders
  • BalalaikaBear.Pages
  • BalalaikaBear.Photos
  • BalalaikaBear.Places
  • BalalaikaBear.Polls
  • BalalaikaBear.Search
  • BalalaikaBear.Secure
  • BalalaikaBear.Stats
  • BalalaikaBear.Status
  • BalalaikaBear.Storage
  • BalalaikaBear.Users
  • BalalaikaBear.Utils
  • BalalaikaBear.Video
  • BalalaikaBear.Wall
  • BalalaikaBear.Widgets

Documentation for available methods can be found here(russian) or here(english)

Available api methods

https://hexdocs.pm/balalaika_bear/api-reference.html

Contributing

Start by forking this repo

Pull requests are greatly appreciated

About

VK API wrapper for Elixir

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Elixir 100.0%