MCPcopy Create free account
hub / github.com/algolia/cli / storedTokenFromResponse

Function storedTokenFromResponse

pkg/auth/token_store.go:44–64  ·  view source on GitHub ↗

storedTokenFromResponse builds a StoredToken from an OAuth token response, including the user identity when the response carries a user object.

(resp *dashboard.OAuthTokenResponse)

Source from the content-addressed store, hash-verified

42// storedTokenFromResponse builds a StoredToken from an OAuth token response,
43// including the user identity when the response carries a user object.
44func storedTokenFromResponse(resp *dashboard.OAuthTokenResponse) StoredToken {
45 expiresAt := resp.CreatedAt + int64(resp.ExpiresIn)
46 if expiresAt == 0 {
47 expiresAt = time.Now().Unix() + int64(resp.ExpiresIn)
48 }
49
50 stored := StoredToken{
51 AccessToken: resp.AccessToken,
52 RefreshToken: resp.RefreshToken,
53 ExpiresAt: expiresAt,
54 Scope: resp.Scope,
55 }
56
57 if resp.User != nil && resp.User.ID != 0 {
58 stored.UserID = strconv.Itoa(resp.User.ID)
59 stored.Email = resp.User.Email
60 stored.Name = resp.User.Name
61 }
62
63 return stored
64}
65
66// persistToken marshals and writes a StoredToken to the OS keychain.
67func persistToken(stored StoredToken) error {

Callers 2

SaveTokenFunction · 0.85
GetValidTokenFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected