use Generate User Tokenhook
hook
The hook provides a function to generate a temporary token for the current user. You can verify this token and exchange it for a permanent user identifier using the
mutation. See Verifying requests for more information.
Anchor to useGenerateUserTokenuse Generate User Token()
use Generate User Token()
- generateUserToken() => Promise<{ data: GeneratedTokenData; userErrors?: UserTokenGenerateUserErrors[]; }>
Generates a temporary token for the user.
UseGenerateUserTokenReturns
UseGenerateUserTokenReturns
UseGenerateUserTokenGeneratedType
UseGenerateUserTokenReturns
export function useGenerateUserToken(): UseGenerateUserTokenReturns {
const {generateUserToken} = useShopActions()
return {
generateUserToken: useHandleAction(generateUserToken),
}
}
UseGenerateUserTokenReturns
- generateUserToken
Generates a temporary token for the user.
() => Promise<{ data: GeneratedTokenData; userErrors?: UserTokenGenerateUserErrors[]; }>
interface UseGenerateUserTokenReturns {
/**
* Generates a temporary token for the user.
*/
generateUserToken: () => Promise<{
data: GeneratedTokenData
userErrors?: UserTokenGenerateUserErrors[]
}>
}
GeneratedTokenData
- expiresAt
The expiration time of the token.
ISO8601DateTime | null
- token
A temporary token for the user.
string | null
- userState
Whether the user is verified or a guest.
UserState | null
export interface GeneratedTokenData {
/**
* A temporary token for the user.
*/
token?: string | null
/**
* The expiration time of the token.
*/
expiresAt?: ISO8601DateTime | null
/**
* Whether the user is verified or a guest.
*/
userState?: UserState | null
}
ISO8601DateTime
string
UserState
- GUEST
GUEST
- VERIFIED
VERIFIED
export enum UserState {
GUEST = 'GUEST',
VERIFIED = 'VERIFIED',
}
UserTokenGenerateUserErrors
- code
UserTokenGenerateUserErrorCode
- field
string[] | null
- message
string
export interface UserTokenGenerateUserErrors {
code: UserTokenGenerateUserErrorCode
message: string
field?: string[] | null
}
UserTokenGenerateUserErrorCode
- MINI_NOT_FOUND
MINI_NOT_FOUND
- USER_NOT_FOUND
USER_NOT_FOUND
export enum UserTokenGenerateUserErrorCode {
MINI_NOT_FOUND = 'MINI_NOT_FOUND',
USER_NOT_FOUND = 'USER_NOT_FOUND',
}
Was this section helpful?
Example code
import {useCallback} from 'react'
import {useGenerateUserToken, Button} from '@shopify/shop-minis-react'
export default function MyComponent() {
const {generateUserToken} = useGenerateUserToken()
const performRequest = useCallback(async () => {
const {data} = await generateUserToken()
const {token, expiresAt, userState} = data
console.log({token, expiresAt, userState})
}, [generateUserToken])
return <Button onPress={performRequest} text="Perform request" />
}
examples
Example code
import {useCallback} from 'react' import {useGenerateUserToken, Button} from '@shopify/shop-minis-react' export default function MyComponent() { const {generateUserToken} = useGenerateUserToken() const performRequest = useCallback(async () => { const {data} = await generateUserToken() const {token, expiresAt, userState} = data console.log({token, expiresAt, userState}) }, [generateUserToken]) return <Button onPress={performRequest} text="Perform request" /> }