// Copyright 2022 Harness Inc. All rights reserved. // Use of this source code is governed by the Polyform Free Trial License // that can be found in the LICENSE.md file for this repository. package types import ( "github.com/harness/gitness/types/enum" ) // Represents server side infos stored for tokens we distribute. type Token struct { // TODO: int64 ID doesn't match DB ID int64 `db:"token_id" json:"-"` PrincipalID int64 `db:"token_principal_id" json:"principal_id"` Type enum.TokenType `db:"token_type" json:"type"` UID string `db:"token_uid" json:"uid"` ExpiresAt int64 `db:"token_expires_at" json:"expires_at"` IssuedAt int64 `db:"token_issued_at" json:"issued_at"` Grants enum.AccessGrant `db:"token_grants" json:"grants"` CreatedBy int64 `db:"token_created_by" json:"created_by"` } // TokenResponse is returned as part of token creation for PAT / SAT / User Session. type TokenResponse struct { AccessToken string `json:"access_token"` Token Token `json:"token"` }