Questions and discussions about using the Shopify CLI and Shopify-built libraries.
LIMIT=250 def fetch_shopify_orders(status="paid") ShopifyAPI::Order.all(session: @session, financial_status: status, updated_at_min: Time.current.to_date - 2.days, limit: LIMIT) end def fetch_next_shopify_orders ShopifyAPI::Order.all(session: @session, page_info: ShopifyAPI::Order.next_page_info, limit: LIMIT) end orders = fetch_shopify_orders while ShopifyAPI::Order.next_page? orders = fetch_next_shopify_orders end
I have taken reference from here https://shopify.github.io/shopify-api-ruby/usage/rest.html.
Using configuration mentioned below.
ruby '2.6.10'
gem 'rails', '> 5.1.6'
gem 'shopify_api', '> 12.5.0'
Please help me to resolve this issue, any help would be highly appreciated.
Hey @rakesh11
Do you get a specific error? What's the output? Have you confirmed the store has multiple pages of orders?
Scott | Developer Advocate @ Shopify
Hi
Not getting any error, the above query returns top 250 orders and after that it does not return the next 250 orders.
Yes there are thousands of orders in store. I also tried to check this variable "ShopifyAPI::Order.next_page?" and it returns false but there are many orders below top 250 orders.
The script which is mentioned above should return all orders in one execution, but unfortunately it is not happening for me.
Thanks
Hey @rakesh11
Can you give this code a shot?
orders = ShopifyAPI::Order.all(session: session, limit: 250)
loop do
puts orders
break unless ShopifyAPI::Order.next_page?
orders = ShopifyAPI::Order.all(session: session, limit: 250, page_info: ShopifyAPI::Order.next_page_info)
end
Scott | Developer Advocate @ Shopify