Hey @Kellan-Shopify, thanks for pointing out the docs. I have already gone through the information about the new Client Credentials Grant flow. I understand how the new approach works and I can confirm that I am able to generate access tokens using the client ID and client secret from the Dev Dashboard after installing the app on the store.
My concern is about the token expiry. With the legacy custom app flow, the process was very simple. We created a custom app directly in the store admin, received an Admin API token immediately, and that token never expired. That made backend integrations very easy since we did not have to rotate anything or run any token generation logic.
With the new Client Credentials Grant flow, the token expires in 24 hours. For many backend setups this is not ideal. Managing token rotation adds extra complexity that we never had to deal with in the legacy flow.
From the documentation, I see that the Authorization Code Grant can still generate an offline access token that does not expire. The question is how practical it is to use this method for simple backend integrations. It looks more involved compared to the old custom app process. The docs mention that Shopify app templates already include this flow, but in this case I am not using any template. I am only creating an app in the Dev Dashboard and installing it on the store.
So I want to understand:
-
Is it still possible to generate a permanent offline Admin API token with an app created in the Dev Dashboard without using the full app template setup?
-
If yes, what is the recommended way to implement the Authorization Code Grant flow for a simple backend integration that only needs a stable Admin API token?
-
If no, does that mean the only path forward is to manage rotating 24 hour tokens with Client Credentials Grant?
The legacy custom app model was very straightforward for these scenarios, so any guidance on the easiest path for permanent tokens would be really helpful.
One more thing I wanted to clarify. I have attach a screenshot below for reference. In the legacy custom app view inside the store admin, I can still see three sections on the API credentials page:
• Admin API access token
• Storefront API access token
• API key and API secret key
With the new Dev Dashboard app flow, I understand that the Admin API token is no longer shown here and must now be generated using the client ID and client secret from the Dev Dashboard. Since that token lasts only 24 hours, that part is clear.
But I’m not sure how the other fields map to the new system. Specifically:
-
Is the Storefront API access token removed entirely in the new Dev Dashboard apps, or does it appear somewhere else?
-
In the legacy custom app page, the “API key” and “API secret key” were always visible. Are these the same as the new “Client ID” and “Client Secret” from the Dev Dashboard, or are they different concepts?
I want to understand the exact mapping between the old fields and the new fields so I can update our internal documentation correctly.
Thanks!