SessionTokenApi
Deprecated
Product subscription app extensions won't be supported as of August 10, 2026. You should migrate existing product subscription app extensions to purchase options extensions.
Deprecated:
Product subscription app extensions won't be supported as of August 10, 2026. You should migrate existing product subscription app extensions to purchase options extensions.
Get a fresh session token for communication with your app's backend service. Calls to Shopify APIs must be made by your app's backend service.
import {extend} from '@shopify/admin-ui-extensions';
extend('Admin::Product::SubscriptionPlan::Add', (root, api) => {
const {sessionToken} = api;
const text = root.createText();
sessionToken.getSessionToken().then((newToken) => {
text.updateText(newToken);
});
root.appendChild(text);
root.mount();
});
import React, {useState, useEffect} from 'react';
import {
extend,
render,
useSessionToken,
TextField,
} from '@shopify/admin-ui-extensions-react';
function App() {
const {getSessionToken} = useSessionToken();
const [token, setToken] = useState('');
useEffect(() => {
getSessionToken().then((newToken) => {
setToken(newToken);
});
}, []);
return <TextField label="Session Token" value={token} disabled />;
}
extend(
'Admin::Product::SubscriptionPlan::Add',
render(() => <App />),
);
JavaScript
import {extend} from '@shopify/admin-ui-extensions';
extend('Admin::Product::SubscriptionPlan::Add', (root, api) => {
const {sessionToken} = api;
const text = root.createText();
sessionToken.getSessionToken().then((newToken) => {
text.updateText(newToken);
});
root.appendChild(text);
root.mount();
});React
import React, {useState, useEffect} from 'react';
import {
extend,
render,
useSessionToken,
TextField,
} from '@shopify/admin-ui-extensions-react';
function App() {
const {getSessionToken} = useSessionToken();
const [token, setToken] = useState('');
useEffect(() => {
getSessionToken().then((newToken) => {
setToken(newToken);
});
}, []);
return <TextField label="Session Token" value={token} disabled />;
}
extend(
'Admin::Product::SubscriptionPlan::Add',
render(() => <App />),
);Anchor to PropsProps
optional = ?
| Name | Type | Description |
|---|---|---|
| getSessionToken | () => Promise<string | UndefinedType> | Get a fresh session token. |
Was this page helpful?