【Shopify.dev和訳】Admin API/GraphQL ref/Products & Collections④
この記事について
この記事は、AdminAPI/GraphQL reference/ProdCollectionの記事を和訳したものです。
Shopify アプリのご紹介
Shopify アプリである、「商品ページ発売予告アプリ | リテリア Coming Soon」は、商品ページを買えない状態のまま、発売日時の予告をすることができるアプリです。Shopify で Coming Soon 機能を実現することができます。
Shopify アプリである、「らくらく日本語フォント設定|リテリア Font Picker」は、ノーコードで日本語フォントを使用できるアプリです。日本語フォントを導入することでブランドを演出することができます。
Products and Collections APIs
Products and Collections API はストアのカタログにアクセスし、操作することができます。
OBJECTS の続きです。
StagedMediaUploadTarget
(object
)
演出されたメディアのターゲット情報
Fields
parameters
( [StagedUploadParameter!]!
)
アップロードされるメディアのパラメータ。
resourceUrl
( URL
)
product create media mutation input の original_source として渡される URL。
url
( URL
)
メディアの URL。
Video
(object
)
Shopify がホストするビデオを表します。
Fields
alt
( String
)
メディアの性質やコンテンツを共有するための単語やフレーズ。
filename
( String!
)
動画のファイル名です。
id
( ID!
)
グローバルに一意な識別子。
mediaContentType
( MediaContentType!
)
メディアコンテンツタイプ。
mediaErrors
( [MediaError!]!
)
メディアで発生したすべてのエラー。
originalSource
( VideoSource
)
ビデオのオリジナルソース。status
が PROCESSING の場合、値は null
です。
preview
( MediaPreviewImage
)
メディアのプレビュー画像。
sources
( [VideoSource!]!
)
ビデオのソース。ソースは status
が READY のときのみ利用可能です。
status
( MediaStatus!
)
メディアの現在のステータス。
Implements
VideoSource
(object
)
Shopify がホストするビデオのソースを表します。
Fields
format
( String!
)
ビデオソースのフォーマット。
height
( Int!
)
動画の高さ。
mimeType
( String!
)
動画の MIME タイプ。
url
( String!
)
動画の URL です。
width
( Int!
)
ビデオの幅。
VideoSource を返す型
Weight
(object
)
重量単位と値を表します。
Fields
unit
( WeightUnit!
)
値の測定単位。
value
( Float!
)
unit
で指定された単位系を使用した重量。
Weight を返す型
MUTATIONS
collectionAddProducts
(mutation
)
コレクションに商品を追加します。
例
mutation query の実行例を示す。
mutation collectionAddProducts($id: ID!, $productIds: [ID!]!) {
collectionAddProducts(id: $id, productIds: $productIds) {
collection {
id
}
userErrors {
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"productIds": [
"Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
]
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
更新されているコレクションの ID です。 |
productIds ( [ID!]! ) required
|
コレクションに追加されている商品の ID。 |
fields の返す値
collection
( Collection
)
更新されたコレクションです。
userErrors
( [UserError!]!
)
mutation を実行した際に発生したエラーのリスト。
collectionCreate
(mutation
)
コレクションを作成します。
例
mutation query の実行例です。
mutation collectionCreate($input: CollectionInput!) {
collectionCreate(input: $input) {
collection {
id
}
userErrors {
field
message
}
}
}
{
"input": {}
}
引数
引数 | 説明 |
---|---|
input ( CollectionInput! ) required
|
コレクションの作成時に使用するプロパティ。 |
CollectionInput
fields
descriptionHtml
( String
)
HTML 形式のコレクションの説明。
handle
( String
)
コレクションのユニークなヒューマンフレンドリーな文字列。コレクションのタイトルから自動的に生成されます。
id
( ID
)
更新するコレクションを指定するか、存在しない場合は新しいコレクションを作成します。
image
( ImageInput
)
コレクションに関連付けられている画像です。
metafields
( [MetafieldInput!]
)
このコレクションに関連付けるメタフィールドを指定します。
privateMetafields
( [PrivateMetafieldInput!]
)
この商品に関連付けるプライベート メタフィールド。
products
( ID!
)
コレクション商品の初期リスト。productCreate
でのみ有効で、ルールはありません。
publications
( [CollectionPublicationInput!]
)
コレクション発行物の初期リスト。productCreate
でのみ有効です。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
redirectNewHandle
( Boolean
)
新しいハンドルが提供された後にリダイレクトが必要かどうかを示します。true の場合、古いハンドルは自動的に新しいハンドルにリダイレクトされます。
ruleSet
( CollectionRuleSetInput
)
商品をコレクションに割り当てるために使用するルールです。
seo
( SEOInput
)
コレクションの SEO 情報。
sortOrder
( CollectionSortOrder
)
コレクションの商品をソートする順序です。
templateSuffix
( String
)
ストアでコレクションを表示するときに使用されるテーマテンプレート。
title
( String
)
新しいコレクションを作成するときに必要です。
返却フィールド
collection
( Collection
)
作成されたコレクションです。
userErrors
( [UserError!]!
)
mutation を実行した際に発生したエラーのリストです。
collectionDelete
(mutation
)
コレクションを削除します。
例
mutation collectionDelete($input: CollectionDeleteInput!) {
collectionDelete(input: $input) {
deletedCollectionId
shop {
id
}
userErrors {
field
message
}
}
}
{
"input": {
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
}
}
引数 | 説明 |
---|---|
input ( CollectionDeleteInput! ) required
|
削除するコレクションをその ID で指定します。 |
CollectionDeleteInput
fields
id
( ID!
) required
削除するコレクションの ID です。
返却フィールド
deletedCollectionId
( ID
)
削除されたコレクションの ID です。
shop
( Shop!
)
コレクションに関連するショップ。
userErrors
( [UserError!]!
)
mutation を実行して発生したエラーのリストです。
collectionPublish
(mutation
)
コレクションをチャンネルに公開します。
例
mutation query を実行する
mutation collectionPublish($input: CollectionPublishInput!) {
collectionPublish(input: $input) {
collection {
id
}
collectionPublications {
isPublished
publishDate
}
shop {
id
}
userErrors {
field
message
}
}
}
{
"input": {
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"collectionPublications": [
{}
]
}
}
引数
引数 | 説明 |
---|---|
input ( CollectionPublishInput! ) required
|
公開するコレクションと公開先の販売チャネルを指定します。 |
CollectionPublishInput
fields
collectionPublications
( [CollectionPublicationInput!]!
) required
コレクションが公開されるチャンネルです。
id
( ID!
) required
パブリケーションの作成または更新を行うコレクション。
返却フィールド
collection
( Collection
)
出版されたコレクションです。
collectionPublications
( [CollectionPublication!]
)
コレクションが公開されたチャンネル。
shop
( Shop!
)
コレクションに関連するショップ。
userErrors
( [UserError!]!
)
mutation を実行した際に発生したエラーのリストです。
collectionRemoveProducts
(mutation
)
与えられたコレクションから商品のセットを削除します。実行には長い時間がかかります。コレクションを返すのではなく、ジョブを返すので、ポーリングする必要があります。
例
mutation query の実行例です。
mutation collectionRemoveProducts($id: ID!, $productIds: [ID!]!) {
collectionRemoveProducts(id: $id, productIds: $productIds) {
job {
id
}
userErrors {
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"productIds": [
"Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
]
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
商品を削除するコレクションの ID です。 |
productIds ( [ID!]! ) required
|
コレクションから削除する商品の ID。 |
返却フィールド
job
(Job
)
製品を削除する非同期のジョブです。
userErrors
([UserError!]!
)
mutation を実行して発生したエラーのリストです。
collectionReorderProducts
(mutation
)
与えられたコレクションから商品のセットを非同期的に再注文します。
mutation collectionReorderProducts($id: ID!, $moves: [MoveInput!]!) {
collectionReorderProducts(id: $id, moves: $moves) {
job {
id
}
userErrors {
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"moves": [
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"newPosition": "placeholder"
}
]
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
商品を再注文するコレクションの ID です。 |
moves ( [MoveInput!]! ) required
|
順番に実行されるムーブのリスト。 |
MoveInput
fields
id
(ID!
) required
移動するオブジェクトの ID です。
newPosition
(UnsignedInt64!
) required
0 ベースのインデックスを使用した、セット内のオブジェクトの新しい位置です。
返却フィールド
job
(Job
)
商品を並べ替える非同期のジョブです。
userErrors
( [UserError!]!
)
mutation を実行して発生したエラーのリストです。
collectionUnpublish
(mutation
)
コレクションを非公開にします。
mutation collectionUnpublish($input: CollectionUnpublishInput!) {
collectionUnpublish(input: $input) {
collection {
id
}
shop {
id
}
userErrors {
field
message
}
}
}
{
"input": {
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"collectionPublications": [
{}
]
}
}
引数 | 説明 |
---|---|
input ( CollectionUnpublishInput! ) required
|
アンパブリッシュするコレクションとそれを削除する販売チャネルを指定します。 |
CollectionUnpublishInput
fields
collectionPublications
( [CollectionPublicationInput!]!
) required
コレクションが公開されているチャンネルです。
id
( ID!
) required
パブリケーションの作成または更新を行うコレクション。
返却フィールド
collection
( Collection
)
公開されていないコレクションです。
shop
( Shop!
)
コレクションに関連するショップ。
userErrors
( [UserError!]!
)
mutation を実行して発生したエラーのリストです。
collectionUpdate
(mutation
)
コレクションを更新します。
例
mutation query の実行例
mutation collectionUpdate($input: CollectionInput!) {
collectionUpdate(input: $input) {
collection {
id
}
job {
id
}
userErrors {
field
message
}
}
}
{
"input": {}
}
引数
引数 | 説明 |
---|---|
input ( CollectionInput! ) required
|
コレクションの更新されたプロパティを指定します。 |
CollectionInput
fields
descriptionHtml
( String
)
HTML 形式のコレクションの説明。
handle
( String
)
コレクションのユニークなヒューマンフレンドリーな文字列。コレクションのタイトルから自動的に生成されます。
id
( ID
)
更新するコレクションを指定するか、存在しない場合は新しいコレクションを作成します。
image
( ImageInput
)
コレクションに関連付けられている画像です。
metafields
( [MetafieldInput!]
)
このコレクションに関連付けるメタフィールドを指定します。
privateMetafields
( [PrivateMetafieldInput!]
)
この商品に関連付けるプライベート メタフィールド。
products
( [ID!]
)
コレクション商品の初期リスト。productCreate
でのみ有効で、ルールはありません。
publications
( [CollectionPublicationInput!]
)
コレクション発行物の初期リスト。productCreate
でのみ有効です。この引数は推奨されません。代わりに PublishablePublish を使用してください。
redirectNewHandle
( Boolean
)
新しいハンドルが提供された後にリダイレクトが必要かどうかを示します。true の場合、古いハンドルは自動的に新しいハンドルにリダイレクトされます。
ruleSet
( CollectionRuleSetInput
)
商品をコレクションに割り当てるために使用するルールです。
seo
( SEOInput
)
コレクションの SEO 情報。
sortOrder
( CollectionSortOrder
)
コレクションの商品をソートする順序です。
templateSuffix
( String
)
ストアでコレクションを表示するときに使用されるテーマテンプレート。
title
( String
)
新しいコレクションを作成するときに必要です。
返却フィールド
collection
( Collection
)
更新されたコレクション。
job
( Job
)
新しいルールセットに基づいて商品を更新する非同期のジョブです。
userErrors
( [UserError!]!
)
mutation を実行する際に発生したエラーのリスト。
fileCreate
(mutation
)
外部 URL や stagedUploadsCreate mutation
を使って以前にアップロードされたファイルを使ってファイルアセットを作成します。これらのファイルは Shopify admin の Files page に追加されます。
例
mutation fileCreate($files: [FileCreateInput!]!) {
fileCreate(files: $files) {
files {
alt
createdAt
}
userErrors {
code
field
message
}
}
}
{
"files": [
{
"originalSource": "placeholder"
}
]
}
引数
引数 | 説明 |
---|---|
files ( [FileCreateInput!]! ) required
|
作成される新規ファイルのリスト |
FileCreateInput
fields
alt
( String
)
ファイルに関連する alt テキスト。
contentType
( FileContentType
)
ファイルのコンテンツタイプ。
originalSource
( String!
) required
ファイルオブジェクトの外部 URL または署名されたアップロード URL。
返却フィールド
files
( [File!]
)
新しく作成されたファイルです。
userErrors
( [FilesUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
fileDelete
(mutation
)
ファイルアセットを削除する
例
mutation fileDelete($fileIds: [ID!]!) {
fileDelete(fileIds: $fileIds) {
deletedFileIds
userErrors {
code
field
message
}
}
}
{
"fileIds": [
"Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
]
}
引数
引数 | 説明 |
---|---|
fileIds ( [ID!]! ) required
|
削除するファイルの ID です。 |
返却フィールド
deletedFileIds
( [ID!]
)
削除されたファイルの ID です。
userErrors
( [FilesUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
fileUpdate
(mutation
)
ファイル資産を更新します。
mutation fileUpdate($files: [FileUpdateInput!]!) {
fileUpdate(files: $files) {
files {
alt
createdAt
}
userErrors {
code
field
message
}
}
}
{
"files": [
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
}
]
}
引数
引数 | 説明 |
---|---|
files ( [FileUpdateInput!]! ) required
|
更新されるファイルのリスト |
FileUpdateInput
fields
alt
( String
)
ファイルに関連付けられた alt テキスト。
id
( ID!
) required
更新するファイルです。
返却フィールド
files
( [File!]
)
更新されたファイルのリストです。
userErrors
( [FilesUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
priceListCreate
(mutation
)
価格表を作成します。priceListCreate
mutation を使って、ある国の新しい価格表を作成することができます。これにより、国際価格で商品を販売することができます。
例
mutation query の実行例です。
mutation priceListCreate($input: PriceListCreateInput!) {
priceListCreate(input: $input) {
priceList {
id
}
userErrors {
code
field
message
}
}
}
{
"input": {
"name": "placeholder",
"currency": "placeholder",
"parent": {
"adjustment": {
"value": 1,
"type": "placeholder"
}
}
}
}
引数 | 説明 |
---|---|
input ( PriceListCreateInput! ) required
|
価格表。 |
PriceListCreateInput
fields
contextRule
( PriceListContextRuleInput
)
プライスリストの適格性を判断するために使用される、顧客に関する事実のセットです。
currency
( CurrencyCode!
) required
この価格表に関連する固定価格の 3 文字の通貨コード。
name
( String!
) required
プライスリストの一意の名前で、人間が読める識別子として使用されます。
parent
( PriceListParentCreateInput!
) required
他の価格に対する相対的な調整値です。
返却フィールド
priceList
(PriceList
)
新しく作成された価格表。
userErrors
( [PriceListUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
priceListDelete
(mutation
)
価格リストの削除 priceListDelete
mutation を使用すると、価格リストを削除して、その国の商品に適用されなくなります。プライスリストを削除するには、プライスリスト ID を指定する必要があります。
例
mutation query の実行例を示す。
mutation priceListDelete($id: ID!) {
priceListDelete(id: $id) {
deletedId
userErrors {
code
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
}
引数 | 説明 |
---|---|
id ( ID! ) required
|
削除する価格表の ID です。 |
返却フィールド
deletedId
( ID
)
削除された価格表の ID です。
userErrors
( [PriceListUserError!]!
)
mutation を実行して発生したエラーのリストです。
priceListFixedPricesAdd
(mutation
)
プライスリストに固定価格を作成または更新します。priceListFixedPricesAdd
mutation を使用すると、特定の商品バリアントに固定価格を設定できます。これにより、国ごとに商品バリアントの価格を変更することができます。これらのバリアントに対する既存の固定価格リストの価格は、すべて上書きされます。
例
mutation query の実行例を示す。
mutation priceListFixedPricesAdd($priceListId: ID!, $prices: [PriceListPriceInput!]!) {
priceListFixedPricesAdd(priceListId: $priceListId, prices: $prices) {
prices
userErrors {
code
field
message
}
}
}
{
"priceListId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"prices": [
{
"variantId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"price": {
"amount": "placeholder",
"currencyCode": "placeholder"
}
}
]
}
引数
引数 | 説明 |
---|---|
priceListId ( ID! ) required
|
価格が追加される価格リストです。 |
prices ( [PriceListPriceInput!]! ) required |
追加する固定価格。 |
PriceListPriceInput
fields
compareAtPrice
( MoneyInput
)
この価格表に掲載されている商品バリアントの比較対象価格です。
price
( MoneyInput!
) required
この価格表に掲載されている商品バリアントの価格です。
variantId
( ID!
) required
価格表の価格に関連付けられた商品バリアントの ID です。
返却フィールド
prices
( [PriceListPrice!]
)
プライスリストに追加された価格です。
userErrors
( [PriceListPriceUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
priceListFixedPricesDelete
(mutation
)
商品バリアント ID を使用して、価格リストから特定の価格を削除します。priceListFixedPricesDelete
mutation を使用すると、価格リスト上の価格の部分的なセットを削除できます。削除後、その価格はその国の商品には適用されなくなります。
例
query mutation 実行例
mutation priceListFixedPricesDelete($priceListId: ID!, $variantIds: [ID!]!) {
priceListFixedPricesDelete(priceListId: $priceListId, variantIds: $variantIds) {
deletedFixedPriceVariantIds
userErrors {
code
field
message
}
}
}
{
"priceListId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"variantIds": [
"Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
]
}
引数
引数 | 説明 |
---|---|
priceListId ( ID! ) required
|
価格を削除する価格リストの ID です。 |
variantIds ( [ID!]! ) required
|
価格リストから削除する商品バリアント ID のリスト。 |
返却フィールド
deletedFixedPriceVariantIds
( [ID!]
)
削除された価格のバリアント ID のリスト。
userErrors
( [PriceListPriceUserError!]!
)
mutation を実行して発生したエラーのリスト。
priceListUpdate
(mutation
)
価格表の更新 価格リストを更新して、パーセンテージベースの価格調整に変更を加えることができます。priceListUpdate
mutation を使用すると、ある国の既存の価格リストを更新することができます。これにより、国ごとに商品価格を変更することができます。変異の一部として、名前、パーセンテージベースの調整、通貨、および国を変更できます。
例
mutation query 実行例を示します。
mutation priceListUpdate($id: ID!, $input: PriceListUpdateInput!) {
priceListUpdate(id: $id, input: $input) {
priceList {
id
}
userErrors {
code
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"input": {}
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
プライスリストの ID です。 |
input ( PriceListUpdateInput! ) required
|
プライスリストの更新に必要な入力フィールドを提供します。 |
PriceListUpdateInput
fields
contextRule
( PriceListContextRuleInput
)
プライスリストの適格性を判断するために使用される買い手のコンテキストに関するファクトのセット。
currency
( CurrencyCode
)
この価格表に関連する固定価格の 3 文字コード。
name
( String
)
価格リストの一意の名前で、人間が読める識別子として使用されます。
parent
( PriceListParentUpdateInput
)
他の価格に対する相対的な調整値。
返却フィールド
priceList
( PriceList
)
更新された価格リスト。
userErrors
( [PriceListUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
productAppendImages
(mutation
)
商品に画像を付加する。
例
mutation query の実行例を示す。
mutation productAppendImages($input: ProductAppendImagesInput!) {
productAppendImages(input: $input) {
newImages {
id
}
product {
id
}
userErrors {
field
message
}
}
}
{
"input": {
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"images": [
{}
]
}
}
引数
引数 | 説明 |
---|---|
input ( ProductAppendImagesInput! ) required
|
新しい画像と追加される商品を指定します。 |
ProductAppendImagesInput
fields
id
( ID!
) required
商品の ID です。
images
( [ImageInput!]!
) required
商品に付加される画像です。
返却フィールド
newImages
([Image!]
)
商品に付加された新しい画像のリスト。
引数 | 説明 |
---|---|
crop ( CropRegion ) |
指定された領域に従って画像をクロップします。この引数は非推奨です。代わりに Image.transformedSrc の crop を使用する。 |
maxHeight ( Int ) |
画像の高さを 1 から 2048 までのピクセル数で指定します。この引数は推奨されません。代わりに Image.transformedSrc の maxmaxHeight を使用してください。 |
maxWidth ( Int ) |
1 から 2048 までのピクセル単位での画像の幅。この引数は推奨されません。代わりに Image.transformedSrc の maxWidth を使用してください。 |
scale ( Int ) |
高解像度の Retina ディスプレイ用の画像サイズの乗数。1 から 3 までの値でなければなりません。この引数は推奨されません。代わりに Image.transformedSrc の scale を使用する。デフォルト値: 1
|
product
( Products
)
商品オブジェクト。
userErrors
( [UserError!]!
)
mutaiton を実行した際に発生したエラーのリスト。
productChangeStatus
(mutation
)
商品のステータスを変更します。これにより、すべてのチャネルで商品の可用性を設定することができます。
例
mutation query の実行例を示す。
mutation productChangeStatus($productId: ID!, $status: ProductStatus!) {
productChangeStatus(productId: $productId, status: $status) {
product {
id
}
userErrors {
code
field
message
}
}
}
{
"productId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"status": "placeholder"
}
引数
引数 | 説明 |
---|---|
productId ( ID! )required |
商品の ID です。 |
status ( ProductStatus! ) required
|
商品に割り当てられるステータスです。 |
返却フィールド
product
(Product
)
商品オブジェクトです。
userErrors
( [ProductChangeStatusUserError!])
!
mutation を実行した際に発生したエラーのリスト。
productCreate
(mutation
)
商品を作成する。
例
mutation query の実行例を示す。
mutation productCreate($input: ProductInput!) {
productCreate(input: $input) {
product {
id
}
shop {
id
}
userErrors {
field
message
}
}
}
{
"input": {}
}
引数
引数 | 説明 |
---|---|
input ( ProductInput! ) required
|
新商品のプロパティを指定します。 |
media ( [CreateMediaInput!] ) |
商品に追加される新しいメディアのリスト。 |
ProductInput
fields
bodyHtml
( String
)
商品の説明です。HTML フォーマットをサポートします。この引数は推奨されません。代わりに descriptionHtml を使用してください。
collectionsToJoin
( [ID!]
)
この商品が追加されるコレクションの ID。
collectionsToLeave
( [ID!]
)
この商品が含まれなくなるコレクションの ID。
descriptionHtml
( String
)
商品の説明(HTML フォーマット付き)。
giftCard
( Boolean
)
商品がギフトカードであるかどうか。
giftCardTemplateSuffix
(String
)
ストアでギフトカードを表示するときに使われるテーマテンプレート。
handle
(String
)
商品のユニークなヒューマンフレンドリーな文字列。商品のタイトルから自動的に生成されます。
id
( ID
)
productUpdate
で更新する商品を指定するか、productCreate で指定がない場合は新しい商品を作成します。
images
([ImageInput!]
)
商品に関連付ける画像を指定します。
metafields
([MetafieldInput!]
)
この商品に関連付けるメタフィールド。
options
([String!]
)
カスタム商品オプションのリスト(商品ごとに最大 3 つまで)。
privateMetafields
([PrivateMetafieldInput!]
)
この商品に関連付けるプライベート メタフィールド。
productPublications
([ProductPublicationInput!]
)
この商品が公開されているチャネルのリストです。この引数は非推奨です。代わりに PublishablePublish
を使用してください。
productType
(String
)
マーチャントが指定する商品タイプ。
publications
(ProductPublicationInput!
)
商品が公開されているチャネルのリスト。この引数は非推奨です。代わりに PublishablePublish
を使用してください。
publishDate
(DateTime
)
アクティブなステータスを持つ商品のみがパブリッシュできます。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
publishOn
(DateTime
)
アクティブなステータスを持つ商品のみが公開されます。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
published
( Boolean
)
アクティブなステータスを持つ商品のみがパブリッシュできます。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
publishedAt
( DateTime
)
アクティブなステータスを持つ商品のみがパブリッシュ可能です。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
redirectNewHandle
( Boolean
)
新しいハンドルが提供された後、リダイレクトが必要かどうか。真であれば、古いハンドルは自動的に新しいハンドルにリダイレクトされます。
requiresSellingPlan
( Boolean
)
商品が販売プラン(サブスクリプション)でしか購入できないかどうか。サブスクリプションでのみ販売される商品は、オンラインストアでのみ作成できます。既存の商品に true を設定すると、サブスクリプションをサポートしていないチャンネルでは商品が利用できないと表示されます。
seo
(SEOInput
)
商品に関連する SEO 情報。
status
(ProductStatus
)
商品のステータスです。
tags
(String!)
商品に追加されたタグのコンマ区切りリスト。
templateSuffix
(String
)
ストアで商品を表示する際に使用されるテーマテンプレート。
title
(String
)
商品のタイトルです。
variants
([ProductVariantInput!]
)
商品に関連するバリアントのリスト。
vendor
(String
)
商品のベンダーの名前です。
返却フィールド
product
(Product
)
商品オブジェクト。
shop
( Shop!
)
商品に関連するショップ。
userErrors
([UserError!]!
)
mutation を実行した際に発生したエラーのリストです。
productCreateMedia
(mutation
)
商品のメディアを作る。
例
mutation query の実行例を示す。
mutation productCreateMedia($productId: ID!, $media: [CreateMediaInput!]!) {
productCreateMedia(productId: $productId, media: $media) {
media {
alt
}
mediaUserErrors {
code
field
message
}
product {
id
}
}
}
{
"productId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"media": [
{
"originalSource": "placeholder",
"mediaContentType": "placeholder"
}
]
}
引数
引数 | 説明 |
---|---|
media ( [CreateMediaInput!]! ) required
|
商品に追加される新規メディアのリスト。 |
productId ( ID! ) required
|
メディアに関連する商品を指定します。 |
CreateMediaInput
fields
alt
( String
)
メディアに関連する alt テキスト。
mediaContentType
(MediaContentType!
) required
メディアのコンテンツタイプです。
originalSource
(String!
) required
メディアオブジェクトのオリジナルソース。外部 URL または署名済みアップロード URL の場合があります。
返却フィールド
media
([Media!]
)
新しく作成されたメディア
mediaUserErrors
([MediaUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
product
(Product
)
メディアに関連付けられた商品です。
非推奨返却フィールド
userErrors
([UserError!]!
) deprecated
mutation を実行して発生したエラーのリストです。
productDelete
(mutation
)
商品を削除し、関連するすべてのバリエーションやメディアも削除します。
例
mutation query の実行例を示す。
mutation productDelete($input: ProductDeleteInput!) {
productDelete(input: $input) {
deletedProductId
shop {
id
}
userErrors {
field
message
}
}
}
{
"input": {
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
}
}
引数
引数 | 説明 |
---|---|
input ( ProductDeleteInput! ) required
|
削除する商品を ID で指定します。 |
ProductDeleteInput
fields
id
(ID!
) required
商品の ID です。
返却フィールド
deletedProductId
(ID
)
削除された商品の ID です。
shop
(Shop!
)
商品に関連するショップ。
userErrors
([UserError!]!
)
mutation を実行して発生したエラーのリストです。
productDeleteImages
(mutation
)
商品画像を商品から削除します。
例
mutation query の実行例です。
mutation productDeleteImages($id: ID!, $imageIds: [ID!]!) {
productDeleteImages(id: $id, imageIds: $imageIds) {
deletedImageIds
product {
id
}
userErrors {
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"imageIds": [
"Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
]
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
商品の ID を表します。 |
imageIds ( [ID!]! ) required
|
商品から削除する画像 ID の配列です。 |
返却フィールド
deletedImageIds
([ID!]!
)
削除する画像の ID の配列です。
product
(Product
)
商品オブジェクトです。
userErrors
([UserError!]!
)
mutation を実行した際に発生したエラーのリストです。
productDeleteMedia
(mutation
)
商品のメディアを削除します。
例
mutation query の実行例です。
mutation productDeleteMedia($productId: ID!, $mediaIds: [ID!]!) {
productDeleteMedia(productId: $productId, mediaIds: $mediaIds) {
deletedMediaIds
deletedProductImageIds
mediaUserErrors {
code
field
message
}
product {
id
}
}
}
{
"productId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"mediaIds": [
"Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
]
}
引数
引数 | 説明 |
---|---|
mediaIds ( [ID!]! ) required
|
削除するメディア ID です。 |
productId ( ID! ) required
|
メディアを削除する対象の商品の ID。 |
返却フィールド
deletedMediaIds
([ID!]
)
削除されたメディア ID のリスト。
deletedProductImageIds
([ID!]
)
削除された商品画像 ID のリスト。
mediaUserErrors
([MediaUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
product
(Product
)
メディアが削除された商品。
非推奨返却フィールド
-
userErrors
([UserError!]!
)deprecated
mutation を実行して発生したエラーのリストです。
productDuplicate
(mutation
)
製品を複製します。
例
mutation query を実行する
mutation productDuplicate($productId: ID!, $newTitle: String!) {
productDuplicate(productId: $productId, newTitle: $newTitle) {
imageJob {
id
}
newProduct {
id
}
shop {
id
}
userErrors {
field
message
}
}
}
{
"productId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"newTitle": "placeholder"
}
引数
引数 | 説明 |
---|---|
includeImages ( Boolean ) |
画像を複製するかどうかを指定します。 デフォルト値:false |
newStatus ( ProductStatus ) |
商品の新しいステータスを指定します。値が指定されない場合、ステータスは元の商品から継承されます。 |
newTitle ( String! ) required
|
商品の新しいタイトルです。 |
productId ( ID! ) required
|
複製される商品の ID です。 |
返却フィールド
imageJob
(Job
)
商品画像を複製する非同期ジョブです。
newProduct
(Product
)
複製された商品です。
shop
(Shop!
)
ユーザーのショップです。
userErrors
([UserError!]!
)
mutation を実行した際に発生したエラーのリストです。
productImageUpdate
(mutation
)
商品の画像を更新します。
例
mutation query の実行例です。
mutation productImageUpdate($productId: ID!, $image: ImageInput!) {
productImageUpdate(productId: $productId, image: $image) {
image {
id
}
userErrors {
field
message
}
}
}
{
"productId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"image": {}
}
引数
引数 | 説明 |
---|---|
image ( ImageInput! ) required
|
更新される画像 |
productId ( ID! ) required
|
画像を更新する商品の ID。 |
ImageInput
fields
altText
( String
)
画像の性質や内容を共有するための単語やフレーズです。
id
( ID
)
グローバルに一意な識別子。
src
( String
)
画像の URL。署名入りのアップロード URL でもよい。
返却フィールド
image
( Image
)
更新された画像
引数 | 説明 |
---|---|
crop ( CropRegion ) |
指定された領域に従って画像をクロップします。この引数は非推奨です。代わりに Image.transformedSrc の crop を使用してください。 |
maxHeight ( Int ) |
画像の高さを 1 から 2048 までのピクセル数で指定します。この引数は推奨されません。代わりに Image.transformedSrc の maxmaxHeight を使用してください。 |
maxWidth ( Int ) |
1 から 2048 までのピクセル単位での画像の幅。この引数は推奨されません。代わりに Image.transformedSrc の maxmaxWidth を使用してください。 |
scale ( Int ) |
高解像度の Retina ディスプレイ用の画像サイズの乗数。1 から 3 までの値でなければなりません。この引数は推奨されません。代わりに Image.transformedSrc の scale を使用する。デフォルト値: 1
|
-
userErrors
([UserError!]!
)
mutation を実行した際に発生したエラーのリスト。
productJoinSellingPlanGroups
(mutation
)
商品に複数の販売計画グループを追加します。
例
mutation query の実行例です。
mutation productJoinSellingPlanGroups($id: ID!, $sellingPlanGroupIds: [ID!]!) {
productJoinSellingPlanGroups(id: $id, sellingPlanGroupIds: $sellingPlanGroupIds) {
product {
id
}
userErrors {
code
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"sellingPlanGroupIds": [
"Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
]
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
商品の ID を指定します。 |
sellingPlanGroupIds ( [ID!]! ) required
|
追加する販売計画グループの ID です。 |
返却フィールド
product
( Product
)
商品オブジェクトです。
userErrors
( [SellingPlanGroupUserError!]!
)
mutation を実行して発生したエラーのリストです。
productLeaveSellingPlanGroups
(mutation
)
商品から複数のグループを削除します。
例
mutation query の実行例です。
mutation productLeaveSellingPlanGroups($id: ID!, $sellingPlanGroupIds: [ID!]!) {
productLeaveSellingPlanGroups(
id: $id
sellingPlanGroupIds: $sellingPlanGroupIds
) {
product {
id
}
userErrors {
code
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"sellingPlanGroupIds": [
"Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
]
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
商品の ID を指定します。 |
sellingPlanGroupIds ( [ID!]! ) required
|
追加する販売計画グループの ID です。 |
返却フィールド
product
( Product
)
商品オブジェクトです。
userErrors
( [SellingPlanGroupUserError!]!
)
mutation を実行して発生したエラーのリストです。
productPublish
(mutation
)
商品を公開します。サブスクリプションでのみ販売される商品( requestsSellingPlan
: true
)は、オンラインストアでのみ公開できます。
例
mutation query を実行する
mutation productPublish($input: ProductPublishInput!) {
productPublish(input: $input) {
product {
id
}
shop {
id
}
userErrors {
field
message
}
}
}
{
"input": {
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"productPublications": [
{}
]
}
}
引数
引数 | 説明 |
---|---|
input ( ProductPublishInput! ) required
|
公開する商品と公開先のチャンネルを指定します。 |
ProductPublishInput
fields
id
(ID!
) required
パブリケーションを作成または更新する商品です。
productPublications
([ProductPublicationInput!]!
) required
商品が公開されているパブリケーションです。
返却フィールド
product
(Product
)
公開されている商品です。
shop
( Shop
)
ユーザーのショップです。
userErrors
([UserError!]!
)
mutation を実行した際に発生したエラーのリストです。
非推奨の返却フィールド
-
productPublications
([ProductPublication!]
)deprecated
商品が公開されているチャネル。
productReorderImages
(mutation
)
指定された商品の画像セットを非同期に再注文する。
例
mutation query の実行例
mutation productReorderImages($id: ID!, $moves: [MoveInput!]!) {
productReorderImages(id: $id, moves: $moves) {
job {
id
}
userErrors {
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"moves": [
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"newPosition": "placeholder"
}
]
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
画像を並べ替える対象となる商品の ID。 |
moves ( [MoveInput!]! ) required
|
順番に評価される、実行するムーブのリスト。 |
MoveInput
fields
id
(ID!
) required
移動するオブジェクトの ID です。
newPosition
(UnsignedInt64!
) required
セット内のオブジェクトの新しい位置 (0 ベースのインデックスを使用)
返却フィールド
job
( Job
)
画像を並べ替える非同期のジョブです。
userErrors
([UserError!]!
)
mutation の実行時に発生したエラーのリスト。
productReorderMedia
(mutation
)
商品に添付されたメディアを非同期的に再注文する。
例
mutation query の実行例
mutation productReorderMedia($id: ID!, $moves: [MoveInput!]!) {
productReorderMedia(id: $id, moves: $moves) {
job {
id
}
mediaUserErrors {
code
field
message
}
}
}
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"moves": [
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"newPosition": "placeholder"
}
]
}
引数
引数 | 説明 |
---|---|
id ( ID! ) required
|
メディアを再注文する対象となる商品の ID を指定します。 |
moves ( [MoveInput!]! ) required
|
順番に評価される実行するムーブのリスト。 |
MoveInput
フィールド
id
(ID!
) required
移動するオブジェクトの ID です。
newPosition
(UnsignedInt64!
) required
セット内のオブジェクトの新しい位置 (0 ベースのインデックスを使用)
返却フィールド
job
(Job
)
メディアを再注文する非同期ジョブです。
mediaUserErrors
([MediaUserError!]!
)
mutation を実行した際に発生したエラーのリスト。
非推奨の返却フィールド
-
userErrors
([UserError!]!
)deprecated
mutation を実行して発生したエラーのリストです。
productUnpublish
(mutation
)
非公開の商品
例
mutation query を実行する
mutation productUnpublish($input: ProductUnpublishInput!) {
productUnpublish(input: $input) {
product {
id
}
shop {
id
}
userErrors {
field
message
}
}
}
{
"input": {
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"productPublications": [
{}
]
}
}
引数
引数 | 説明 |
---|---|
input ( ProductUnpublishInput! ) required
|
アンパブリッシュする商品と、その商品をアンパブリッシュするチャネルを指定します。 |
ProductUnpublishInput
fields
id
( ID!
) required
パブリケーションを作成または更新する商品の ID です。
productPublications
([ProductPublicationInput!]!
) required
商品の公開を解除するチャンネルです。
返却フィールド
product
( Product
)
非公開にされた商品。
shop
( Shop!
)
ユーザーのショップです。
userErrors
( [UserError!]!
)
mutation を実行した際に発生したエラーのリストです。
productUpdate
(mutation
)
商品をアップデートします。商品をアップデートする際に、一部のバリアントのみをアップデートに含めると、含まれていないバリアントは削除されてしまいます。除外されたバリアントを削除するリスクなしにバリアントを安全に管理するには、 productVariantsBulkUpdate を使用してください。単一のバリアントをアップデートしたい場合は、productVariantUpdate を使用してください。
例
mutation query の実行例
mutation productUpdate($input: ProductInput!) {
productUpdate(input: $input) {
product {
id
}
userErrors {
field
message
}
}
}
{
"input": {}
}
引数
引数 | 説明 |
---|---|
input ( ProductInput! ) required
|
商品の更新されたプロパティです。 |
ProductInput
fields
bodyHtml
(String
)
商品の説明です。HTML フォーマットをサポートします。この引数は推奨されません。代わりに descriptionHtml
を使用してください。
collectionsToJoin
([ID!]
)
この商品が追加されるコレクションの ID。
collectionsToLeave
([ID!]
)
この商品が含まれなくなるコレクションの ID。
descriptionHtml
(String
)
商品の説明(HTML フォーマット付き)。
giftCard
(Boolean
)
商品がギフトカードであるかどうか。
giftCardTemplateSuffix
(String
)
ストアでギフトカードを表示するときに使われるテーマテンプレート。
handle
(String
)
商品のユニークなヒューマンフレンドリーな文字列。商品のタイトルから自動的に生成されます。
id
(ID
)
productUpdate
で更新する商品を指定するか、productCreate
で指定がない場合は新しい商品を作成します。
images
([ImageInput!]
)
商品に関連付ける画像を指定します。
metafields
([MetafieldInput!]
)
この商品に関連付けるメタフィールド。
options
([String!]
)
カスタム商品オプションのリスト(商品ごとに最大 3 つまで)。
privateMetafields
([PrivateMetafieldInput!]
)
この商品に関連付けるプライベート メタフィールド。
productPublications
([ProductPublicationInput!]
)
この商品が公開されているチャネルのリストです。この引数は非推奨です。代わりに PublishablePublish
を使用してください。
productType
(String
)
マーチャントが指定する商品タイプ。
publications
([ProductPublicationInput!]
)
商品が公開されているチャネルのリスト。この引数は非推奨です。代わりに PublishablePublish
を使用してください。
publishDate
(DateTime
)
アクティブなステータスを持つ商品のみがパブリッシュできます。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
publishOn
(DateTime
)
アクティブなステータスを持つ商品のみが公開されます。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
published
(Boolean
)
アクティブなステータスを持つ商品のみがパブリッシュできます。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
publishedAt
(DateTime
)
アクティブなステータスを持つ商品のみがパブリッシュ可能です。この引数は推奨されません。代わりに PublishablePublish
を使用してください。
redirectNewHandle
(Boolean
)
新しいハンドルが提供された後、リダイレクトが必要かどうか。真であれば、古いハンドルは自動的に新しいハンドルにリダイレクトされます。
requiresSellingPlan
(Boolean
)
商品が販売プラン(サブスクリプション)でしか購入できないかどうか。サブスクリプションでのみ販売される商品は、オンラインストアでのみ作成できます。既存の商品に true
を設定すると、サブスクリプションをサポートしていないチャンネルでは商品が利用できないと表示されます。
seo
(SEOInput
)
商品に関連する SEO 情報。
status
( ProductStatus
)
商品のステータスです。
tags
([String!]
)
商品に追加されたタグのコンマ区切りリスト。
templateSuffix
(String
)
ストアで商品を表示する際に使用されるテーマテンプレート。
title
(String
)
商品のタイトルです。
variants
([ProductVariantInput!]
)
商品に関連するバリアントのリスト。
vendor
(String
)
商品のベンダーの名前です。
返却フィールド
product
(Product
)
更新された商品です。
userErrors
([UserError!]!
)
mutation を実行した際に発生したエラーのリスト。
productUpdateMedia
(mutation
)
商品のメディアを更新する
例
mutation query の実行例
mutation productUpdateMedia($productId: ID!, $media: [UpdateMediaInput!]!) {
productUpdateMedia(productId: $productId, media: $media) {
media {
alt
}
mediaUserErrors {
code
field
message
}
product {
id
}
}
}
{
"productId": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE=",
"media": [
{
"id": "Z2lkOi8vU2hvcGlmeS9FeGFtcGxlLzE="
}
]
}
引数
引数 | 説明 |
---|---|
media ( [UpdateMediaInput!]! ) required
|
更新メディアのリスト。 |
productId ( ID! ) required
|
メディアを更新する商品を指定します。 |
UpdateMediaInput
fields
alt
(String
)
メディアに関連付けられた alt
テキスト。
id
(ID!
) required
更新するメディアを指定します。
previewImageSource
(String
)
メディアのプレビュー画像を更新するためのソース。外部 URL または署名済みアップロード URL である可能性があります。
返却フィールド
media
([Media!]
)
更新されたメディア。
mediaUserErrors
([MediaUserError!]!
)
mutation を実行する際に発生したエラーのリスト。
product
([Product]
)
メディアが更新された商品。
非推奨返却フィールド
-
userErrors
([UserError!]!
)deprecated
mutation を実行して発生したエラーのリストです。
Shopify アプリのご紹介
Shopify アプリである、「商品ページ発売予告アプリ | リテリア Coming Soon」は、商品ページを買えない状態のまま、発売日時の予告をすることができるアプリです。Shopify で Coming Soon 機能を実現することができます。
Shopify アプリである、「らくらく日本語フォント設定|リテリア Font Picker」は、ノーコードで日本語フォントを使用できるアプリです。日本語フォントを導入することでブランドを演出することができます。
Discussion