FROM CACHE - jp_header
このコミュニティはピアツーピアサポートに移行しました。Shopify サポートは今後、このコミュニティへのサービスを提供いたしません。これからもぜひ、他のマーチャントやパートナーとつながり、サポートし合い、経験を共有してください。 当社の行動規範に違反する行動や削除を希望するコンテンツがありましたら、引き続きご報告ください

商品ごとの注文数を取得したい

解決済

商品ごとの注文数を取得したい

nowheresville
観光客
6 0 1

Public App内で、商品ごとの当日の注文数を取得したいと思い、GraphQL Admin APIを利用して開発を進めております。

下記のような内容のQueryでは、ある程度は取得できますが、当日の全ての注文を取得できているとは言えない(最初の70件の注文だけになってしまう)なと・・

{
  orders(first: 70, query: "created_at:>TODAY status:any") {
    edges {
      node {
        id
        createdAt
        lineItems(first: 5) {
          edges {
            node {
              id
              name
              title
              variantTitle
              variant {
                id
              }
            }
          }
        }
      }
    }
  }
}

 

そこで、

 

first: 70

 

の「70」を「1000」とかに増やしてみても、クエリコスト?の制限でエラーが発生してしまいます・・

何か良い方法があればご教示いただければ幸いです。

 

1 件の受理された解決策

junichiokamura
Community Manager
1201 280 509

成功

下記のページネーションを使うのはいかがでしょうか?

https://shopify.dev/concepts/graphql/pagination

また、大量データ用のBulk API もあります。

https://shopify.dev/docs/admin-api/graphql/reference/bulk-operations

 

Senior Partner Solutions Engineer

元の投稿で解決策を見る

2件の返信2

junichiokamura
Community Manager
1201 280 509

成功

下記のページネーションを使うのはいかがでしょうか?

https://shopify.dev/concepts/graphql/pagination

また、大量データ用のBulk API もあります。

https://shopify.dev/docs/admin-api/graphql/reference/bulk-operations

 

Senior Partner Solutions Engineer
nowheresville
観光客
6 0 1

 

@junichiokamura 

ご回答ありがとうございます!

下記のページネーションを使うのはいかがでしょうか?

https://shopify.dev/concepts/graphql/pagination

なるほど、こういったアプローチがあるんですね!

取得できたデータが全てではなく一部であった場合は、次ページが存在するので(hasNextPage が true)、

カーソルを変更して次ページ分のデータを取得し続けていければ、全てのデータを取得できそうですね。

 

また、大量データ用のBulk API もあります。

https://shopify.dev/docs/admin-api/graphql/reference/bulk-operations

このアプローチでも取得できそうですね!

欲しいデータは、レスポンスには含まれていなくて、欲しいデータがダウンロードできるURLが含まれているんですかね。

そして、そのダウンロード用URLにアクセスし、欲しいデータを手に入れられる、というイメージですね。

 

どちらも試してみたいと思います、非常に助かりました!