初歩的な質問になり申し訳ないのですが、
商品の「販売チャネル」を登録・解除するAPIはありますでしょうか?
ありましたら仕様書などお教えいただけましたら幸いです。
商品編集画面にある「販売チャネル」のON/OFFを、APIで商品ごとに設定できるかが主題。初回の回答では、販売チャネル向けの公開解除API(publishableUnpublishToCurrentChannel、ProductListingのREST API)が候補として示されたが、これは商品編集画面のON/OFFと完全には一致しないことが補足された。
その後、用途に合うAPIとして GraphQL Admin API の publishablePublish / publishableUnpublish が提示され、商品の販売チャネル公開・非公開はこの方法で対応可能と整理された。RESTではなくGraphQLが中心。
実装上の要点:
補足として、GraphiQLアプリを使えば権限付きでクエリやミューテーションを検証できると案内された。添付画像は、管理画面の「販売チャネル」設定箇所の例。結論として、適切なGraphQL APIが案内され、質問は実質的に解決している。
初歩的な質問になり申し訳ないのですが、
商品の「販売チャネル」を登録・解除するAPIはありますでしょうか?
ありましたら仕様書などお教えいただけましたら幸いです。
販売チャネルとは、Buy Button, POS, Facebook, 楽天などのことでしょうか?
商品の編集画面ではなくて、APIからということでしたら、以下になると思います。
https://shopify.dev/docs/admin-api/graphql/reference/mutation/publishableunpublishtocurrentchannel
https://shopify.dev/docs/admin-api/rest/reference/sales-channels/productlisting#destroy-2020-04
ただし、これが商品編集の販売チャネルのON・OFFに正確に対応するとかというと、そうではないです。
ご回答ありがとうございます。
商品編集画面の「販売チャネル」のON/OFFを行うためには
ご提示いただいているURLの方法をとるしかなく、
またそれも正確には対応しておらず
API等で処理は不可能ということでしょうか?
もし、商品編集画面の「販売チャネル」のON/OFFを設定できるAPIの情報等が
ありましたらお教えいただけると幸いです。
すいません、上記のAPIは、販売チャネル自身が呼び出すAPIで、対象の商品を自身の販売チャネルから非公開にするAPIでした。
ご希望の用途は添付のように、商品編集の販売チャネルのON・OFFをAPIでしたいとのことでしたら、下記のAPIで可能です。
https://shopify.dev/docs/admin-api/graphql/reference/mutation/publishablepublish?api[version]=2020-04
https://shopify.dev/docs/admin-api/graphql/reference/mutation/publishableunpublish?api[version]=2020-04
GraphQLについては以下のアプリを全権限つけてインストールするとご自身で色々と検証できますのでドキュメントをみながらトライしていただけますか?
https://shopify-graphiql-app.shopifycloud.com/
上記APIのIDは、商品のIDで、gid://shopify/Product/XXXXX のような形(XXXは商品編集URLの数値)にして、publicanInputのpublicationIDは、以下のクエリで引けます。
query {
publications(first: 10) {
edges {
node {
id
name
}
}
}
}
商品IDも一応、下記のようにクエリから参照することをお勧めします。
query {
products(first: 10) {
edges {
node {
id
title
}
}
}
}