{
  "id": "rakuten-ichiba",
  "displayName": "Rakuten Ichiba (Item Search API — shop listings)",
  "sourceId": "rakuten-ichiba",
  "sourceName": "Rakuten Ichiba (楽天市場)",
  "sourceType": "marketplace",
  "sourceUrl": "https://www.rakuten.co.jp",
  "module": "api/rakuten-ichiba",
  "enginePriority": ["api"],
  "categories": ["pokemon", "yugioh", "one_piece_card_game", "trading_cards", "rolex", "omega", "other_watches", "nike_jordan", "sneakers", "gundam", "action_figures", "nintendo_games", "lego_sets"],
  "regions": ["JP"],
  "country": "JP",
  "languages": ["ja"],
  "currency": ["JPY"],
  "supportsListings": true,
  "supportsSold": false,
  "supportsAuctions": false,
  "supportsImages": true,
  "supportsCatalog": false,
  "supportsPopulation": false,
  "supportsLookup": false,
  "refreshFrequencyMinutes": 360,
  "priority": "medium",
  "trustScore": 0.7,
  "attributionRequired": true,
  "termsUrl": "https://webservice.rakuten.co.jp/guide/terms",
  "acquisitionMethod": "official API (Rakuten Web Service — Ichiba Item Search)",
  "historicalDepth": "none",
  "requires": ["RAKUTEN_APP_ID"],
  "accessNotes": "GATED — official Rakuten Web Service Ichiba Item Search API. Needs a free application id (RAKUTEN_APP_ID); applications created after the 2026-07-01 API version also need an access key (RAKUTEN_ACCESS_KEY, optional here: when present the 20260701 endpoint on openapi.rakuten.co.jp is used, otherwise the legacy 20220601 endpoint on app.rakuten.co.jp). Requests: keyword search per config seed, `hits=30`, `sort=-updateTimestamp`, `formatVersion=2`, `imageFlag=1`, paginated with `page` (≤ 100 pages per the API). Stored fields: item code, name, JPY price, url, caption, images, shop name/code, genre id, availability, sale window, review stats. Asking prices are listings (never sales); C2C/auction items are excluded by Rakuten itself. Credentials are redacted from stored URLs. The documented limit is 1 request/second per application id (1.1 s between requests, concurrency 1); Rakuten's terms require attribution ('Supported by Rakuten Developers') — `attributionRequired: true`. Without the key the framework reports the connector DISABLED; fixtures are built from the documented response format (see fixture note).",
  "enabled": true,
  "schemaVersion": "1.0",
  "config": {
    "seeds": [
      { "q": "ポケモンカード PSA10", "category": "pokemon", "language": "Japanese" },
      { "q": "遊戯王 PSA10", "category": "yugioh", "language": "Japanese" },
      { "q": "ワンピースカード PSA10", "category": "one_piece_card_game", "language": "Japanese" },
      { "q": "ロレックス 中古 腕時計", "category": "rolex", "language": null },
      { "q": "オメガ スピードマスター 中古", "category": "omega", "language": null },
      { "q": "グランドセイコー 中古", "category": "other_watches", "language": null },
      { "q": "エアジョーダン1 スニーカー", "category": "nike_jordan", "language": null },
      { "q": "ガンプラ MG", "category": "gundam", "language": null },
      { "q": "レゴ 廃盤", "category": "lego_sets", "language": null }
    ],
    "pagesPerSeed": 2,
    "sort": "-updateTimestamp",
    "legacyEndpoint": false,
    "defaultCategory": "trading_cards"
  }
}
