当社独自のアクセス統計は常に有効です。Google Analyticsは、公開ページ(ログイン後のワークスペースは対象外)の利用状況を把握するためのもので、許可をいただいた場合のみ有効になります。詳しくは プライバシーポリシーをご覧ください。

POST

APIの稼働状況

24時間の稼働状況
正常
24時間の平均応答時間
—
  • 良好/正常
  • 利用可能
  • 制限あり
  • ほぼ停止
正常

検索語でJD.comの商品を検索し、最大5件の結果を取得します。各結果には、表示どおりの価格・販売数・レビュー数、高評価率、ショップ、プロモーションタグが含まれます。返されたitem_idは、詳細、レビュー、価格の各アクションに渡せます。並び順と対象範囲はその1回のレスポンス内のものであり、カタログ全体を示すものではありません。

JD.com検索は、keywordでJDの商品を検索し、各商品のアイテムID、タイトルと短縮タイトル、価格、レビュー数、高評価率、ショップ、JDの直販かどうか、プロモーションタグ、セールスポイントを返します。ある検索でJDの上位に表示される商品、その販売元、購入者の評価を把握でき、初期の商品リサーチ、価格帯の大まかな把握、JD直販とサードパーティのショップの比較に使えます。

通常は中国語のキーワードのほうがJDの商品タイトルに一致しやすくなります。結果のitem_idをJDの商品詳細またはレビューの機能に渡すと、さらに詳しく調べられます。good_rateはJDが公開している高評価率で、レビュー数とあわせて見なければあまり意味がありません。review_countとsold_countは「100k+」のような表示用テキストで、正確な数値ではありません。

料金は1,000リクエストあたり$2.47(1回あたり$0.002472)です。失敗した呼び出しと空の結果には課金されません。 同期処理です。時間のかかるジョブでは、ボディに"mode": "async"を追加し、job_idを取得してポーリングしてください。

AIプロンプト

EveryInfraのJD.com 検索エンドポイント(jd/search)を使ったデータ収集スクリプトの作成を手伝ってください。

エンドポイントの仕組み:
- リクエスト:ヘッダーにAuthorization: Bearer <API key>を指定して、https://api.everyinfra.com/api/v1/socialにPOSTします。APIキーは環境変数EVERYINFRA_API_KEYから読み込み、ハードコードしないでください。
- リクエストボディでplatformにjd、actionにsearchを指定し、パラメータはparamsの中に入れます。
- 必須パラメータ:
  - keyword: JD.comのsearchで使用する検索クエリを指定します。商品IDやショップの指定ではなく、検索フレーズを渡す必要があります。また、一致した結果がカタログ全体を網羅しているわけではありません。
- 任意パラメータ:
  - limit: この呼び出しで返す最大行数で、1〜5の整数で指定します。省略するとデフォルト値が適用されます。また、返される行数がこれより少なくなる場合があります。最大値を超える値を指定すると、課金前に422が返されます。(デフォルト:5)
- レコードのリストを返します。各レコードの主なフィールド: item_id(JDの数値商品ID)、url、title、short_title(JDが返すとおりの短い商品タイトル)、price、currency、sold_count(検索結果に表示される販売数です(search))、review_count(検索結果に表示されるレビュー数です(search))、good_rate(JDが公開している高評価レビュー率)、shop_id(JDの数値ショップID)、shop_name(公開されているショップ名)、shop_url(公開されているJDのショップページ)。フィールドは全部で17個です。一覧はhttps://api.everyinfra.com/api/v1/social/catalog?platform=jdを参照してください。.
- リクエストボディの例:
{
  "platform": "jd",
  "action": "search",
  "params": {
    "keyword": "华为手机"
  }
}
- 料金:1,000リクエストあたり$2.47。失敗時および結果が空の場合は課金されません。
- 対象が数十〜数百件ある場合は、ボディに"mode": "async"を追加します。すぐにjob_idが返されるので、GET https://api.everyinfra.com/api/v1/jobs/{job_id}をポーリングして結果を取得します。
- 422の場合は、エラーに含まれる推奨パラメータ名と指定可能な値を使ってリクエストを修正します。429または503の場合は、Retry-Afterの指定に従って待ってから再試行します。

コードを書く前に、必要な対象とその件数、必要なフィールド、希望する出力形式を私に質問してください。そのうえで、計画と概算費用を私に確認してください。

リクエストパラメータ

名前場所型必須デフォルト説明
Authorizationheaderstringはい-Bearerの後にAPIキーを続けます。APIキーはコンソールで作成してください。URLやコードリポジトリには絶対に含めないでください。
platformbodystringはいjdプラットフォームの識別子です。値は固定です。
actionbodystringはいsearch機能の識別子です。値は固定です。
keywordbody.paramsstringはい-JD.comのsearchで使用する検索クエリを指定します。商品IDやショップの指定ではなく、検索フレーズを渡す必要があります。また、一致した結果がカタログ全体を網羅しているわけではありません。
limitbody.paramsinteger (1–5)いいえ5この呼び出しで返す最大行数で、1〜5の整数で指定します。省略するとデフォルト値が適用されます。また、返される行数がこれより少なくなる場合があります。最大値を超える値を指定すると、課金前に422が返されます。

コードサンプル

bash
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "platform": "jd",
  "action": "search",
  "params": {
    "keyword": "华为手机"
  }
}'

OpenAPI定義(JSON)サンプルは環境変数EVERYINFRA_API_KEYからAPIキーを読み込みます。コピーしたコードにAPIキーが含まれることはありません。

レスポンス例

実際のレスポンス

