Skip to main content

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.

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 />),
);

optional = ?

NameTypeDescription
getSessionToken() => Promise<string | UndefinedType>Get a fresh session token.

Was this page helpful?