mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-11-04 04:02:25 -06:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package gtsmodel
 | 
						|
 | 
						|
import "time"
 | 
						|
 | 
						|
// Instance represents a federated instance, either local or remote.
 | 
						|
type Instance struct {
 | 
						|
	// ID of this instance in the database
 | 
						|
	ID string `bun:"type:CHAR(26),pk,notnull,unique"`
 | 
						|
	// Instance domain eg example.org
 | 
						|
	Domain string `bun:",pk,notnull,unique"`
 | 
						|
	// Title of this instance as it would like to be displayed.
 | 
						|
	Title string `bun:",nullzero"`
 | 
						|
	// base URI of this instance eg https://example.org
 | 
						|
	URI string `bun:",notnull,unique"`
 | 
						|
	// When was this instance created in the db?
 | 
						|
	CreatedAt time.Time `bun:",nullzero,notnull,default:current_timestamp"`
 | 
						|
	// When was this instance last updated in the db?
 | 
						|
	UpdatedAt time.Time `bun:",nullzero,notnull,default:current_timestamp"`
 | 
						|
	// When was this instance suspended, if at all?
 | 
						|
	SuspendedAt time.Time `bun:",nullzero"`
 | 
						|
	// ID of any existing domain block for this instance in the database
 | 
						|
	DomainBlockID string       `bun:"type:CHAR(26),nullzero"`
 | 
						|
	DomainBlock   *DomainBlock `bun:"rel:belongs-to"`
 | 
						|
	// Short description of this instance
 | 
						|
	ShortDescription string `bun:",nullzero"`
 | 
						|
	// Longer description of this instance
 | 
						|
	Description string `bun:",nullzero"`
 | 
						|
	// Terms and conditions of this instance
 | 
						|
	Terms string `bun:",nullzero"`
 | 
						|
	// Contact email address for this instance
 | 
						|
	ContactEmail string `bun:",nullzero"`
 | 
						|
	// Username of the contact account for this instance
 | 
						|
	ContactAccountUsername string `bun:",nullzero"`
 | 
						|
	// Contact account ID in the database for this instance
 | 
						|
	ContactAccountID string   `bun:"type:CHAR(26),nullzero"`
 | 
						|
	ContactAccount   *Account `bun:"rel:belongs-to"`
 | 
						|
	// Reputation score of this instance
 | 
						|
	Reputation int64 `bun:",notnull,default:0"`
 | 
						|
	// Version of the software used on this instance
 | 
						|
	Version string `bun:",nullzero"`
 | 
						|
}
 |