LoginSignup
9
7

More than 5 years have passed since last update.

Square APIをはじめてみよう

Last updated at Posted at 2017-08-15

Square APIを試すのは簡単です。まず開発者ポータルにログインします。Square APIのサイトから開発者ポータルに入れます。

Screenshot_ 2017-08-15 16.54.08.png

ログインするとアプリケーションダッシュボードが表示されます。最初はNew Applicationをクリックします。

Screenshot_ 2017-08-15 16.54.34.png

新しいアプリケーションができると、認証情報としてアプリケーションIDとパーソナルアクセストークンが表示されます。これはどちらも重要な情報なので取り扱いに注意してください。

Screenshot_ 2017-08-15 16.55.10.png

と同時にサンドボックス用のアプリケーションIDとアクセストークンも作成されます。このサンドボックスと言う環境はAPIのテスト環境になります。ここで決済を行ったとしても課金される訳ではありませんのでAPIを試用するのにぴったりな環境です。このサンドボックスは v2 のみに対して提供されるのでご注意ください。

ではまずこのサンドボックス環境を使ってAPIを呼んでみることにしましょう。今回はRubyを使います。

開発者ドキュメントによると unirest というライブラリを使うのが推奨されています。 unirest はHTTPアクセスを容易にしてくれるライブラリで、RubyだけでなくPython/Node/PHP/Java/Objective-C/.NET/Windows 8などで利用できるようになっています。共通した使い勝手なので、別な言語に乗り換えた時にもすぐに使いこなせるでしょう。

まずunirestをインストールします。コマンドラインで行います。

$ gem install unirest

そしてテストコードは次のようになります。 YOUR_SANDBOX_ACCESS_TOKEN と書かれている部分はサンドボックス環境のアクセストークンを記述してください。

require 'unirest'

access_token = 'YOUR_SANDBOX_ACCESS_TOKEN'

response = Unirest.get 'https://connect.squareup.com/v2/locations', 
  headers: {
    'Accept': 'application/json',
    'Authorization': 'Bearer ' + access_token
  }

puts response.body

上記内容を squre.rb として保存します。

今回はLocation APIを試します。これは店舗などの拠点情報が得られるAPIです。

実行すると、下記のように結果が表示されます。

$ ruby squre.rb 
{
  "locations"=>[
    {
      "id"=>"CBASEJqRSQmT1vVfMXar4RcrtCcgAQ",
      "name"=>"ヤマモト 東京",
      "address"=>{
        "address_line_1"=>"中 1丁目",
        "locality"=>"東京都",
        "administrative_district_level_1"=>"国立市",
        "postal_code"=>"186-0004",
        "country"=>"JP"
      },
      "timezone"=>"Asia/Tokyo",
      "capabilities"=>[
        "CREDIT_CARD_PROCESSING"
      ],
      "status"=>"ACTIVE"
    }
  ]
}

拠点の一つであるヤマモト 東京(これはサンドボックス環境なのでデモデータです)のデータが得られました。

このようにAPIを使うことでSquareから簡単にデータを取り出したり、逆にデータの登録もできるようになっています。ドキュメントはSquare Connect API Documentationにありますので実装時にはぜひお読みください。

9
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
7