Auth payload
When your app is embedded in Atlan (sidebar or asset profile tab), the product sends an ATLAN_AUTH_CONTEXT message to the iframe with a JWT token, the signed-in user, and the current page context. Your app uses this payload to call Atlan APIs and to know which asset is in view when it's rendered as an asset profile tab.
This reference documents the payload structure, field names, and types. Use it to look up token, user, and page fields and to interpret route parameters such as the asset GUID in page.params.id. For how to receive the message (SDK or manual postMessage), see Embed your app. For message types and handshake flow, see Send and receive messages.
Payload fields
tokenstringRequired
tokenstringJWT access token for Atlan API calls.
expiresAtnumberRequired
expiresAtnumberToken expiration time (Unix seconds).
1738511234userobjectRequired
userobjectLogged-in user identity.
pageobjectRequired
pageobjectCurrent route context. When your app is an asset profile tab, page.params.id is the asset GUID.
timestampnumberRequired
timestampnumberMessage timestamp (Unix milliseconds).
1738507634789user
user.idstringRequired
user.idstringUser identifier.
user-guiduser.usernamestringRequired
user.usernamestringUsername.
john.doeuser.namestringRequired
user.namestringDisplay name.
John Doepage
page.routestringRequired
page.routestringCurrent route path.
/assets/abc-123page.paramsRecord<string, string | string[]>Required
page.paramsRecord<string, string | string[]>Route parameters. When your app is an asset profile tab, params.id is the asset GUID.
{ "id": "abc-123" }page.queryRecord<string, string | string[]>Required
page.queryRecord<string, string | string[]>Query parameters.
{}Example payload
{
type: 'ATLAN_AUTH_CONTEXT',
payload: {
token: 'eyJhbGciOi...',
expiresAt: 1738511234,
user: {
id: 'user-guid',
username: 'john.doe',
email: '[email protected]',
name: 'John Doe'
},
page: {
route: '/assets/abc-123',
params: { id: 'abc-123' },
query: {}
},
timestamp: 1738507634789
}
}
Asset profile tab
When your app renders in the asset-profile-tab slot, page.params.id contains the asset GUID. Use it to fetch the asset:
const assetGuid = context.page?.params?.id
const asset = await atlan.api.get(`/api/meta/entity/guid/${assetGuid}`)
See also
- Embed your app: Set up embedding and receive this payload
- Send and receive messages: Message types and when ATLAN_AUTH_CONTEXT is sent