mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 11:41:32 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			79 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2014 The Gogs Authors. All rights reserved.
 | |
| // Copyright 2019 The Gitea Authors. All rights reserved.
 | |
| // SPDX-License-Identifier: MIT
 | |
| 
 | |
| package structs
 | |
| 
 | |
| import (
 | |
| 	"time"
 | |
| )
 | |
| 
 | |
| // AccessToken represents an API access token.
 | |
| // swagger:response AccessToken
 | |
| type AccessToken struct {
 | |
| 	// The unique identifier of the access token
 | |
| 	ID int64 `json:"id"`
 | |
| 	// The name of the access token
 | |
| 	Name string `json:"name"`
 | |
| 	// The SHA1 hash of the access token
 | |
| 	Token string `json:"sha1"`
 | |
| 	// The last eight characters of the token
 | |
| 	TokenLastEight string `json:"token_last_eight"`
 | |
| 	// The scopes granted to this access token
 | |
| 	Scopes []string `json:"scopes"`
 | |
| 	// The timestamp when the token was created
 | |
| 	Created time.Time `json:"created_at"`
 | |
| 	// The timestamp when the token was last used
 | |
| 	Updated time.Time `json:"last_used_at"`
 | |
| }
 | |
| 
 | |
| // AccessTokenList represents a list of API access token.
 | |
| // swagger:response AccessTokenList
 | |
| type AccessTokenList []*AccessToken
 | |
| 
 | |
| // CreateAccessTokenOption options when create access token
 | |
| // swagger:model CreateAccessTokenOption
 | |
| type CreateAccessTokenOption struct {
 | |
| 	// required: true
 | |
| 	Name string `json:"name" binding:"Required"`
 | |
| 	// example: ["all", "read:activitypub","read:issue", "write:misc", "read:notification", "read:organization", "read:package", "read:repository", "read:user"]
 | |
| 	Scopes []string `json:"scopes"`
 | |
| }
 | |
| 
 | |
| // CreateOAuth2ApplicationOptions holds options to create an oauth2 application
 | |
| type CreateOAuth2ApplicationOptions struct {
 | |
| 	// The name of the OAuth2 application
 | |
| 	Name string `json:"name" binding:"Required"`
 | |
| 	// Whether the client is confidential
 | |
| 	ConfidentialClient bool `json:"confidential_client"`
 | |
| 	// Whether to skip secondary authorization
 | |
| 	SkipSecondaryAuthorization bool `json:"skip_secondary_authorization"`
 | |
| 	// The list of allowed redirect URIs
 | |
| 	RedirectURIs []string `json:"redirect_uris" binding:"Required"`
 | |
| }
 | |
| 
 | |
| // OAuth2Application represents an OAuth2 application.
 | |
| // swagger:response OAuth2Application
 | |
| type OAuth2Application struct {
 | |
| 	// The unique identifier of the OAuth2 application
 | |
| 	ID int64 `json:"id"`
 | |
| 	// The name of the OAuth2 application
 | |
| 	Name string `json:"name"`
 | |
| 	// The client ID of the OAuth2 application
 | |
| 	ClientID string `json:"client_id"`
 | |
| 	// The client secret of the OAuth2 application
 | |
| 	ClientSecret string `json:"client_secret"`
 | |
| 	// Whether the client is confidential
 | |
| 	ConfidentialClient bool `json:"confidential_client"`
 | |
| 	// Whether to skip secondary authorization
 | |
| 	SkipSecondaryAuthorization bool `json:"skip_secondary_authorization"`
 | |
| 	// The list of allowed redirect URIs
 | |
| 	RedirectURIs []string `json:"redirect_uris"`
 | |
| 	// The timestamp when the application was created
 | |
| 	Created time.Time `json:"created"`
 | |
| }
 | |
| 
 | |
| // OAuth2ApplicationList represents a list of OAuth2 applications.
 | |
| // swagger:response OAuth2ApplicationList
 | |
| type OAuth2ApplicationList []*OAuth2Application
 |