auth

package
v0.25.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 21, 2026 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNotRefreshable = errors.New("no refresh token stored")

ErrNotRefreshable reports that the stored credentials for a host carry no refresh token, so no amount of retrying will produce a new access token.

Functions

func CredentialKey added in v0.13.0

func CredentialKey(host string) string

CredentialKey normalizes a host to its bare form (without "api." prefix) so that credentials are stored and looked up consistently regardless of whether the caller passes "acme.nullify.ai" or "api.acme.nullify.ai".

func DeleteHostCredentials

func DeleteHostCredentials(host string) error

func ForceRefreshToken added in v0.25.3

func ForceRefreshToken(ctx context.Context, host string) (string, error)

ForceRefreshToken exchanges the stored refresh token for a new access token regardless of the recorded expiry. GetValidToken only refreshes once ExpiresAt has elapsed, which leaves callers no way to recover from a token the server rejects while the CLI still believes it is valid -- revocation, a killed session, or a local clock running behind the server's.

func GetValidToken

func GetValidToken(ctx context.Context, host string) (string, error)

func Login

func Login(ctx context.Context, host string) error

func Logout

func Logout(host string) error

func OpenBrowser added in v0.13.0

func OpenBrowser(url string) error

OpenBrowser opens the given URL in the user's default browser.

func SaveConfig

func SaveConfig(cfg *Config) error

func SaveCredentials

func SaveCredentials(creds Credentials) error

func SaveHostCredentials

func SaveHostCredentials(host string, hostCreds HostCredentials) error

Types

type Config

type Config struct {
	Host string `json:"host"`
}

func LoadConfig

func LoadConfig() (*Config, error)

type Credentials

type Credentials map[string]HostCredentials

func LoadCredentials

func LoadCredentials() (Credentials, error)

type HostCredentials

type HostCredentials struct {
	AccessToken     string            `json:"access_token"`
	RefreshToken    string            `json:"refresh_token"`
	ExpiresAt       int64             `json:"expires_at"`
	QueryParameters map[string]string `json:"query_parameters,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL