エラー
Embulk::Error::UserExecutionError: Bulk operation failed with error code: ACCESS_DENIED
原因
Shopify側から返却されているエラーであり、APIスコープ不足が原因で発生します。
Shopifyの仕様として、Bulk APIでは不足しているスコープの詳細をエラーメッセージから判別できません。
そのため、エラー発生時のログだけでは、具体的にどのスコープが不足しているか特定できない仕様となっています。
The provided operation
queryreturned access denied due to missing access scopes. Review the requested object permissions and execute the query as a normal non-bulk GraphQL request to see more details.
対処法
Bulk APIと通常GraphQLの違い
TROCCOでは、以下のように処理方式が異なります。
-
プレビュー実行時
→ 通常のGraphQLリクエストを使用 -
転送ジョブ実行時
→ Shopify GraphQL Admin APIのBulk Operationを利用
プレビューでは通常のGraphQL実行になるため、スコープ不足の詳細が確認できます。
スコープ不足の確認手順
-
転送設定STEP1にて、作成日時 or 更新日時を
ACCESS_DENIEDエラーが発生した期間に設定 -
上記設定の状態でプレビューを実行
-
プレビュー実行時に、スコープ不足に関するエラーが発生しないか確認
-
エラーメッセージ内に記載されている不足スコープをShopifyアプリに追加
-
スコープ追加後は、アクセストークンを再発行してTROCCOの接続情報を更新
- Shopifyアプリ管理画面より該当のアプリを選択
- 追加スコープを含めてアプリを更新、保存
コメント
0件のコメント
記事コメントは受け付けていません。