chrisbolman / ruby-client

Namely API Ruby Client

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Namely

Travis Code Climate

The Namely gem wraps the Namely HTTP API, allowing you to manipulate your account through Ruby.

Installation

Add this line to your application's Gemfile:

gem "namely"

And then execute:

$ bundle

Or install it yourself as:

$ gem install namely

Establishing a connection

First, you'll need to create a connection to your Namely account using your access token and subdomain.

namely = Namely::Connection.new(
  access_token: "your_access_token",
  subdomain: "your-organization",
)

An access token can be obtained through your organization's Namely account.

Namely associates a subdomain with your organization. For example, if your account is at http://your-organization.namely.com/, your subdomain would be "your-organization".

Usage Examples

Once you've created a connection you can use it to access your data.

namely.countries.all.each do |country|
  puts "#{country.id} - #{country.name}"
end
# AF - Afghanistan
# AL - Albania
# DZ - Algeria
# AS - American Samoa
# ...
if namely.countries.exists?("BE")
  "Belgium exists!"
else
  "Hmm."
end # => "Belgium exists!"
namely.countries.find("BE")
# => <Namely::Model id="BE", name="Belgium", subdivision_type="Province", links={"subdivisions"=>[{"id"=>"BRU", "name"=>"Brussels"}, {"id"=>"VAN", "name"=>"Antwerpen (nl)"}, {"id"=>"VBR", "name"=>"Vlaams Brabant (nl)"}, {"id"=>"VLI", "name"=>"Limburg (nl)"}, {"id"=>"VOV", "name"=>"Oost-Vlaanderen (nl)"}, {"id"=>"VWV", "name"=>"West-Vlaanderen (nl)"}, {"id"=>"WBR", "name"=>"Brabant Wallon (fr)"}, {"id"=>"WHT", "name"=>"Hainaut (fr)"}, {"id"=>"WLG", "name"=>"Liège (fr)"}, {"id"=>"WLX", "name"=>"Luxembourg (fr)"}, {"id"=>"WNA", "name"=>"Namur (fr)"}]}>
foo_bar = namely.profiles.create!(
  first_name: "Dade",
  last_name: "Murphy",
  email: "crash_override@example.com"
)

foo_bar.id # => "37c919e2-f1c8-4beb-b1d4-a9a36ccc830c"

Contributing

Wanna help out? Great! Here are a few resources that might help you started:

Setting up a development environment

The Namely gem uses dotenv to manage environment variables. To run the tests you'll need to create a .env file in the project's root directory and assign a few variables in it.

Just take this example .env file and plug in appropriate values:

TEST_ACCESS_TOKEN=my-sample-access-token
TEST_SUBDOMAIN=my-sample-subdomain

You'll need admin access to a Namely site to get tokens for these variables. You can create application and permanent tokens on the API page of the site.

Submitting your changes

  1. Fork it!
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am "Add some feature"). Be sure to include tests!
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new pull request. We'll review it and leave feedback for you ASAP.

About

Namely API Ruby Client

License:MIT License


Languages

Language:Ruby 100.0%