| 
									
										
										
										
											2023-03-12 16:00:57 +01:00
										 |  |  | // GoToSocial | 
					
						
							|  |  |  | // Copyright (C) GoToSocial Authors admin@gotosocial.org | 
					
						
							|  |  |  | // SPDX-License-Identifier: AGPL-3.0-or-later | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // This program is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  | // it under the terms of the GNU Affero General Public License as published by | 
					
						
							|  |  |  | // the Free Software Foundation, either version 3 of the License, or | 
					
						
							|  |  |  | // (at your option) any later version. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // This program is distributed in the hope that it will be useful, | 
					
						
							|  |  |  | // but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  | // GNU Affero General Public License for more details. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // You should have received a copy of the GNU Affero General Public License | 
					
						
							|  |  |  | // along with this program.  If not, see <http://www.gnu.org/licenses/>. | 
					
						
							| 
									
										
										
										
											2021-03-01 15:41:43 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-08 14:25:55 +02:00
										 |  |  | package model | 
					
						
							| 
									
										
										
										
											2021-04-01 20:46:45 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-31 17:49:59 +02:00
										 |  |  | // Token represents an OAuth token used for authenticating with the GoToSocial API and performing actions. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // swagger:model oauthToken | 
					
						
							| 
									
										
										
										
											2021-04-01 20:46:45 +02:00
										 |  |  | type Token struct { | 
					
						
							| 
									
										
										
										
											2021-07-31 17:49:59 +02:00
										 |  |  | 	// Access token used for authorization. | 
					
						
							| 
									
										
										
										
											2021-04-01 20:46:45 +02:00
										 |  |  | 	AccessToken string `json:"access_token"` | 
					
						
							| 
									
										
										
										
											2021-07-31 17:49:59 +02:00
										 |  |  | 	// OAuth token type. Will always be 'Bearer'. | 
					
						
							|  |  |  | 	// example: bearer | 
					
						
							| 
									
										
										
										
											2021-04-01 20:46:45 +02:00
										 |  |  | 	TokenType string `json:"token_type"` | 
					
						
							| 
									
										
										
										
											2021-07-31 17:49:59 +02:00
										 |  |  | 	// OAuth scopes granted by this token, space-separated. | 
					
						
							|  |  |  | 	// example: read write admin | 
					
						
							| 
									
										
										
										
											2021-04-01 20:46:45 +02:00
										 |  |  | 	Scope string `json:"scope"` | 
					
						
							| 
									
										
										
										
											2021-07-31 17:49:59 +02:00
										 |  |  | 	// When the OAuth token was generated (UNIX timestamp seconds). | 
					
						
							|  |  |  | 	// example: 1627644520 | 
					
						
							| 
									
										
										
										
											2021-04-01 20:46:45 +02:00
										 |  |  | 	CreatedAt int64 `json:"created_at"` | 
					
						
							| 
									
										
										
										
											2021-03-22 22:26:54 +01:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2025-03-04 11:01:25 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | // TokenInfo represents metadata about one user-level access token. | 
					
						
							|  |  |  | // The actual access token itself will never be sent via the API. | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // swagger:model tokenInfo | 
					
						
							|  |  |  | type TokenInfo struct { | 
					
						
							|  |  |  | 	// Database ID of this token. | 
					
						
							|  |  |  | 	// example: 01JMW7QBAZYZ8T8H73PCEX12XG | 
					
						
							|  |  |  | 	ID string `json:"id"` | 
					
						
							|  |  |  | 	// When the token was created (ISO 8601 Datetime). | 
					
						
							|  |  |  | 	// example: 2021-07-30T09:20:25+00:00 | 
					
						
							|  |  |  | 	CreatedAt string `json:"created_at"` | 
					
						
							|  |  |  | 	// Approximate time (accurate to within an hour) when the token was last used (ISO 8601 Datetime). | 
					
						
							|  |  |  | 	// Omitted if token has never been used, or it is not known when it was last used (eg., it was last used before tracking "last_used" became a thing). | 
					
						
							|  |  |  | 	// example: 2021-07-30T09:20:25+00:00 | 
					
						
							|  |  |  | 	LastUsed string `json:"last_used,omitempty"` | 
					
						
							|  |  |  | 	// OAuth scopes granted by the token, space-separated. | 
					
						
							|  |  |  | 	// example: read write admin | 
					
						
							|  |  |  | 	Scope string `json:"scope"` | 
					
						
							|  |  |  | 	// Application used to create this token. | 
					
						
							|  |  |  | 	Application *Application `json:"application"` | 
					
						
							|  |  |  | } |