AccessTokenInfo

public struct AccessTokenInfo
extension AccessTokenInfo: Equatable, Hashable

An OAuth access token, with its associated keys and metadata.

This struct represents an FxA OAuth access token, which can be used to access a resource or service on behalf of the user. For example, accessing the user’s data in Firefox Sync an access token for the scope https:///identity.mozilla.com/apps/sync along with the associated encryption key.

  • The scope of access granted by token.

    Declaration

    Swift

    public var scope: String
  • The access token itself.

    This is the value that should be included in the Authorization header when accessing an OAuth protected resource on behalf of the user.

    Declaration

    Swift

    public var token: String
  • key

    The client-side encryption key associated with this scope.

    ⚠️ Warning: the value of this field should never be revealed outside of the application. For example, it should never to sent to a server or logged in a log file.

    Declaration

    Swift

    public var key: ScopedKey?
  • The expiry time of the token, in seconds.

    This is the timestamp at which the token is set to expire, in seconds since unix epoch. Note that it is a signed integer, for compatibility with languages that do not have an unsigned integer type.

    This timestamp is for guidance only. Access tokens are not guaranteed to remain value for any particular lengthof time, and consumers should be prepared to handle auth failures even if the token has not yet expired.

    Declaration

    Swift

    public var expiresAt: Int64
  • Declaration

    Swift

    public init(
        /**
         * The scope of access granted by token.
         */scope: String, 
        /**
         * The access token itself.
         *
         * This is the value that should be included in the `Authorization` header when
         * accessing an OAuth protected resource on behalf of the user.
         */token: String, 
        /**
         * The client-side encryption key associated with this scope.
         *
         * **⚠️ Warning:** the value of this field should never be revealed outside of the
         * application. For example, it should never to sent to a server or logged in a log file.
         */key: ScopedKey?, 
        /**
         * The expiry time of the token, in seconds.
         *
         * This is the timestamp at which the token is set to expire, in seconds since
         * unix epoch. Note that it is a signed integer, for compatibility with languages
         * that do not have an unsigned integer type.
         *
         * This timestamp is for guidance only. Access tokens are not guaranteed to remain
         * value for any particular lengthof time, and consumers should be prepared to handle
         * auth failures even if the token has not yet expired.
         */expiresAt: Int64)
  • Declaration

    Swift

    public static func == (lhs: AccessTokenInfo, rhs: AccessTokenInfo) -> Bool
  • Declaration

    Swift

    public func hash(into hasher: inout Hasher)