Reference
Shopify (Dev Dashboard app)
Connect a Shopify Dev Dashboard app to Alter Vault using its client credentials
Overview
Section titled “Overview”Use the Client ID and Client secret of a Shopify app created in the Dev Dashboard to make authenticated Admin API calls through Alter Vault. The client secret stays in the vault: Alter exchanges it for a short-lived Admin API access token through Shopify’s client-credentials grant and only that token is sent on the wire and returned to the SDK.
| Property | Value |
|---|---|
| Provider ID | shopify-client-credentials |
| Category | E-commerce |
| Credential Type | OAuth client credentials |
Step 1: Get Credentials
Section titled “Step 1: Get Credentials”Create the app in the Dev Dashboard
Open the Shopify Dev Dashboard, select the organization that owns the store, and on Apps click Create app > Start from Dev Dashboard. Name the app and click Create. Shopify’s Dev Dashboard guide covers the full flow.
Release a version with the scopes
On the app’s Versions tab, create a new version, enter the Admin API scopes the integration needs, then click Release.
Install the app on the store
Back on the app’s Home page click Install app, pick the store, and confirm. The store must belong to the same Dev Dashboard organization as the app.
Copy the credentials
Go to the app’s Settings and copy the Client ID and the Client secret under Credentials.
Step 2: Add to Alter Vault
Section titled “Step 2: Add to Alter Vault”Open the Developer Portal
Go to portal.alterauth.com and navigate to the application.
Add Shopify (Dev Dashboard app)
Go to Managed Secrets > Add Provider > Shopify (Dev Dashboard app).
Enter credentials
Enter your store subdomain (e.g. your-store from your-store.myshopify.com) and the Client ID in their fields, and paste the Client secret into the credential field.
Save
Click Save. Alter performs a real token exchange to verify the credentials before storing them. You’ll receive a grant_id to use with the SDK.
Using in Code
Section titled “Using in Code”response = await alter_app.request( HttpMethod.GET, "https://your-store.myshopify.com/admin/api/YOUR_API_VERSION/products.json", grant_id="YOUR_GRANT_ID",)Policy-cataloged operations
Section titled “Policy-cataloged operations”Alter policy rules can target these attested operations and families for operation-level and parameter-aware controls.
| Operation ID | Families | Method | Provider path |
|---|---|---|---|
orders/cancel | admin, delete, payment | POST | /admin/api/{api_version}/orders/{order_id}/cancel.json |
orders/create | admin, payment | POST | /admin/api/{api_version}/orders.json |
customers/create | admin, write | POST | /admin/api/{api_version}/customers.json |
graphql | admin, delete, payment, read, send, write | POST | /admin/api/{api_version}/graphql.json |
products/create | admin, write | POST | /admin/api/{api_version}/products.json |
webhooks/create | admin, write | POST | /admin/api/{api_version}/webhooks.json |
customers/list | read | GET | /admin/api/{api_version}/customers.json |
customers/search | read | GET | /admin/api/{api_version}/customers/search.json |
inventory_levels/list | read | GET | /admin/api/{api_version}/inventory_levels.json |
orders/list | read | GET | /admin/api/{api_version}/orders.json |
products/count | read | GET | /admin/api/{api_version}/products/count.json |
products/list | read | GET | /admin/api/{api_version}/products.json |
shop/get | read | GET | /admin/api/{api_version}/shop.json |
variants/list | read | GET | /admin/api/{api_version}/products/{product_id}/variants.json |
webhooks/list | read | GET | /admin/api/{api_version}/webhooks.json |