うぉい!RinkerがAmazon拾わない!なんかめっちゃエラーでる!投稿画面もエラー吐きまくっとる!
「Undefined property: stdClass::$access_token」とか投稿画面にも公開ページにも出てる!!
なりました、TechMuddyも。なんやこれ…と思ったのですが、プラグイン編集で直る(というかAmazon API仕様に合致させることができる)ので情報共有です。
RinkerのAmazonアソシエイトプログラムでお困りの方、お試しください。
Rinker v1.13.0がAmazon Creators API 3.3に対応してないっぽいのが原因
RinkerをAmazon Creators APIへ切り替えたあと、WordPressの編集画面や公開ページにこんなWarningが表示されることがあります。
Warning: Undefined property: stdClass::$access_token in
/wp-content/plugins/yyi-rinker/yyi_rinker_main.php on line 2322
AmazonアソシエイトでCreators APIの認証情報を発行し、Rinkerの設定画面にも正しく入力したはずなのに、エラーが消えない…。
TechMuddy編集部でもWordPressの管理画面と公開ページの両方に同じWarningが表示されました。
は?ちゃんと設定に入れとるわ、なんでエラー吐くんや…。
で、色々と調べてみると、Amazonから発行された認証情報のバージョンは「3.3」でしたが、Rinker 1.13.0のアクセストークン取得処理は、旧バージョンの「2.3」で使われる認証先へ接続していました。
つまり、Rinker側とAmazon側で受け渡しができていない。
からのRinkerがブリブリにエラーを吐く、といった状態っぽいです。
Amazonの公式ドキュメントでは、日本向けのVersion 2.3と3.3で、アクセストークンの取得先が異なります。Version 2.3はAmazon Cognito、Version 3.3はAmazon.co.jpの認証エンドポイントを使用します。
なお、Rinker側の認証処理をVersion 3.3に合わせて変更したところ、編集画面と公開ページのWarningは表示されなくなりました。
しっかりと商品検索の可能になります。
ということで、TechMuddy編集部が実際に行った修正方法をご紹介します。
なお、コードを変更する作業はありますが変更する場所は限られています。画面のスクリーンショットも入れながら進めるので、WordPressやPHPに詳しくない方も大丈夫です、たぶん。(でも責任は負えないので自己責任でお願いします…)。
しっかりと作業前のバックアップを取ったうえで作業を行ってください。
まずは現状の確認から
ちなみにTechMuddy編集部の環境は以下の通り。日付以外はおそらく一緒じゃないでしょうか。
- Rinker 1.13.0
- Amazon Creators API Version 3.3
- WordPressのプラグインファイルエディターを使用
- 2026年8月6日時点
ちなみに、RinkerはVersion 1.12.0でCreators APIに対応しました。
Version 1.13.0の公開更新履歴には楽天新APIへの対応などが掲載されていますが、Creators API Version 3.3への対応については記載されていません。
つまり、現時点ではまだ未対応っぽいです。
まずはCreators APIのバージョンを確認する(これに合致している人はRinkerが動いていていない)
最初にAmazonアソシエイトで発行された認証情報のバージョンを確認しましょう。
なお、この設定になっている人はRinkerでエラー吐きまくっていると思います。
でも、Amazon側の設定はこれで正解なんです。
まずはAmazonアソシエイトへログインし、画面右上のメニューを開いてください。
1.メニューから「ツール」を開く
メニュー内にある「ツール」を選択します。

2.「クリエイターAPI」を開く
ツールの一覧が表示されたら、「クリエイターAPI」を選択します。

3.認証情報のバージョンを見る
クリエイターAPIの管理画面を開くと、作成済みの認証情報が一覧表示されます。
ここにある「バージョン」の項目を確認してください。

