Skip to content
Ruby examples with graphql-client for qnyp GraphQL API.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
images
.gitignore
.rubocop.yml
Gemfile
Gemfile.lock
LICENSE.txt
README.md
create_log.rb
get_title.rb
schema.json
search_titles.rb

README.md

qnyp GraphQL API Example (Ruby)

このリポジトリには、Rubyからqnyp GraphQL APIを呼び出す以下のサンプルスクリプトが含まれています。

  • search_titles.rb - タイトルをキーワード検索して結果を出力します
  • get_title.rb - タイトルの情報を取得して結果を出力します
  • create_log.rb - エピソードの視聴ログを記録します

サンプルを実行するにはqnypのアクセストークンが必要です。

アクセストークンの取得

qnypにログインした状態で https://qnyp.com/settings/api にアクセスすると、 write スコープを持つ自分用のアクセストークンを生成することができます。

Screenshot

準備

$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin16]

$ git clone https://github.com/qnyp/qnyp-graphql-example-ruby.git
$ cd qnyp-graphql-example-ruby
$ bundle install --path .bundle

search_titles.rb

環境変数ACCESS_TOKENにアクセストークンの値を、引数に検索キーワードを指定します。

$ ACCESS_TOKEN=アクセストークン bundle exec ./search_titles.rb 検索キーワード

実行例:

Screenshot

get_title.rb

環境変数ACCESS_TOKENにアクセストークンの値を、引数にタイトルのIDを指定します。

$ ACCESS_TOKEN=アクセストークン bundle exec ./get_title.rb タイトルのID

実行例:

Screenshot

create_log.rb

環境変数ACCESS_TOKENにアクセストークンの値を、引数に対象のエピソードおよび記録する内容を指定します。 本文を指定しなかった場合は、本文の無い視聴ログが作成されます。

$ ACCESS_TOKEN=アクセストークン bundle exec ./create_log.rb エピソードのID 評価 本文

実行例:

$ ACCESS_TOKEN=アクセストークン bundle exec ./create_log.rb RXBpc29kZS03NDkyOA GREAT "すごーい!"

id: TG9nLTIxMTcw
databaeId: XXXXX
createdAt: 2017-04-28T11:11:00Z
body: すごーい!
rating: GREAT
user.username: junya
episode.subtitle: さばんなちほー
url: http://qnyp.com/junya/logs/XXXXX
You can’t perform that action at this time.