# ShopifyアプリのAPIエンドポイント

**URL:** <https://community.shopify.com/t/shopify-api/41319>\
**Category:** 技術的なQ＆A\
**Created:** [March 30, 2021, 3:59am UTC](https://community.shopify.com/t/shopify-api/41319 "2021-03-30T03:59:40Z")\
**Posts on this page:** 5\
**Page:** 1

## AI-generated summary

ShopifyアプリのAPIエンドポイント設定が主題だったが、途中で実際の問題は認証周りにある可能性が高いと整理された。

・当初は「/admin/apps/test_app/post」のようなURLへのPOSTがうまくいかない点が質問された。
・回答では、App Proxy（Shopifyからアプリ側URLへ中継する仕組み）を使う場合、Shopify側のURLは設定した Sub path prefix / Sub path に従い、実際にはアプリ側の Proxy URL 配下へ転送される、という整理が示された。

その後、直接アプリURLへ送ると「422 ActionController::InvalidAuthenticityToken」が出ることが共有された。
これはエンドポイントそのものより、埋め込みアプリの認証・トークン処理の問題の可能性が高いと指摘されている。

想定原因としては、ストア側リクエストのトークン設定不備、サーバー側認証の不備、APIキーの誤りなどが挙げられた。App Bridgeを使っているならJWTトークン取得を検討すべき、との助言もあった。

結論として、このスレッドは一旦クローズ。エンドポイント説明は得られたが、埋め込みアプリへストアフロントからPOSTする認証課題は未解決で、別スレッドで継続予定。

<div class="post-metadata">

**Author:** ![RikutoNakamura](https://avatars.discourse-cdn.com/v4/letter/r/3ec8ea/32.png) [@RikutoNakamura](https://community.shopify.com/u/RikutoNakamura)\
**Post date:** [March 30, 2021, 3:59am UTC](https://community.shopify.com/t/shopify-api/41319/1 "2021-03-30T03:59:40Z")

</div>

Shopifyアプリを作成しています  
アプリのAPIはRESTで作成しておりますがアプリのAPIのエンドポイントはどのようになりますか？  
[https://test-ec.myshopify.com/admin/apps/test\_app/post](https://test-ec.myshopify.com/admin/apps/test_app/post)  
このようにリクエストを送ったところうまくいきません  
どなたか詳しい方いましたらよろしくお願い致します！

---

<div class="post-metadata">

**Author:** ![abekeishi](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/abekeishi/32/50825_2.png) [@abekeishi](https://community.shopify.com/u/abekeishi)\
**Post date:** [March 30, 2021, 5:08am UTC](https://community.shopify.com/t/shopify-api/41319/2 "2021-03-30T05:08:40Z")

</div>

Shopifyアプリののエンドポイントにリクエストを送ればいいのではないでしょうか？

【参考 : [Display dynamic store data with app proxies](https://shopify.dev/tutorials/display-dynamic-store-data-with-app-proxies)】

Shopify のストアのURL = [https://test-ec.myshopify.com](https://test-ec.myshopify.com/admin/apps/test_app/post)

アプリケーションのURL = [https://my-app.com](https://my-app.com)

だとします。この場合、単にShoipfy側から [https://my-app.com](https://my-app.com) にリクエストを送ることが可能だと思います。

RikutoNakamuraさんがやろうとしているのはApp proxyを使ったやり方だと思いますが、この場合はエンドポイントは以下の様になるかと思います。

- App proxy の設定 (RikutoNakamuraさんの提示したURLを参考に)
  - Sub path prefix : **apps**
  - Sub path : **test\_app**
  - Proxy URL : [https://my-app.com/app\_proxy](https://my-app.com/app_proxy)

ここで、Shopify側から以下の様にリクエストを送信します。

[https://test-ec.myshopify.com/admin/apps/test\_app/post](https://test-ec.myshopify.com/admin/apps/test_app/post)

このリクエストはApp proxyの設定に従い、以下のエンドポイントにリクエストが飛ぶはずです。

[https://my-app.com/app\_proxy/post](https://my-app.com/app_proxy/post)

---

<div class="post-metadata">

**Author:** ![RikutoNakamura](https://avatars.discourse-cdn.com/v4/letter/r/3ec8ea/32.png) [@RikutoNakamura](https://community.shopify.com/u/RikutoNakamura)\
**Post date:** [March 30, 2021, 6:53am UTC](https://community.shopify.com/t/shopify-api/41319/3 "2021-03-30T06:53:02Z")

</div>

ご回答ありがとうございます！  
直接直接アプリのURLにリクエストを送ると422のActionController::InvalidAuthenticityTokenエラーが発生します  
ちなみにアプリは埋め込みアプリで、こちらのエラーはshopifyの認証周りが関係しているのかと考えております。  
やりたいこととしては埋め込みアプリにストアフロント（テーマの画面）からpostリクエストを送りたいです。  
何かアドバイスいただけると幸いです。

---

<div class="post-metadata">

**Author:** ![abekeishi](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/abekeishi/32/50825_2.png) [@abekeishi](https://community.shopify.com/u/abekeishi)\
**Post date:** [March 30, 2021, 7:47am UTC](https://community.shopify.com/t/shopify-api/41319/4 "2021-03-30T07:47:13Z")

</div>

それはエンドポイントの問題ではなく、認証周りの問題かもしれませんね。

考えられる問題としては

- ストア側からのリクエストでtokenを正しく設定できていない
- アプリケーションサーバー側での認証が正しく行えていない
- tokenを生成するためのapi keyが正しくない

とかがあると思います。

私は Rails で開発したことがないのでわかりませんが、埋め込みアプリに App Bridge を使用しているのであれば、App Bridge から JWT token を受け取ってリクエストを送信すればいいのではないかと思います。

いずれにせよ、質問の内容が変わってしまっているので、再度別スレッドで質問した方が有効な回答が得られるかと思います。

よろしければ回答済みとしてのマークと、前の回答をベストソリューションとして指定してもらえると幸いです。

---

<div class="post-metadata">

**Author:** ![RikutoNakamura](https://avatars.discourse-cdn.com/v4/letter/r/3ec8ea/32.png) [@RikutoNakamura](https://community.shopify.com/u/RikutoNakamura)\
**Post date:** [March 30, 2021, 7:49am UTC](https://community.shopify.com/t/shopify-api/41319/5 "2021-03-30T07:49:07Z")

</div>

ありがとうございます！  
こちらは一旦クローズさせていただきます  
再度スレッド立てるのでアドバイスありましたらよろしくお願い致します！！