バージョンが3.3になっており、Rinkerの設定を済ませてもstdClass::$access_tokenのWarningが表示されている場合は、今回確認した症状と一致します。
Amazonの公式仕様では、日本を含むFar East地域の認証先は以下のように指定されてるっぽいです。
| 認証情報のバージョン | アクセストークンの取得先 |
|---|---|
| Version 2.3 | creatorsapi.auth.us-west-2.amazoncognito.com/oauth2/token |
| Version 3.3 | api.amazon.co.jp/auth/o2/token |
Rinker 1.13.0のプログラムコードでは、Version 2.3用のURLが直接指定されていました。
なので情報が食い違っていてエラーを吐いているようですね。
Rinkerのコードを修正する
ということで、Creators APIのバージョンが「3.3」だった場合は、Rinkerの認証処理をVersion 3.3用へ変更します。今回は、WordPress管理画面にある「プラグインファイルエディター」を使います。
作業前にバックアップしてください
PHPコードの入力を間違えると、WordPressにエラーが出る可能性があります。作業前にyyi_rinker_main.phpをパソコンへ保存しておくと、問題が起きても元に戻せます。
また、Rinkerをアップデートすると今回の変更が上書きされる可能性があります。
自信がない方は詳しい方へお願いするか、公式のアップデートを待つことをおすすめします。
なにかあってもTechMuddy編集部では責任を負えませんので…誠にごめんなさい。
1.プラグインファイルエディターを開く
WordPressの管理画面から、「プラグイン」「プラグインエディター」を開きます。

2.編集するプラグインに「Rinker」を選ぶ
画面右上にある「編集するプラグインを選択」のプルダウンを開き、「Rinker」を選択します。
選択したら、右側の「選択」ボタンを押してください。

3.yyi_rinker_main.phpを開く
画面右側にプラグインのファイル一覧が表示されます。
その中から、「yyi_rinker_main.php」を選択します。

yyi_rinker_main.phpを開きます。4.認証処理のコードを探す
ファイルを開いたら、2280行付近まで移動します。

環境によって行番号が多少前後する場合があるため、見つからないときは、ブラウザのページ内検索で次のURLを探してください。
https://creatorsapi.auth.us-west-2.amazoncognito.com/oauth2/token
WindowsではCtrl+F、MacではCommand+Fでページ内検索を開けます。
見つけたら、次のコード部分を確認しましょう。
$curl = curl_init();
$auth_creds = $creator_auth_id . ':' . $creator_secret_key;
$headers = [
'Content-Type: application/x-www-form-urlencoded',
'Authorization: Basic ' . base64_encode($auth_creds),
];
curl_setopt($curl, CURLOPT_URL, 'https://creatorsapi.auth.us-west-2.amazoncognito.com/oauth2/token');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, 'grant_type=client_credentials&scope=creatorsapi/default');
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
この部分が、Version 3.3では利用できない古い認証処理です。
つまり、書き換えの対象コードです。
5.Version 3.3用のコードへ置き換える
先ほどのコード部分を削除し、次のコードへ置き換えます。
$curl = curl_init();
$headers = [
'Content-Type: application/json',
];
$token_payload = json_encode([
'grant_type' => 'client_credentials',
'client_id' => $creator_auth_id,
'client_secret' => $creator_secret_key,
'scope' => 'creatorsapi::default',
]);
curl_setopt($curl, CURLOPT_URL, 'https://api.amazon.co.jp/auth/o2/token');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, $token_payload);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
ちなみに、この下にある次のコードは削除せず、そのまま残します。
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
大事なことなのでもう一回
このコードを
$curl = curl_init();
$auth_creds = $creator_auth_id . ':' . $creator_secret_key;
$headers = [
'Content-Type: application/x-www-form-urlencoded',
'Authorization: Basic ' . base64_encode($auth_creds),
];
curl_setopt($curl, CURLOPT_URL, 'https://creatorsapi.auth.us-west-2.amazoncognito.com/oauth2/token');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, 'grant_type=client_credentials&scope=creatorsapi/default');
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
以下に書き換えます
$curl = curl_init();
$headers = [
'Content-Type: application/json',
];
$token_payload = json_encode([
'grant_type' => 'client_credentials',
'client_id' => $creator_auth_id,
'client_secret' => $creator_secret_key,
'scope' => 'creatorsapi::default',
]);
curl_setopt($curl, CURLOPT_URL, 'https://api.amazon.co.jp/auth/o2/token');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, $token_payload);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
上下に色々とコードが書いてあると思いますが、上記の対象コードのみを書き換えます。
ほかは触っちゃダメです。
6.「ファイルを更新」を押す
コードを置き換えたら、画面下にある「ファイルを更新」を押します。

