Skip to content

Reference

Shopify

Connect Shopify to Alter Vault for secure API access

Use Shopify credentials to make authenticated API calls through Alter Vault without exposing API keys in code.

PropertyValue
Provider IDshopify
CategoryE-Commerce
Credential TypeAPI Key

Open the Shopify Dev Dashboard

Open the Shopify Dev Dashboard and select (or create) the organization that owns the store.

Create a custom app

Click ‘Create app’, choose ‘Custom app’, name it, and confirm the destination store.

Configure scopes and install

Follow Shopify’s Admin API access-token guide: open the app, go to Configuration → Admin API access scopes, select the scopes the integration needs, then install the app on the store.

Copy the Admin API access token

Copy the Admin API access token (starts with shpat_) — it is only shown once at install time.

Enter your store subdomain

Enter the store subdomain (e.g. ‘your-store’ from your-store.myshopify.com) in the Store Subdomain field.

Open the Developer Portal

Go to portal.alterauth.com and navigate to the application.

Add Shopify

Go to Managed Secrets > Add Provider > Shopify.

Enter credentials

Paste your Admin API Access Token into the API Key field, and enter your store subdomain (e.g. your-store) in the Store Subdomain field.

Save

Click Save. You’ll receive a grant_id to use with the SDK.

response = await alter_app.request(
HttpMethod.GET,
"https://your-store.myshopify.com/admin/api/YOUR_API_VERSION/products.json",
grant_id="YOUR_GRANT_ID",
)

Alter policy rules can target these attested operations and families for operation-level and parameter-aware controls.

Operation IDFamiliesMethodProvider path
orders/canceladmin, delete, paymentPOST/admin/api/{api_version}/orders/{order_id}/cancel.json
orders/createadmin, paymentPOST/admin/api/{api_version}/orders.json
customers/createadmin, writePOST/admin/api/{api_version}/customers.json
graphqladmin, delete, payment, read, send, writePOST/admin/api/{api_version}/graphql.json
products/createadmin, writePOST/admin/api/{api_version}/products.json
webhooks/createadmin, writePOST/admin/api/{api_version}/webhooks.json
customers/listreadGET/admin/api/{api_version}/customers.json
customers/searchreadGET/admin/api/{api_version}/customers/search.json
inventory_levels/listreadGET/admin/api/{api_version}/inventory_levels.json
orders/listreadGET/admin/api/{api_version}/orders.json
products/countreadGET/admin/api/{api_version}/products/count.json
products/listreadGET/admin/api/{api_version}/products.json
shop/getreadGET/admin/api/{api_version}/shop.json
variants/listreadGET/admin/api/{api_version}/products/{product_id}/variants.json
webhooks/listreadGET/admin/api/{api_version}/webhooks.json

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.