October 24, 2026 at 18:28(UTC)に、上のコードサンプルのパラメータでこのAPIを呼び出して取得しました。resultsとcountはその呼び出しの実際のレスポンスから個人情報(名前、ハンドル、アバター、プロフィールリンク、連絡先)を削除したものです。リストは先頭の2件のみ掲載しています。id、billing、quotaは呼び出しごとに異なるため、構造のみを示しています。

json
{
  "id": "req_…",
  "platform": "jd",
  "action": "search",
  "results": [
    {
      "item_id": "10237497167004",
      "url": "https://item.jd.com/10237497167004.html",
      "title": "华为手机2026热销新机上市畅享 90 Plus 麒麟8系芯片丝滑超好用鸿蒙AI防诈6620mAh巨鲸大电池柔光护眼 星空黑【128GB】 官方标配【365天延保+蓝牙耳机+运费险】",
      "price": 1999,
      "currency": "CNY",
      "shop_id": "219104371",
      "shop_name": "迪旺手机专营店",
      "shop_url": "https://mall.jd.com/index-219104371.html",
      "category_ids": [
        "9987",
        "653",
        "655"
      ],
      "image_url": "https://img14.360buyimg.com/n0/jfs/t1/547105/14/3627/77818/6ad1919eFd3fb2338/0083320320125c52.png",
      "platform": "jd"
    },
    {
      "item_id": "10230554159591",
      "url": "https://item.jd.com/10230554159591.html",
      "title": "华为mate60pro手机智能手机鸿蒙智能AI手机麒麟芯片正品国行mate60赠手机壳 Mate60Pro【雅川青】 12GB+256GB 7天试用(送手机壳88W充电器)",
      "price": 2837,
      "currency": "CNY",
      "shop_id": "169276555",
      "shop_name": "尊享数码手机拼购店",
      "shop_url": "https://mall.jd.com/index-169276555.html",
      "category_ids": [
        "9987",
        "653",
        "655"
      ],
      "image_url": "https://img14.360buyimg.com/n0/jfs/t1/483100/15/10357/93091/6a647f40Ff1f84472/008332032085260d.jpg",
      "platform": "jd"
    }
  ],
  "count": 5,
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}

レスポンスフィールド

業務データはresultsに含まれます。この表はレコードに含まれうるフィールドの一覧です。プラットフォームに表示されない値を作り出すことはありません。

フィールド意味
item_idJDの数値商品ID。検索結果から取得したIDを、そのまま詳細、レビュー、価格の各呼び出しに渡せます。
urlプラットフォーム上のレコードへのリンクです。
titleタイトルです。プラットフォームにタイトルがない場合(テキストのみの投稿など)はnullになります。
short_titleJDが返すとおりの短い商品タイトル。
price通貨記号を含まない数値で表した価格です。通貨についてはcurrencyを参照してください。
currency価格の通貨コードです(例:CNY、USD)。priceフィールドが存在してもcurrencyがnullの場合は、通貨を推測しないでください。
sold_count検索結果に表示される販売数です(search)。正確な販売個数ではなく、100k+のような表示用テキストです。
review_count検索結果に表示されるレビュー数です(search)。正確な件数ではなく、丸められている場合がある表示用テキストです。
good_rateJDが公開している高評価レビュー率。
shop_idJDの数値ショップID。
shop_name公開されているショップ名。
shop_url公開されているJDのショップページ。
is_jd_selfJD自社運営(JD.com直販)の商品かどうか。
promotion商品リストに表示されるプロモーションラベル。
sell_point商品リストに表示されるセールスポイント。
category_idsJDのカテゴリIDパス。
image_url画像URL。search、product_detail、shop、skusでは商品のメイン(カバー)画像、description_imagesではその行の説明画像(JDの画像ホスト上にあるフルサイズのhttps画像)です。
platform取得元プラットフォームの識別子で、リクエストのplatformと同じです(例:xiaohongshu、tiktok)。

FAQ

英語で検索できますか?

はい。ただし、通常は中国語のキーワードのほうがJDの商品タイトルに一致しやすく、より適切な結果が返ります。ブランドと型番で検索する場合は、JDの商品タイトルでよく使われる表記で入力してください。

検索結果の商品詳細とレビューを取得するには?

各結果のitem_idはJDの数値の商品IDです。そのままJDの商品詳細、レビュー、商品価格の機能に渡せます。事前に商品リンクを組み立てる必要はありません。

JD直販とサードパーティのショップを見分けるには?

is_jd_selfを確認してください。trueの場合はJDが自ら販売しています。ショップの情報はshop_name、shop_id、shop_urlにあります。価格や評価は、両者を混ぜるよりもグループごとに比較したほうが公平です。

エラーと課金

401
キーが未指定か無効です。
402
残高が不足しています。先にチャージしてください。
422
パラメータ名または値が無効です。エラーに含まれる候補を参考に修正してください。課金はされません。
429
1分あたりのリクエスト上限に達しました。Retry-Afterの指定に従って待ってから再試行してください。
503
処理を完了できませんでした。保留中の請求額は残高に戻されます。結果が不明な場合は、再試行する前に確認してください。
200(空)
データがありません。課金はされません。

エラー

公式リファレンス

対象と用語の確認にのみ使用しています。プラットフォームによるEveryInfraの承認や推奨を意味するものではありません。

  • JD.com JOSおよびJD Union:商品とSKUのオブジェクト ↗

    JD.comの認可済みオープンプラットフォームおよびアフィリエイトの資料では、名称、メイン画像、カテゴリ、表示価格、物流、JD.com直販かどうか、注文量の指標といった商品およびSKUのオブジェクトについて説明しています。これらの用語は、すべてのウェブページやフィールドが利用可能であること、呼び出し元にアクセス権があること、EveryInfraが公式インターフェースを実装していることを証明するものではありません。

    確認日:2026-09-11