クイックスタート
curlでリンクを即時作成し、一括処理の結果を取得します。
1. 認証情報を取得する
アカウント → 友達紹介 → APIキーで個人APIキーを作成してください。表示されたときにコピーし、スクリプトにNINJABUY_API_KEYとして渡してください。秘密に保管してください。
他のNinjaBuyユーザーに代わって動作するアプリケーションにはOAuthを使用してください。
2. リンクを即時作成する
curl -sS https://www.ninjabuy.com/api/v1/links \
-H "Authorization: Bearer $NINJABUY_API_KEY" \
-H "Content-Type: application/json" \
--data '{"links":["https://weidian.com/item.html?itemID=7581746714"],"campaign":"spring-haul","label":"video 3"}'入力が100件以下の場合、results、warnings、request_idを含む200が返ります。各結果にはinputとstatusがあり、okの結果には紹介実績が記録されるリンクのurlとcodeが含まれます。各行を確認してください。HTTPの成功は、すべての入力の変換成功を意味しません。リンクをご覧ください。
3. 一括処理を開始する
入力が100件を超えると自動的にバックグラウンドで実行されます。1リクエストあたり最大2,000件です。1件のリンクでジョブを試すには、asyncをtrueに設定します。
curl -sS -D batch-headers.txt https://www.ninjabuy.com/api/v1/links \
-H "Authorization: Bearer $NINJABUY_API_KEY" \
-H "Content-Type: application/json" \
--data '{"links":["https://www.ninjabuy.com/search?q=hoodie"],"async":true}'レスポンスは202です。Locationには/api/v1/jobs/JOB_IDのような相対パスが入り、Retry-After: 5は次のポーリングまでの待ち時間を示します。本文にはjob.id、job.status、job.total、job.poll_after_secondsが含まれます。
4. カーソルで結果を取得する
レスポンスのジョブIDを使用します。最初のリクエストではcursorを省略してください。
curl -sS "https://www.ninjabuy.com/api/v1/jobs/JOB_ID" \
-H "Authorization: Bearer $NINJABUY_API_KEY"以降のリクエストでは、返されたnull以外のカーソルを変更せずに渡します。
curl -sS "https://www.ninjabuy.com/api/v1/jobs/JOB_ID?cursor=RETURNED_CURSOR" \
-H "Authorization: Bearer $NINJABUY_API_KEY"各ページのresultsを読み取ります。has_moreがtrueなら次のページを取得します。Falseでもジョブがqueuedまたはrunningの場合は、poll_after_secondsだけ待ち、保持しているカーソルで再びポーリングします。ジョブがdoneまたはfailedになり、すべてのページを取得したら終了します。ジョブとエラーをご覧ください。