API

ヤフオク API:出品検索と落札相場を JSON で

ヤフオク!の公式 API はアフィリエイトや出品者向けの仕組みで、取得できる範囲が限られています。ここで扱うのは公開ページに出ている情報そのものです。相場を知りたい、ある出品者の在庫を追いたい、カテゴリ全体を見たい、という用途に向いています。アカウントは不要で、応答は JSON です。

エンドポイント

endpoint返ってくるもの必須
searchキーワードで出品中のオークションを検索。オークション ID、タイトル、画像、現在価格、即決価格、入札数、終了時刻。query
sold/search落札相場。過去およそ6か月の落札済み出品を、実際に落札された価格と日付つきで返します。相場を出すならここです。すべて任意
product/detail1 件のオークションの全体:タイトル、説明文の全文、すべての画像、価格、入札履歴の要約、出品者。出品中・終了後どちらも。auction_id
seller/listings出品者のプロフィールと出品中の一覧:表示名、ストアか個人か、評価。seller_id
category/productsカテゴリ単位の一覧。そのカテゴリ名、親カテゴリ、サブカテゴリと、中の出品。category_id
categoriesカテゴリツリーを 1 階層ずつ。末端かどうかも返します。すべて任意
suggest入力途中のキーワードに対するヤフオク自身の検索候補。日本のみ。query

呼び出しごとにクレジットを消費します。失敗した呼び出しとブロックされた呼び出しは無料です。

動作する例

相場を調べるなら search ではなく sold/search を使ってください。出品中の価格は「まだ売れていない価格」であり、実際に売れた価格ではありません。この違いが結果を大きく変えます。

リクエスト
curl -X POST https://api.reefapi.com/yahoo-auctions/v1/sold/search \
  -H "x-api-key: あなたのキー" \
  -H "content-type: application/json" \
  -d '{"query": "ポケモンカード", "page": 1}'
レスポンス(抜粋)
{
  "ok": true,
  "data": {
    "results": [
      {
        "auction_id": "...",
        "title": "...",
        "sold_price": 12500,
        "sold_date": "2026-09-28",
        "bids": 34
      }
    ]
  },
  "meta": { "record_count": 50, "cache_hit": false, "mode": "live" }
}

自分でスクレイピングを書く代わりに

ヤフオクのスクレイパーを書くこと自体は難しくありません。つらくなるのは二か月目です。ページ構造が変わるとパーサーはエラーを出さずに空の配列を返し、ボット対策が働くとリクエストが静かに弾かれます。どちらも手元では「出品がありませんでした」と同じ顔をします。

この API では保守はこちら側の仕事です。構造が変われば直しますし、ブロックされた場合はエラーコードが返り、その呼び出しは課金されません。

一度きりの調査なら自分のスクリプトのほうが安上がりです。これは正直にそう言います。毎日動かす相場監視を作るなら、費用はコードではなく「気づかなかった故障」のほうに積み上がります。

制限と正直な注記

  • ヤフオクの公式 API ではなく、ヤフーとの提携関係もありません。
  • 落札相場はおよそ過去6か月です。それ以前の落札はヤフオク自身が公開していないため、こちらでも返せません。
  • suggest は日本のヤフオクのみです。台湾版は対象外です。
  • キャッシュはありません。毎回その時点の状態を取得します。