endpoint.go 1.2 KB

12345678910111213141516171819202122
  1. package models
  2. import (
  3. "time"
  4. "github.com/langgenius/dify-plugin-daemon/internal/types/entities/plugin_entities"
  5. )
  6. // HookID is a pointer to plugin id and tenant id, using it to identify the endpoint plugin
  7. type Endpoint struct {
  8. Model
  9. Name string `json:"name" gorm:"size:127;column:name;default:'default'"`
  10. HookID string `json:"hook_id" gorm:"unique;size:127;column:hook_id"`
  11. TenantID string `json:"tenant_id" gorm:"index;size:64;column:tenant_id"`
  12. UserID string `json:"user_id" gorm:"index;size:64;column:user_id"`
  13. PluginID string `json:"plugin_id" gorm:"index;size:64;column:plugin_id"`
  14. ExpiredAt time.Time `json:"expired_at" gorm:"column:expired_at"`
  15. Enabled bool `json:"enabled" gorm:"column:enabled"`
  16. Settings map[string]any `json:"settings" gorm:"column:settings;serializer:json"`
  17. Declaration *plugin_entities.EndpointProviderDeclaration `json:"declaration" gorm:"-"` // not stored in db
  18. }