All Projects → emsk → backlog_kit

emsk / backlog_kit

Licence: MIT license
Client library for the Nulab's Backlog API version 2 written in Ruby.

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to backlog kit

Puree
Metadata extraction from the Pure Research Information System.
Stars: ✭ 8 (-71.43%)
Mutual labels:  gem, api-client
als typograf
Ruby client for ArtLebedevStudio.RemoteTypograf Web Service.
Stars: ✭ 15 (-46.43%)
Mutual labels:  gem, api-client
Instagram api gem
A Ruby wrapper for the Instagram API
Stars: ✭ 100 (+257.14%)
Mutual labels:  gem, api-client
pixela
Pixela API client for Ruby
Stars: ✭ 23 (-17.86%)
Mutual labels:  gem, api-client
my api client
A framework of Web API Client. Provides features error handling, retrying, pagination and so on.
Stars: ✭ 19 (-32.14%)
Mutual labels:  gem, api-client
qvapay-python
Non official, but friendly QvaPay library for the Python language.
Stars: ✭ 18 (-35.71%)
Mutual labels:  api-client
cells-client
Command line client to communicate with cells REST api.
Stars: ✭ 17 (-39.29%)
Mutual labels:  api-client
strava
PHP Class for the Strava API (v3)
Stars: ✭ 117 (+317.86%)
Mutual labels:  api-client
php-abraflexi
PHP Based Library for easy interaction with czech accounting system FlexiBee.
Stars: ✭ 15 (-46.43%)
Mutual labels:  api-client
Clamor
The Python Discord API Framework
Stars: ✭ 14 (-50%)
Mutual labels:  api-client
pyFireEye
Python API bindings for FireEye Products
Stars: ✭ 12 (-57.14%)
Mutual labels:  api-client
nis-python-client
Python client for NEM NIS API (https://nemproject.github.io). XEM\NEM\Crypto
Stars: ✭ 16 (-42.86%)
Mutual labels:  api-client
JSON-API-Client
Abstract client-side php implementation of the json api specification (jsonapi.org)
Stars: ✭ 17 (-39.29%)
Mutual labels:  api-client
i18n lazy scope
Use lazy lookup with custom i18n scopes.
Stars: ✭ 11 (-60.71%)
Mutual labels:  gem
DummyJSON
DummyJSON provides different types of REST Endpoints filled with JSON data which you can use in developing the frontend with your favorite framework and library without worrying about writing a backend.
Stars: ✭ 213 (+660.71%)
Mutual labels:  api-client
churnalizer
Analyze your Ruby app for Churn vs Complexity
Stars: ✭ 17 (-39.29%)
Mutual labels:  gem
pinboard.net
Fully featured API wrapper for pinboard.in
Stars: ✭ 21 (-25%)
Mutual labels:  api-client
active record-updated at
Touch `updated_at` by default with calls to `update_all` and `update_column(s)`
Stars: ✭ 27 (-3.57%)
Mutual labels:  gem
bitflyer-api-dotnet-client
bitFlyer HTTP APIs Client Library for .NET (C#)
Stars: ✭ 23 (-17.86%)
Mutual labels:  api-client
southwest-checkin
Easy-to-use gem to check in to Southwest flights automatically. Also supports sending email notifications.
Stars: ✭ 67 (+139.29%)
Mutual labels:  gem

BacklogKit

Gem Version Build Status Build Status Build status Build Status Codecov Code Climate Inline docs License

Ruby wrapper for the Nulab's Backlog API.

https://developer.nulab.com/docs/backlog/

Installation

Add this line to your application's Gemfile:

gem 'backlog_kit'

And then execute:

$ bundle

Or install it yourself as:

$ gem install backlog_kit

Usage

require 'backlog_kit'

client = BacklogKit::Client.new(
  space_id: 'emsk',
  api_key: '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghij1234'
)

client.get_space.body # get body
client.get_space.headers # get headers
client.get_space.status # get status

client.get_space_activities # no params
client.get_space_activities(activity_type_id: [1, 4], min_id: 100) # underscored key
client.get_space_activities(activityTypeId: [1, 4], minId: 100) # camelized key

client.get_groups.body[0].members[0].mail_address # method chaining

You can also use low-level methods.

client.get('projects/1234/customFields') # GET
client.post('groups', name: 'beer') # POST
client.put('space/notification', content: 'Cheers!') # PUT
client.patch('groups/3712', name: 'whiskey') # PATCH
client.delete('groups/3712') # DELETE

Authentication

API key

client = BacklogKit::Client.new(
  space_id: 'emsk',
  api_key: '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghij1234'
)

OAuth access token

client = BacklogKit::Client.new(
  space_id: 'emsk',
  api_key: nil, # api_key should be nil
  access_token: 'abcdefghij1234567890abcdefghij1234567890abcdefghij1234567890abcd'
)

BacklogKit::Client Config

Variable ENV Variable Description Default
space_id BACKLOG_SPACE_ID Your Backlog SPACE ID.
second_level_domain BACKLOG_SECOND_LEVEL_DOMAIN Your Backlog SECOND LEVEL DOMAIN. backlog
top_level_domain BACKLOG_TOP_LEVEL_DOMAIN Your Backlog TOP LEVEL DOMAIN. com
api_key BACKLOG_API_KEY Your Backlog API KEY.
client_id BACKLOG_OAUTH_CLIENT_ID CLIENT ID of your Backlog application.
client_secret BACKLOG_OAUTH_CLIENT_SECRET CLIENT SECRET of your Backlog application.
refresh_token BACKLOG_OAUTH_REFRESH_TOKEN REFRESH TOKEN obtained from the token endpoint.

If you set ENV variables, you can create an instance more simply.

client = BacklogKit::Client.new

Supported Backlog API Version

BacklogKit supports Backlog API 2.32.2.

BacklogKit's API documentation is here.

Supported Ruby Versions

  • Ruby 2.0.0
  • Ruby 2.1
  • Ruby 2.2
  • Ruby 2.3
  • Ruby 2.4
  • Ruby 2.5
  • Ruby 2.6
  • Ruby 2.7

Contributing

  1. Fork it ( https://github.com/emsk/backlog_kit/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].