認証・リクエスト
affiliate_id に通常のアフィリエイトIDを指定したらエラーになった
APIリクエスト時の affiliate_id には末尾が990〜999のIDを指定する必要があります。
通常のID(例: affiliate-001)を指定するとエラーになります。
# NG
affiliate_id=affiliate-001
# OK
affiliate_id=affiliate-990
ブログにリンクを掲載する際は、レスポンス内の affiliateURL に含まれるIDを通常のアフィリエイトIDに差し替えてください。
レスポンスが空(items が返らない)
以下を確認してください。
siteパラメータ —DMM.com(一般)とFANZA(アダルト)は別サイト。指定が逆だと結果が0件になりますservice/floorの組み合わせ — 存在しない組み合わせを指定した場合も0件。フロアAPIで正しいコードを確認してくださいkeywordのエンコーディング — UTF-8でURLエンコードする必要がありますgte_dateの書式 —2024-01-01T00:00:00のISO8601形式。タイムゾーンは指定不可
1回のリクエストで何件まで取得できる?
最大100件です。hits パラメータで指定します(初期値は20)。
100件を超える商品を取得するには、offset を繰り返しずらしてリクエストしてください。
ただし offset の上限は 50000 です。
// 101〜200件目を取得
const params = { hits: 100, offset: 101 };
レートリミットはある?
公式にはレートリミットの仕様は明記されていません。 ただし短時間に大量のリクエストを送るとアカウント停止のリスクがあります。リクエスト間に1秒以上の間隔を空けることを推奨します。
レスポンス
affiliateURL をそのままブログに貼ってもいい?
そのまま使えますが、アフィリエイトIDに注意してください。
レスポンスに含まれる affiliateURL はAPIリクエスト時に指定した末尾990〜999のIDで生成されています。
報酬を得るには、通常のアフィリエイトIDに差し替える必要があります。
const blogURL = item.affiliateURL.replace("affiliate-990", "affiliate-001");
画像URLはどれを使えばいい?
imageURL には3種類あります。
| フィールド | 用途 | 推奨場面 |
|---|---|---|
list | リストページ用サムネイル | 一覧表示 |
small | 小サイズ | モバイル、カード |
large | 大サイズ | 記事本文、詳細ページ |
ブログ記事では large を使い、一覧では small を使うのが一般的です。
画像への直リンクは利用規約上有効ですが、自サーバーへのキャッシュは禁止されている場合があります。
レビュー情報がない商品がある
review フィールドはレビューが投稿されている商品のみ返されます。
新作や投稿数が少ない商品にはこのフィールド自体が存在しません。
コード上では存在チェックを入れてください。
const rating = item.review?.average ?? "レビューなし";
絞り込み・検索
複数のジャンルで絞り込みたい
article と article_id を配列化して指定します。
article[0]=genre&article_id[0]=6003&article[1]=actress&article_id[1]=15187
article と article_id は同じインデックスで対応させてください。
女優ID・ジャンルIDはどうやって調べる?
各検索APIで取得できます。
| 調べたい情報 | 使うAPI |
|---|---|
| 女優ID | 女優検索API |
| ジャンルID | ジャンル検索API |
| メーカーID | メーカー検索API |
| シリーズID | シリーズ検索API |
| 作者ID | 作者検索API |
女優検索APIでは keyword で名前の部分一致検索も可能です。
service / floor のコードを忘れた
フロアAPI を叩けば全サイト・サービス・フロアのコード一覧を取得できます。 よく使うコードは以下のとおりです。
| site | service | floor | 説明 |
|---|---|---|---|
FANZA | digital | videoa | アダルト動画(配信) |
FANZA | digital | videoc | 素人動画(配信) |
FANZA | mono | dvd | DVD通販 |
FANZA | digital | comic | 同人コミック |
DMM.com | digital | video | 一般動画(配信) |
DMM.com | mono | book | 本・コミック通販 |
運用
出力形式はJSONとXMLどちらがいい?
JSON一択です。軽量で、JavaScriptやPythonなど主要言語で扱いやすいです。 XMLを選ぶメリットは現在ほぼありません。
クレジット表示は必要?
はい。APIを利用して公開するサービスにはDMMのクレジット表示が必要です。 詳しくは ご利用ガイド を参照してください。
テスト環境(サンドボックス)はある?
ありません。本番環境のAPIを直接利用します。
開発中は hits=1 にして最小限のリクエストに留めてください。