ラック
Home > ブログ > 記事 > 2017年12月 > Foursquare APIのテスト(チェックイン作成は403で失敗)

Foursquare APIのテスト(チェックイン作成は403で失敗)

カテゴリ: ホームページ,プログラム,Webサービス

「Webサイト上からチェックインできると良いなー」と思い、Foursquare APIを触ってみることにしました。

  1. 公式サイト(Foursquare)のメニューの「開発者」をクリック
  2. 開発者用ページにジャンプするので「Log-in」をクリック
    Foursquare開発者ページ
  3. まだ何もアプリを作っていないので、マイアプリの「新しいアプリを作る」
    マイアプリの「新しいアプリを作る」を選択
  4. アプリを作成で名前とURLを入力し、チェックを2つ(利用規約とCAPTCHA)付けて「Continue」
    マイアプリの名前とURLの入力
  5. アプリの種類ですが、今回はテストなので「Sandbox」で「アプリを作成」。
    アプリの種類を選択し、「アプリを作成」

これでアクセスに必要なclient_idclient_secretが手に入るので、早速APIを叩いてみます。

https://api.foursquare.com/v2/venues/search?ll=xx.xxxxxx,yyy.yyyyyy&client_id=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&client_secret=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&v=YYYYmmdd

レスポンスで200とjson形式のデータが返ってきたので大丈夫そうです。これでベニュー(スポット)のIDであるvenueIdも分かったので、これらを組み合わせてチェックインしてみようと思い、Create a Check-in - Foursquare DeveloperのAPIを叩いてみることにしました。

<form action="https://api.foursquare.com/v2/checkins/add" method="post">
    <input type="hidden" name="client_id" value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX">
    <input type="hidden" name="client_secret" value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX">
    <input type="hidden" name="v" value="<?php echo date(Ymd); ?>">
    <button type="submit" name="venueId" value="XXXXXXXXXXXXXXXXXXXXXXXX">チェックインする</button>
</form>

POSTで必要なパラメータを入れて……と。しかし。

{
    "meta": {
        "code": 403,
        "errorType": "not_authorized",
        "errorDetail": "A user is required to call this endpoint.",
        "requestId": "XXXXXXXXXXXXXXXXXXXXXXXXX"
    },
    "response": {}
}

え、認証失敗の403……?パラメータを変えてあれこれ試してみましたが、どうにもエラーは変わらず。うーん、どうやらこれではダメのようです。ちょっと困りました……。

検索してもあまりサンプルが見当たらないので打開策が思い付かず、今回はここで一度打ち切りに。

参考サイト

タグ: その他,php

 



関連する記事一覧