Why can't I access ShopifyAPI rest constants with Ruby on Rails 7 and shopify_app gem 21.4?

romaaan3
Shopify Partner
1 0 0

Hello, started creating a new app using rails 7, ruby 3.2.0 using the latest version of shopify_app(21.4) gem. For some reason, I cannot access ShopifyAPI rest constants. When I open rails console and try to call it, it says that there is no such constant. 

ShopifyAPI::Shop
uninitialized constant ShopifyAPI::Shop (NameError)

Looks like it is partially loaded, but resources are missing:

ShopifyAPI.constants
[:Context,
 :Inflector,
 :Webhooks,
 :VERSION,
 :AdminVersions,
 :SUPPORTED_ADMIN_VERSIONS,
 :LATEST_SUPPORTED_ADMIN_VERSION,
 :Clients,
 :Auth,
 :Errors,
 :Rest,
 :Logger,
 :Theme,
 :Utils]

And the same with all resources. What may be the reason?

Replies 2 (2)

MrEhtisham
Shopify Partner
2 0 0

I am also facing the same problem, i cannot access store in my rails console. If any body has solution kindly share

ericoco
Shopify Partner
1 0 0

You have to call `ShopifyAPI::Context.setup` first

 

In my project, I had the file 'config/intializers/shopify_app.rb' containing some boiler plate code which requires api key and secret to be configured. You may be missing these when you run the rails console

 

Rails.application.config.after_initialize do
if ShopifyApp.configuration.api_key.present? && ShopifyApp.configuration.secret.present?
ShopifyAPI::Context.setup(