「ファイルの編集に成功しました」と表示されたら保存完了です。
その後、エラーが出ていたWordPressの編集画面と公開ページを再読み込みしてください。
Warning: Undefined property: stdClass::$access_token
こんな表示が消えていれば、Rinkerの認証処理は修正できています。
キャッシュ系プラグインを使用している場合はWarningが残って見えることがあります。
その場合は、WordPressとサーバーのキャッシュを削除してから、もう一度確認してください。
修正後に403「AssociateNotEligible」が表示される場合
コードを修正したあと、RinkerからAmazonの商品を検索すると、こんなエラーが表示されることがあります。
【エラー】403:AmazonAPIのステータスエラー:
{"message":"Your account does not currently meet the eligibility requirements.",
"reason":"AssociateNotEligible",
"type":"AccessDeniedException"}
AmazonAPIのステータスエラー
このエラーが出た場合、先ほどのコード修正に失敗したわけではありませんのでご安心を。
むしろ、Creators APIの認証処理は通るようになり、その次の段階でAmazonから利用を止められている状態です。
簡単にいうと、Amazonから、
と言われています。
要はあれです、「販売実績足りとらんよ!もっと売って!」です。
Creators APIには販売実績の条件がある
Amazonの公式ドキュメントでは、Creators APIを利用するには、直近30日間に10件以上の適格販売が必要、とされています。
なので、この条件を満たしていないアカウントには上記のようなエラーが表示される、として公式に案内されています。
「直近30日間」は、Amazonアソシエイトを始めてからの累計ではない
たとえば、過去に10件以上売れていても、最近30日間の適格販売が10件未満であれば、Creators APIを利用できない可能性があります。
コンスタントに販売実績を作らないと止められる…といった感じです。もちろん売れば復活しますが。
このエラーコードに修正は不要
なので、AssociateNotEligibleが表示された場合は、RinkerのPHPファイルをさらに編集したり、Creators APIの認証情報を作り直したりする必要はありません。
販売実績実績作りましょう、ってことです。
まとめると、エラーごとの状態は以下です。
| 表示されるエラー | 状態 | 対処 |
|---|---|---|
Undefined property: stdClass::$access_token | Version 3.3用のアクセストークンを取得できていない | Rinkerの認証処理を修正する |
403 AssociateNotEligible | 認証後、販売実績の条件で止められている | 直近30日間に10件以上の適格販売を作る |
まとめると
Rinkerでエラーを吐いていて、かつAmazon Creators APIの認証情報がVersion 3.3の場合は、Rinkerが古い認証方式を使っていることが原因かもしれません。
TechMuddyの環境では、yyi_rinker_main.phpにある認証処理をVersion 3.3用へ変更することで、WordPressの編集画面と公開ページに表示されていたWarningが消えました。
作業の流れまとめ
- AmazonアソシエイトでCreators APIのバージョンを確認する
- Version 3.3であることを確認する
yyi_rinker_main.phpをバックアップする- 2280行付近にある古い認証処理を探す
- Version 3.3用のコードへ置き換える
- 編集画面と公開ページでWarningが消えたか確認する
このコードが出た場合は
【エラー】403:AmazonAPIのステータスエラー:
{"message":"Your account does not currently meet the eligibility requirements.",
"reason":"AssociateNotEligible",
"type":"AccessDeniedException"}
単純に「販売実績足りてない」です。
今回のエラーとは関係ありません。
今回の対応は、Rinker 1.13.0とAmazon Creators API Version 3.3を使用した環境で確認しています。
Rinker本体を直接編集しているため、プラグインをアップデートすると修正内容が上書きされる可能性があります。アップデート後は公式のVersion 3.3対応状況と、修正箇所が元へ戻っていないかを確認してください。
多分次回アップデートではRinker公式さんも対応してくれるんじゃないでしょうか。