Documentation
¶
Index ¶
- Constants
- Variables
- func CountActiveUsersByOrganizationIDs(orgIDs []string) (map[string]int64, error)
- func CountCanvasEvents(canvasID uuid.UUID, nodeID string) (int64, error)
- func CountCanvasesByOrganizationIDs(orgIDs []string) (map[string]int64, error)
- func CountNodeExecutions(workflowID uuid.UUID, nodeID string, states []string, results []string) (int64, error)
- func CountNodeQueueItems(workflowID uuid.UUID, nodeID string) (int64, error)
- func CountRootCanvasEvents(canvasID uuid.UUID) (int64, error)
- func CountRunningExecutionsForNode(workflowID uuid.UUID, nodeID string) (int64, error)
- func CountRunningExecutionsForNodeInTransaction(tx *gorm.DB, workflowID uuid.UUID, nodeID string) (int64, error)
- func CreateNodeExecutionKVInTransaction(tx *gorm.DB, workflowID uuid.UUID, nodeID string, executionID uuid.UUID, ...) error
- func DeleteCanvasNode(tx *gorm.DB, node CanvasNode) error
- func DeleteGroupMetadata(groupName, domainType, domainID string) error
- func DeleteGroupMetadataInTransaction(tx *gorm.DB, groupName, domainType, domainID string) error
- func DeleteIntegrationSubscriptionsForNodeInTransaction(tx *gorm.DB, workflowID uuid.UUID, nodeID string) error
- func DeleteMetadataForOrganization(tx *gorm.DB, domainType, domainID string) error
- func DeleteRoleMetadata(roleName, domainType, domainID string) error
- func DeleteRoleMetadataInTransaction(tx *gorm.DB, roleName, domainType, domainID string) error
- func FindRoleMetadataByNames(roleNames []string, domainType, domainID string) (map[string]*RoleMetadata, error)
- func FormatDomain(domainType, domainID string) string
- func GenerateNodeID(blockName string, nodeName string) string
- func GenerateUniqueNodeID(node Node, reservedIDs map[string]bool) string
- func GetActiveOrganizationIDs() ([]string, error)
- func GetInstallationID() (string, error)
- func GetInstallationIDInTransaction(tx *gorm.DB) (string, error)
- func HardDeleteOrganization(id string) error
- func NodeTypeName(node Node) string
- func PrefixGroup(groupName string) string
- func PrefixRole(role string) string
- func PrefixUser(userID string) string
- func ResolveExecutionErrors(workflowID uuid.UUID, executionIDs []uuid.UUID) error
- func ResolveExecutionErrorsInTransaction(tx *gorm.DB, workflowID uuid.UUID, executionIDs []uuid.UUID) error
- func ResumeStateForNodeInTransaction(tx *gorm.DB, workflowID uuid.UUID, nodeID string) (string, error)
- func SaveInvitation(invitation *OrganizationInvitation) error
- func SaveInviteLink(inviteLink *OrganizationInviteLink) error
- func SoftDeleteOrganization(id string) error
- func SoftDeleteOrganizationInTransaction(tx *gorm.DB, id string) error
- func UpsertEmailSettings(settings *EmailSettings) error
- func UpsertEmailSettingsInTransaction(tx *gorm.DB, settings *EmailSettings) error
- func UpsertGroupMetadata(groupName, domainType, domainID, displayName, description string) error
- func UpsertGroupMetadataInTransaction(tx *gorm.DB, groupName, domainType, domainID, displayName, description string) error
- func UpsertRoleMetadata(roleName, domainType, domainID, displayName, description string) error
- func UpsertRoleMetadataInTransaction(tx *gorm.DB, roleName, domainType, domainID, displayName, description string) error
- func ValidateDomainType(domainType string) error
- type Account
- func CreateAccount(name, email string) (*Account, error)
- func CreateAccountInTransaction(tx *gorm.DB, name, email string) (*Account, error)
- func FindAccountByEmail(email string) (*Account, error)
- func FindAccountByID(id string) (*Account, error)
- func FindAccountByProvider(provider, providerID string) (*Account, error)
- func (a *Account) FindAccountProviderByID(provider, providerID string) (*AccountProvider, error)
- func (a *Account) FindPendingInvitations() ([]OrganizationInvitation, error)
- func (a *Account) GetAccountProvider(provider string) (*AccountProvider, error)
- func (a *Account) GetAccountProviders() ([]AccountProvider, error)
- func (a *Account) UpdateEmail(newEmail string) error
- func (a *Account) UpdateEmailForProvider(newEmail, provider, providerID string) error
- type AccountPasswordAuth
- func CreateAccountPasswordAuth(accountID uuid.UUID, passwordHash string) (*AccountPasswordAuth, error)
- func CreateAccountPasswordAuthInTransaction(tx *gorm.DB, accountID uuid.UUID, passwordHash string) (*AccountPasswordAuth, error)
- func FindAccountPasswordAuthByAccountID(accountID uuid.UUID) (*AccountPasswordAuth, error)
- func FindAccountPasswordAuthByAccountIDInTransaction(tx *gorm.DB, accountID uuid.UUID) (*AccountPasswordAuth, error)
- type AccountProvider
- type Blueprint
- type BlueprintOutputChannel
- type BlueprintRef
- type BrowserAction
- type Canvas
- func FindCanvas(orgID, id uuid.UUID) (*Canvas, error)
- func FindCanvasByName(name string, organizationID uuid.UUID) (*Canvas, error)
- func FindCanvasInTransaction(tx *gorm.DB, orgID, id uuid.UUID) (*Canvas, error)
- func FindCanvasTemplate(id uuid.UUID) (*Canvas, error)
- func FindCanvasTemplateByName(name string) (*Canvas, error)
- func FindCanvasTemplateByNameInTransaction(tx *gorm.DB, name string) (*Canvas, error)
- func FindCanvasTemplateInTransaction(tx *gorm.DB, id uuid.UUID) (*Canvas, error)
- func FindCanvasWithoutOrgScope(id uuid.UUID) (*Canvas, error)
- func FindCanvasWithoutOrgScopeInTransaction(tx *gorm.DB, id uuid.UUID) (*Canvas, error)
- func FindUnscopedCanvas(id uuid.UUID) (*Canvas, error)
- func FindUnscopedCanvasInTransaction(tx *gorm.DB, id uuid.UUID) (*Canvas, error)
- func ListCanvases(orgID string, includeTemplates bool) ([]Canvas, error)
- func ListDeletedCanvases() ([]Canvas, error)
- func LockCanvas(tx *gorm.DB, id uuid.UUID) (*Canvas, error)
- type CanvasEvent
- func FindCanvasEvent(id uuid.UUID) (*CanvasEvent, error)
- func FindCanvasEventForCanvas(canvasID uuid.UUID, id uuid.UUID) (*CanvasEvent, error)
- func FindCanvasEventInTransaction(tx *gorm.DB, id uuid.UUID) (*CanvasEvent, error)
- func FindCanvasEvents(ids []string) ([]CanvasEvent, error)
- func FindCanvasEventsForExecutions(executionIDs []string) ([]CanvasEvent, error)
- func FindLastEventPerNode(canvasID uuid.UUID) ([]CanvasEvent, error)
- func ListCanvasEvents(canvasID uuid.UUID, nodeID string, limit int, before *time.Time) ([]CanvasEvent, error)
- func ListCanvasEventsForExecutionsInTransaction(tx *gorm.DB, executionIDs []uuid.UUID) ([]CanvasEvent, error)
- func ListPendingCanvasEvents() ([]CanvasEvent, error)
- func ListRootCanvasEvents(canvasID uuid.UUID, limit int, before *time.Time) ([]CanvasEvent, error)
- func LockCanvasEvent(tx *gorm.DB, id uuid.UUID) (*CanvasEvent, error)
- type CanvasNode
- func FindCanvasNode(tx *gorm.DB, canvasID uuid.UUID, nodeID string) (*CanvasNode, error)
- func FindCanvasNodes(canvasID uuid.UUID) ([]CanvasNode, error)
- func FindCanvasNodesByIDs(tx *gorm.DB, canvasID uuid.UUID, nodeIDs []string) ([]CanvasNode, error)
- func FindCanvasNodesInTransaction(tx *gorm.DB, workflowID uuid.UUID) ([]CanvasNode, error)
- func FindCanvasNodesUnscoped(workflowID uuid.UUID) ([]CanvasNode, error)
- func FindCanvasNodesUnscopedInTransaction(tx *gorm.DB, workflowID uuid.UUID) ([]CanvasNode, error)
- func FindWebhookNodes(webhookID uuid.UUID) ([]CanvasNode, error)
- func FindWebhookNodesInTransaction(tx *gorm.DB, webhookID uuid.UUID) ([]CanvasNode, error)
- func ListCanvasNodesReady() ([]CanvasNode, error)
- func ListReadyTriggers() ([]CanvasNode, error)
- func LockCanvasNode(tx *gorm.DB, workflowID uuid.UUID, nodeId string) (*CanvasNode, error)
- func LockCanvasNodeForUpdate(tx *gorm.DB, workflowID uuid.UUID, nodeId string) (*CanvasNode, error)
- func (c *CanvasNode) CreateRequest(tx *gorm.DB, reqType string, spec NodeExecutionRequestSpec, runAt *time.Time) error
- func (c *CanvasNode) FirstQueueItem(tx *gorm.DB) (*CanvasNodeQueueItem, error)
- func (c *CanvasNode) TableName() string
- func (c *CanvasNode) UpdateState(tx *gorm.DB, state string) error
- type CanvasNodeExecution
- func CreatePendingChildExecution(tx *gorm.DB, parent *CanvasNodeExecution, childNodeID string, ...) (*CanvasNodeExecution, error)
- func FindChildExecutions(parentExecutionID uuid.UUID, states []string) ([]CanvasNodeExecution, error)
- func FindChildExecutionsForMultiple(parentExecutionIDs []string) ([]CanvasNodeExecution, error)
- func FindChildExecutionsInTransaction(tx *gorm.DB, parentExecutionID uuid.UUID, states []string) ([]CanvasNodeExecution, error)
- func FindLastExecutionPerNode(workflowID uuid.UUID) ([]CanvasNodeExecution, error)
- func FindNodeExecution(workflowID, id uuid.UUID) (*CanvasNodeExecution, error)
- func FindNodeExecutionInTransaction(tx *gorm.DB, workflowID, id uuid.UUID) (*CanvasNodeExecution, error)
- func FindNodeExecutionWithNodeID(workflowID, id uuid.UUID, nodeID string) (*CanvasNodeExecution, error)
- func FindNodeExecutionWithNodeIDInTransaction(tx *gorm.DB, workflowID, id uuid.UUID, nodeID string) (*CanvasNodeExecution, error)
- func FindNodeExecutionsByIDs(workflowID uuid.UUID, executionIDs []uuid.UUID) ([]CanvasNodeExecution, error)
- func FindNodeExecutionsByIDsInTransaction(tx *gorm.DB, workflowID uuid.UUID, executionIDs []uuid.UUID) ([]CanvasNodeExecution, error)
- func FirstNodeExecutionByKVInTransaction(tx *gorm.DB, workflowID uuid.UUID, nodeID, key, value string) (*CanvasNodeExecution, error)
- func ListNodeExecutions(workflowID uuid.UUID, nodeID string, states []string, results []string, ...) ([]CanvasNodeExecution, error)
- func ListNodeExecutionsForRootEvents(rootEventIDs []uuid.UUID) ([]CanvasNodeExecution, error)
- func ListPendingNodeExecutions() ([]CanvasNodeExecution, error)
- func LockCanvasNodeExecution(tx *gorm.DB, id uuid.UUID) (*CanvasNodeExecution, error)
- func (e *CanvasNodeExecution) Cancel(cancelledBy *uuid.UUID) error
- func (e *CanvasNodeExecution) CancelInTransaction(tx *gorm.DB, cancelledBy *uuid.UUID) error
- func (e *CanvasNodeExecution) CreateRequest(tx *gorm.DB, reqType string, spec NodeExecutionRequestSpec, runAt *time.Time) error
- func (e *CanvasNodeExecution) Fail(reason, message string) error
- func (e *CanvasNodeExecution) FailInTransaction(tx *gorm.DB, reason, message string) error
- func (e *CanvasNodeExecution) GetInput(tx *gorm.DB) (any, error)
- func (e *CanvasNodeExecution) GetOutputs() ([]CanvasEvent, error)
- func (e *CanvasNodeExecution) GetOutputsInTransaction(tx *gorm.DB) ([]CanvasEvent, error)
- func (e *CanvasNodeExecution) GetParentExecutionID() string
- func (e *CanvasNodeExecution) GetPreviousExecutionID() string
- func (e *CanvasNodeExecution) Pass(outputs map[string][]any) ([]CanvasEvent, error)
- func (e *CanvasNodeExecution) PassInTransaction(tx *gorm.DB, channelOutputs map[string][]any) ([]CanvasEvent, error)
- func (e *CanvasNodeExecution) Start() error
- func (e *CanvasNodeExecution) StartInTransaction(tx *gorm.DB) error
- func (e *CanvasNodeExecution) TableName() string
- type CanvasNodeExecutionKV
- type CanvasNodeQueueItem
- func FindNextQueueItemPerNode(workflowID uuid.UUID) ([]CanvasNodeQueueItem, error)
- func FindNodeQueueItem(workflowID uuid.UUID, queueItemID uuid.UUID) (*CanvasNodeQueueItem, error)
- func ListNodeQueueItems(workflowID uuid.UUID, nodeID string, limit int, beforeTime *time.Time) ([]CanvasNodeQueueItem, error)
- type CanvasNodeRequest
- type ComponentRef
- type Edge
- type EmailSettings
- type GroupMetadata
- type InstallationMetadata
- type Integration
- func CreateIntegration(id, orgID uuid.UUID, appName string, installationName string, ...) (*Integration, error)
- func FindIntegration(orgID, integrationID uuid.UUID) (*Integration, error)
- func FindIntegrationByName(orgID uuid.UUID, integrationName string) (*Integration, error)
- func FindMaybeDeletedIntegrationInTransaction(tx *gorm.DB, integrationID uuid.UUID) (*Integration, error)
- func FindUnscopedIntegration(integrationID uuid.UUID) (*Integration, error)
- func FindUnscopedIntegrationInTransaction(tx *gorm.DB, integrationID uuid.UUID) (*Integration, error)
- func ListDeletedIntegrations() ([]Integration, error)
- func ListIntegrations(orgID uuid.UUID) ([]Integration, error)
- func LockIntegration(tx *gorm.DB, ID uuid.UUID) (*Integration, error)
- func (a *Integration) CreateActionRequest(tx *gorm.DB, actionName string, parameters any, runAt *time.Time) error
- func (a *Integration) CreateSyncRequest(tx *gorm.DB, runAt *time.Time) error
- func (a *Integration) GetRequest(ID string) (*IntegrationRequest, error)
- func (a *Integration) ListRequests(reqType string) ([]IntegrationRequest, error)
- func (a *Integration) SoftDelete() error
- func (a *Integration) SoftDeleteInTransaction(tx *gorm.DB) error
- func (a *Integration) TableName() string
- type IntegrationInvokeAction
- type IntegrationRequest
- type IntegrationRequestSpec
- type IntegrationSecret
- type IntegrationSubscription
- type InvokeAction
- type Node
- type NodeExecutionRequestSpec
- type NodeRef
- type NodeSubscription
- type Organization
- func CreateOrganization(name, description string) (*Organization, error)
- func CreateOrganizationInTransaction(tx *gorm.DB, name, description string) (*Organization, error)
- func FindOrganizationByID(id string) (*Organization, error)
- func FindOrganizationByName(name string) (*Organization, error)
- func FindOrganizationsForAccount(email string) ([]Organization, error)
- func ListOrganizationsByIDs(ids []string) ([]Organization, error)
- type OrganizationInvitation
- func CreateInvitation(organizationID, invitedBy uuid.UUID, email, state string) (*OrganizationInvitation, error)
- func CreateInvitationInTransaction(tx *gorm.DB, organizationID, invitedBy uuid.UUID, email, state string) (*OrganizationInvitation, error)
- func FindInvitationByID(invitationID string) (*OrganizationInvitation, error)
- func FindInvitationByIDWithState(invitationID string, state string) (*OrganizationInvitation, error)
- func FindPendingInvitation(email, organizationID string) (*OrganizationInvitation, error)
- func FindPendingInvitationInTransaction(tx *gorm.DB, email, organizationID string) (*OrganizationInvitation, error)
- func ListInvitationsInState(organizationID string, state string) ([]OrganizationInvitation, error)
- type OrganizationInviteLink
- func CreateInviteLink(organizationID uuid.UUID) (*OrganizationInviteLink, error)
- func CreateInviteLinkInTransaction(tx *gorm.DB, organizationID uuid.UUID) (*OrganizationInviteLink, error)
- func FindInviteLinkByOrganizationID(organizationID string) (*OrganizationInviteLink, error)
- func FindInviteLinkByOrganizationIDInTransaction(tx *gorm.DB, organizationID string) (*OrganizationInviteLink, error)
- func FindInviteLinkByToken(token string) (*OrganizationInviteLink, error)
- func FindInviteLinkByTokenInTransaction(tx *gorm.DB, token string) (*OrganizationInviteLink, error)
- type Position
- type RoleMetadata
- type Secret
- func CreateSecret(name, provider, requesterID, domainType string, domainID uuid.UUID, ...) (*Secret, error)
- func FindSecretByID(domainType string, domainID uuid.UUID, id string) (*Secret, error)
- func FindSecretByName(domainType string, domainID uuid.UUID, name string) (*Secret, error)
- func FindSecretByNameInTransaction(tx *gorm.DB, domainType string, domainID uuid.UUID, name string) (*Secret, error)
- func ListSecrets(domainType string, domainID uuid.UUID) ([]Secret, error)
- type SecretData
- type TriggerRef
- type User
- func CreateUser(orgID, accountID uuid.UUID, email, name string) (*User, error)
- func CreateUserInTransaction(tx *gorm.DB, orgID, accountID uuid.UUID, email, name string) (*User, error)
- func FindActiveUserByEmail(orgID, email string) (*User, error)
- func FindActiveUserByID(orgID, id string) (*User, error)
- func FindActiveUserByIDInTransaction(tx *gorm.DB, orgID, id string) (*User, error)
- func FindActiveUserByTokenHash(tokenHash string) (*User, error)
- func FindAnyUserByEmail(email string) (*User, error)
- func FindMaybeDeletedUserByEmail(orgID, email string) (*User, error)
- func FindMaybeDeletedUserByEmailInTransaction(tx *gorm.DB, orgID, email string) (*User, error)
- func FindMaybeDeletedUserByID(orgID, id string) (*User, error)
- func FindMaybeDeletedUsersByIDs(ids []uuid.UUID) ([]User, error)
- func FindUnscopedUserByID(id string) (*User, error)
- func ListActiveUsersByID(orgID string, ids []string) ([]User, error)
- func ListActiveUsersByIDInTransaction(tx *gorm.DB, orgID string, ids []string) ([]User, error)
- type Webhook
- func FindWebhook(id uuid.UUID) (*Webhook, error)
- func FindWebhookInTransaction(tx *gorm.DB, id uuid.UUID) (*Webhook, error)
- func ListDeletedWebhooks() ([]Webhook, error)
- func ListIntegrationWebhooks(tx *gorm.DB, integrationID uuid.UUID) ([]Webhook, error)
- func ListPendingWebhooks() ([]Webhook, error)
- func ListUnscopedIntegrationWebhooks(tx *gorm.DB, integrationID uuid.UUID) ([]Webhook, error)
- func LockWebhook(tx *gorm.DB, ID uuid.UUID) (*Webhook, error)
- type WebhookResource
- type WidgetRef
- type WorkflowNodeReference
Constants ¶
const ( CanvasEventStatePending = "pending" CanvasEventStateRouted = "routed" )
const ( CanvasNodeStateReady = "ready" CanvasNodeStateProcessing = "processing" CanvasNodeStateError = "error" CanvasNodeStatePaused = "paused" NodeTypeTrigger = "trigger" NodeTypeComponent = "component" NodeTypeBlueprint = "blueprint" NodeTypeWidget = "widget" )
const ( CanvasNodeExecutionStatePending = "pending" CanvasNodeExecutionStateStarted = "started" CanvasNodeExecutionStateFinished = "finished" CanvasNodeExecutionResultPassed = "passed" CanvasNodeExecutionResultFailed = "failed" CanvasNodeExecutionResultCancelled = "cancelled" CanvasNodeExecutionResultReasonOk = "ok" CanvasNodeExecutionResultReasonError = "error" CanvasNodeExecutionResultReasonErrorResolved = "error_resolved" )
const ( NodeRequestTypeInvokeAction = "invoke-action" NodeExecutionRequestStatePending = "pending" NodeExecutionRequestStateCompleted = "completed" )
const ( ProviderGitHub = "github" ProviderGoogle = "google" DomainTypeOrganization = "org" DisplayNameOwner = "Owner" DisplayNameAdmin = "Admin" DisplayNameViewer = "Viewer" RoleOrgOwner = "org_owner" RoleOrgAdmin = "org_admin" RoleOrgViewer = "org_viewer" // Role descriptions DescOrgOwner = "Complete control over the organization including settings and deletion" DescOrgAdmin = "Full management access to organization resources including canvases and users" DescOrgViewer = "Read-only access to organization resources" // Metadata descriptions MetaDescOrgOwner = "Full control over organization settings, billing, and member management." MetaDescOrgAdmin = "Can manage canvases, users, groups, and roles within the organization." MetaDescOrgViewer = "Read-only access to organization resources and information." )
const ( IntegrationStatePending = "pending" IntegrationStateReady = "ready" IntegrationStateError = "error" )
const ( IntegrationRequestTypeSync = "sync" IntegrationRequestTypeInvokeAction = "invoke-action" IntegrationRequestStatePending = "pending" IntegrationRequestStateCompleted = "completed" )
const ( InvitationStatePending = "pending" InvitationStateAccepted = "accepted" )
const ( WebhookStatePending = "pending" WebhookStateReady = "ready" WebhookStateFailed = "failed" )
const EmailProviderSMTP = "smtp"
Variables ¶
var ( ErrNameAlreadyUsed = fmt.Errorf("name already used") ErrInvitationAlreadyExists = fmt.Errorf("invitation already exists") )
var TemplateOrganizationID = uuid.Nil
Functions ¶
func CountActiveUsersByOrganizationIDs ¶ added in v0.0.18
func CountCanvasEvents ¶ added in v0.6.0
func CountCanvasesByOrganizationIDs ¶ added in v0.6.0
func CountNodeExecutions ¶
func CountNodeQueueItems ¶
func CountRootCanvasEvents ¶ added in v0.6.0
func CountRunningExecutionsForNode ¶ added in v0.6.0
func CountRunningExecutionsForNodeInTransaction ¶ added in v0.6.0
func CreateNodeExecutionKVInTransaction ¶ added in v0.6.0
func DeleteCanvasNode ¶ added in v0.6.0
func DeleteCanvasNode(tx *gorm.DB, node CanvasNode) error
func DeleteGroupMetadata ¶
func DeleteIntegrationSubscriptionsForNodeInTransaction ¶ added in v0.6.0
func DeleteRoleMetadata ¶
func FindRoleMetadataByNames ¶
func FindRoleMetadataByNames(roleNames []string, domainType, domainID string) (map[string]*RoleMetadata, error)
func FormatDomain ¶
func GenerateNodeID ¶ added in v0.0.43
func GenerateUniqueNodeID ¶ added in v0.0.43
func GetInstallationID ¶ added in v0.1.0
func GetInstallationIDInTransaction ¶ added in v0.1.0
func HardDeleteOrganization ¶
func NodeTypeName ¶ added in v0.0.43
func PrefixGroup ¶
func PrefixRole ¶
func PrefixUser ¶
func ResolveExecutionErrors ¶ added in v0.1.5
func ResolveExecutionErrorsInTransaction ¶ added in v0.1.5
func ResumeStateForNodeInTransaction ¶ added in v0.6.0
func SaveInvitation ¶
func SaveInvitation(invitation *OrganizationInvitation) error
func SaveInviteLink ¶ added in v0.0.43
func SaveInviteLink(inviteLink *OrganizationInviteLink) error
func SoftDeleteOrganization ¶
func UpsertEmailSettings ¶ added in v0.0.43
func UpsertEmailSettings(settings *EmailSettings) error
func UpsertEmailSettingsInTransaction ¶ added in v0.0.43
func UpsertEmailSettingsInTransaction(tx *gorm.DB, settings *EmailSettings) error
func UpsertGroupMetadata ¶
func UpsertRoleMetadata ¶
func ValidateDomainType ¶
Types ¶
type Account ¶
type Account struct {
ID uuid.UUID `gorm:"primary_key;default:uuid_generate_v4()"`
Email string
Name string
}
func CreateAccount ¶
func FindAccountByEmail ¶
func FindAccountByID ¶
func FindAccountByProvider ¶
func (*Account) FindAccountProviderByID ¶
func (a *Account) FindAccountProviderByID(provider, providerID string) (*AccountProvider, error)
func (*Account) FindPendingInvitations ¶
func (a *Account) FindPendingInvitations() ([]OrganizationInvitation, error)
func (*Account) GetAccountProvider ¶
func (a *Account) GetAccountProvider(provider string) (*AccountProvider, error)
func (*Account) GetAccountProviders ¶
func (a *Account) GetAccountProviders() ([]AccountProvider, error)
func (*Account) UpdateEmail ¶
func (*Account) UpdateEmailForProvider ¶
type AccountPasswordAuth ¶ added in v0.0.18
type AccountPasswordAuth struct {
ID uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()"`
AccountID uuid.UUID
PasswordHash string
CreatedAt time.Time
UpdatedAt time.Time
}
func CreateAccountPasswordAuth ¶ added in v0.0.18
func CreateAccountPasswordAuth(accountID uuid.UUID, passwordHash string) (*AccountPasswordAuth, error)
func CreateAccountPasswordAuthInTransaction ¶ added in v0.0.18
func FindAccountPasswordAuthByAccountID ¶ added in v0.0.18
func FindAccountPasswordAuthByAccountID(accountID uuid.UUID) (*AccountPasswordAuth, error)
func FindAccountPasswordAuthByAccountIDInTransaction ¶ added in v0.0.18
func (AccountPasswordAuth) TableName ¶ added in v0.0.18
func (AccountPasswordAuth) TableName() string
func (*AccountPasswordAuth) UpdatePasswordHash ¶ added in v0.0.18
func (a *AccountPasswordAuth) UpdatePasswordHash(passwordHash string) error
func (*AccountPasswordAuth) UpdatePasswordHashInTransaction ¶ added in v0.0.18
func (a *AccountPasswordAuth) UpdatePasswordHashInTransaction(tx *gorm.DB, passwordHash string) error
type AccountProvider ¶
type AccountProvider struct {
ID uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()"`
AccountID uuid.UUID
Provider string
ProviderID string
Username string
Email string
Name string
AvatarURL string
AccessToken string
RefreshToken string
TokenExpiresAt *time.Time
CreatedAt time.Time
UpdatedAt time.Time
}
type Blueprint ¶
type Blueprint struct {
ID uuid.UUID
OrganizationID uuid.UUID
Name string
Description string
Icon string
Color string
CreatedBy *uuid.UUID
CreatedAt *time.Time
UpdatedAt *time.Time
Nodes datatypes.JSONSlice[Node]
Edges datatypes.JSONSlice[Edge]
Configuration datatypes.JSONSlice[configuration.Field]
OutputChannels datatypes.JSONSlice[BlueprintOutputChannel]
}
func FindBlueprint ¶
func FindBlueprintByName ¶
func FindUnscopedBlueprint ¶
func (*Blueprint) FindRootNode ¶
type BlueprintOutputChannel ¶
type BlueprintRef ¶
type BlueprintRef struct {
ID string `json:"id"`
}
type BrowserAction ¶
type Canvas ¶ added in v0.6.0
type Canvas struct {
ID uuid.UUID
OrganizationID uuid.UUID
IsTemplate bool
Name string
Description string
CreatedBy *uuid.UUID
CreatedAt *time.Time
UpdatedAt *time.Time
DeletedAt gorm.DeletedAt `gorm:"index"`
Nodes datatypes.JSONSlice[Node]
Edges datatypes.JSONSlice[Edge]
}
func FindCanvasByName ¶ added in v0.6.0
func FindCanvasInTransaction ¶ added in v0.6.0
func FindCanvasTemplateByName ¶ added in v0.6.0
func FindCanvasTemplateByNameInTransaction ¶ added in v0.6.0
func FindCanvasTemplateInTransaction ¶ added in v0.6.0
func FindCanvasWithoutOrgScope ¶ added in v0.6.0
func FindCanvasWithoutOrgScopeInTransaction ¶ added in v0.6.0
func FindUnscopedCanvasInTransaction ¶ added in v0.6.0
func ListCanvases ¶ added in v0.6.0
func ListDeletedCanvases ¶ added in v0.6.0
func (*Canvas) SoftDelete ¶ added in v0.6.0
func (*Canvas) SoftDeleteInTransaction ¶ added in v0.6.0
type CanvasEvent ¶ added in v0.6.0
type CanvasEvent struct {
ID uuid.UUID `gorm:"primaryKey;default:uuid_generate_v4()"`
WorkflowID uuid.UUID
NodeID string
Channel string
CustomName *string
Data datatypes.JSONType[any]
ExecutionID *uuid.UUID
State string
CreatedAt *time.Time
}
func FindCanvasEvent ¶ added in v0.6.0
func FindCanvasEvent(id uuid.UUID) (*CanvasEvent, error)
func FindCanvasEventForCanvas ¶ added in v0.6.0
func FindCanvasEventInTransaction ¶ added in v0.6.0
func FindCanvasEvents ¶ added in v0.6.0
func FindCanvasEvents(ids []string) ([]CanvasEvent, error)
func FindCanvasEventsForExecutions ¶ added in v0.6.0
func FindCanvasEventsForExecutions(executionIDs []string) ([]CanvasEvent, error)
func FindLastEventPerNode ¶
func FindLastEventPerNode(canvasID uuid.UUID) ([]CanvasEvent, error)
FindLastEventPerNode finds the most recent event for each node in a workflow using DISTINCT ON to get one event per node_id, ordered by created_at DESC Only returns events for nodes that have not been deleted
func ListCanvasEvents ¶ added in v0.6.0
func ListCanvasEventsForExecutionsInTransaction ¶ added in v0.6.0
func ListPendingCanvasEvents ¶ added in v0.6.0
func ListPendingCanvasEvents() ([]CanvasEvent, error)
func ListRootCanvasEvents ¶ added in v0.6.0
func LockCanvasEvent ¶ added in v0.6.0
func (*CanvasEvent) Routed ¶ added in v0.6.0
func (e *CanvasEvent) Routed() error
func (*CanvasEvent) RoutedInTransaction ¶ added in v0.6.0
func (e *CanvasEvent) RoutedInTransaction(tx *gorm.DB) error
func (*CanvasEvent) TableName ¶ added in v0.6.0
func (e *CanvasEvent) TableName() string
type CanvasNode ¶ added in v0.6.0
type CanvasNode struct {
WorkflowID uuid.UUID `gorm:"primaryKey"`
NodeID string `gorm:"primaryKey"`
ParentNodeID *string
Name string
State string
StateReason *string
Type string
Position datatypes.JSONType[Position]
Ref datatypes.JSONType[NodeRef]
Configuration datatypes.JSONType[map[string]any]
Metadata datatypes.JSONType[map[string]any]
IsCollapsed bool
WebhookID *uuid.UUID
AppInstallationID *uuid.UUID
CreatedAt *time.Time
UpdatedAt *time.Time
DeletedAt gorm.DeletedAt `gorm:"index"`
}
func FindCanvasNode ¶ added in v0.6.0
func FindCanvasNodes ¶ added in v0.6.0
func FindCanvasNodes(canvasID uuid.UUID) ([]CanvasNode, error)
func FindCanvasNodesByIDs ¶ added in v0.6.0
func FindCanvasNodesInTransaction ¶ added in v0.6.0
func FindCanvasNodesUnscoped ¶ added in v0.6.0
func FindCanvasNodesUnscoped(workflowID uuid.UUID) ([]CanvasNode, error)
func FindCanvasNodesUnscopedInTransaction ¶ added in v0.6.0
func FindWebhookNodes ¶
func FindWebhookNodes(webhookID uuid.UUID) ([]CanvasNode, error)
func ListCanvasNodesReady ¶ added in v0.6.0
func ListCanvasNodesReady() ([]CanvasNode, error)
func ListReadyTriggers ¶
func ListReadyTriggers() ([]CanvasNode, error)
func LockCanvasNode ¶ added in v0.6.0
func LockCanvasNodeForUpdate ¶ added in v0.6.0
func (*CanvasNode) CreateRequest ¶ added in v0.6.0
func (c *CanvasNode) CreateRequest(tx *gorm.DB, reqType string, spec NodeExecutionRequestSpec, runAt *time.Time) error
func (*CanvasNode) FirstQueueItem ¶ added in v0.6.0
func (c *CanvasNode) FirstQueueItem(tx *gorm.DB) (*CanvasNodeQueueItem, error)
func (*CanvasNode) TableName ¶ added in v0.6.0
func (c *CanvasNode) TableName() string
func (*CanvasNode) UpdateState ¶ added in v0.6.0
func (c *CanvasNode) UpdateState(tx *gorm.DB, state string) error
type CanvasNodeExecution ¶ added in v0.6.0
type CanvasNodeExecution struct {
ID uuid.UUID `gorm:"primaryKey;default:uuid_generate_v4()"`
WorkflowID uuid.UUID
NodeID string
CreatedAt *time.Time
UpdatedAt *time.Time
//
// Reference to the root WorkflowEvent record that started
// this whole execution chain.
//
// This gives us an easy way to find all the executions
// for that event with a simple query.
//
RootEventID uuid.UUID
//
// Reference to the previous execution.
// This is what allows us to build execution chains,
// from any execution.
//
PreviousExecutionID *uuid.UUID
//
// Reference to the parent execution.
// This is used for node executions inside of a blueprint node,
// to reference the parent blueprint node execution.
//
ParentExecutionID *uuid.UUID
//
// The reference to a WorkflowEvent record,
// which holds the input for this execution.
//
EventID uuid.UUID
//
// State management fields.
//
State string
Result string
ResultReason string
ResultMessage string
CancelledBy *uuid.UUID
//
// Components can store metadata about each execution here.
// This allows them to control the behavior of each execution.
//
Metadata datatypes.JSONType[map[string]any]
//
// The configuration is copied from the node.
// This enables us to allow node configuration updates
// while executions are running.
// Only new executions will use the new node configuration.
//
Configuration datatypes.JSONType[map[string]any]
}
func CreatePendingChildExecution ¶
func CreatePendingChildExecution(tx *gorm.DB, parent *CanvasNodeExecution, childNodeID string, config map[string]any) (*CanvasNodeExecution, error)
func FindChildExecutions ¶
func FindChildExecutions(parentExecutionID uuid.UUID, states []string) ([]CanvasNodeExecution, error)
func FindChildExecutionsForMultiple ¶
func FindChildExecutionsForMultiple(parentExecutionIDs []string) ([]CanvasNodeExecution, error)
func FindLastExecutionPerNode ¶
func FindLastExecutionPerNode(workflowID uuid.UUID) ([]CanvasNodeExecution, error)
FindLastExecutionPerNode finds the most recent execution for each node in a workflow using DISTINCT ON to get one execution per node_id, ordered by created_at DESC Only returns executions for nodes that have not been deleted
func FindNodeExecution ¶
func FindNodeExecution(workflowID, id uuid.UUID) (*CanvasNodeExecution, error)
func FindNodeExecutionWithNodeID ¶
func FindNodeExecutionWithNodeID(workflowID, id uuid.UUID, nodeID string) (*CanvasNodeExecution, error)
func FindNodeExecutionsByIDs ¶ added in v0.1.5
func FindNodeExecutionsByIDsInTransaction ¶ added in v0.1.5
func ListNodeExecutions ¶
func ListNodeExecutionsForRootEvents ¶ added in v0.0.40
func ListNodeExecutionsForRootEvents(rootEventIDs []uuid.UUID) ([]CanvasNodeExecution, error)
func ListPendingNodeExecutions ¶
func ListPendingNodeExecutions() ([]CanvasNodeExecution, error)
func LockCanvasNodeExecution ¶ added in v0.6.0
func (*CanvasNodeExecution) Cancel ¶ added in v0.6.0
func (e *CanvasNodeExecution) Cancel(cancelledBy *uuid.UUID) error
func (*CanvasNodeExecution) CancelInTransaction ¶ added in v0.6.0
func (*CanvasNodeExecution) CreateRequest ¶ added in v0.6.0
func (e *CanvasNodeExecution) CreateRequest(tx *gorm.DB, reqType string, spec NodeExecutionRequestSpec, runAt *time.Time) error
func (*CanvasNodeExecution) Fail ¶ added in v0.6.0
func (e *CanvasNodeExecution) Fail(reason, message string) error
func (*CanvasNodeExecution) FailInTransaction ¶ added in v0.6.0
func (e *CanvasNodeExecution) FailInTransaction(tx *gorm.DB, reason, message string) error
func (*CanvasNodeExecution) GetInput ¶ added in v0.6.0
func (e *CanvasNodeExecution) GetInput(tx *gorm.DB) (any, error)
func (*CanvasNodeExecution) GetOutputs ¶ added in v0.6.0
func (e *CanvasNodeExecution) GetOutputs() ([]CanvasEvent, error)
func (*CanvasNodeExecution) GetOutputsInTransaction ¶ added in v0.6.0
func (e *CanvasNodeExecution) GetOutputsInTransaction(tx *gorm.DB) ([]CanvasEvent, error)
func (*CanvasNodeExecution) GetParentExecutionID ¶ added in v0.6.0
func (e *CanvasNodeExecution) GetParentExecutionID() string
func (*CanvasNodeExecution) GetPreviousExecutionID ¶ added in v0.6.0
func (e *CanvasNodeExecution) GetPreviousExecutionID() string
func (*CanvasNodeExecution) Pass ¶ added in v0.6.0
func (e *CanvasNodeExecution) Pass(outputs map[string][]any) ([]CanvasEvent, error)
func (*CanvasNodeExecution) PassInTransaction ¶ added in v0.6.0
func (e *CanvasNodeExecution) PassInTransaction(tx *gorm.DB, channelOutputs map[string][]any) ([]CanvasEvent, error)
func (*CanvasNodeExecution) Start ¶ added in v0.6.0
func (e *CanvasNodeExecution) Start() error
func (*CanvasNodeExecution) StartInTransaction ¶ added in v0.6.0
func (e *CanvasNodeExecution) StartInTransaction(tx *gorm.DB) error
func (*CanvasNodeExecution) TableName ¶ added in v0.6.0
func (e *CanvasNodeExecution) TableName() string
type CanvasNodeExecutionKV ¶ added in v0.6.0
type CanvasNodeExecutionKV struct {
ID uuid.UUID `gorm:"type:uuid;primaryKey;default:gen_random_uuid()"`
WorkflowID uuid.UUID `gorm:"type:uuid;not null"`
NodeID string `gorm:"type:varchar(128);not null"`
ExecutionID uuid.UUID `gorm:"type:uuid;not null"`
Key string `gorm:"type:text;not null"`
Value string `gorm:"type:text;not null"`
CreatedAt *time.Time
}
func (*CanvasNodeExecutionKV) TableName ¶ added in v0.6.0
func (c *CanvasNodeExecutionKV) TableName() string
type CanvasNodeQueueItem ¶ added in v0.6.0
type CanvasNodeQueueItem struct {
ID uuid.UUID `gorm:"primaryKey;default:uuid_generate_v4()"`
WorkflowID uuid.UUID
NodeID string
CreatedAt *time.Time
//
// Reference to the root WorkflowEvent record that started
// this whole execution chain.
//
// This gives us an easy way to find all the queue items
// for that event with a simple query.
//
RootEventID uuid.UUID
RootEvent *CanvasEvent `gorm:"foreignKey:RootEventID"`
//
// The reference to a CanvasEvent record,
// which holds the input for this queue item.
//
EventID uuid.UUID
}
func FindNextQueueItemPerNode ¶
func FindNextQueueItemPerNode(workflowID uuid.UUID) ([]CanvasNodeQueueItem, error)
FindNextQueueItemPerNode finds the next (oldest) queue item for each node in a workflow using DISTINCT ON to get one queue item per node_id, ordered by created_at ASC Only returns queue items for nodes that have not been deleted
func FindNodeQueueItem ¶
func ListNodeQueueItems ¶
func (*CanvasNodeQueueItem) Delete ¶ added in v0.6.0
func (i *CanvasNodeQueueItem) Delete(tx *gorm.DB) error
func (*CanvasNodeQueueItem) TableName ¶ added in v0.6.0
func (i *CanvasNodeQueueItem) TableName() string
type CanvasNodeRequest ¶ added in v0.6.0
type CanvasNodeRequest struct {
ID uuid.UUID
WorkflowID uuid.UUID
NodeID string
ExecutionID *uuid.UUID
State string
Type string
Spec datatypes.JSONType[NodeExecutionRequestSpec]
RunAt time.Time
CreatedAt time.Time
UpdatedAt time.Time
}
func ListNodeRequests ¶
func ListNodeRequests() ([]CanvasNodeRequest, error)
func LockNodeRequest ¶
func (*CanvasNodeRequest) Complete ¶ added in v0.6.0
func (r *CanvasNodeRequest) Complete(tx *gorm.DB) error
func (*CanvasNodeRequest) TableName ¶ added in v0.6.0
func (r *CanvasNodeRequest) TableName() string
type ComponentRef ¶
type ComponentRef struct {
Name string `json:"name"`
}
type EmailSettings ¶ added in v0.0.43
type EmailSettings struct {
ID uuid.UUID `gorm:"type:uuid;primary_key;default:uuid_generate_v4()"`
Provider string `gorm:"type:varchar(50);uniqueIndex"`
SMTPHost string
SMTPPort int
SMTPUsername string
SMTPPassword []byte
SMTPFromName string
SMTPFromEmail string
SMTPUseTLS bool
CreatedAt time.Time
UpdatedAt time.Time
}
func FindEmailSettings ¶ added in v0.0.43
func FindEmailSettings(provider string) (*EmailSettings, error)
func FindEmailSettingsInTransaction ¶ added in v0.0.43
func FindEmailSettingsInTransaction(tx *gorm.DB, provider string) (*EmailSettings, error)
type GroupMetadata ¶
type GroupMetadata struct {
ID uuid.UUID `json:"id" gorm:"type:uuid;primary_key;default:gen_random_uuid()"`
GroupName string `json:"group_name" gorm:"not null;index"`
DomainType string `json:"domain_type" gorm:"not null;index"`
DomainID string `json:"domain_id" gorm:"not null;index"`
DisplayName string `json:"display_name" gorm:"not null"`
Description string `json:"description"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
func FindGroupMetadata ¶
func FindGroupMetadata(groupName, domainType, domainID string) (*GroupMetadata, error)
func (*GroupMetadata) BeforeCreate ¶
func (gm *GroupMetadata) BeforeCreate(tx *gorm.DB) error
func (*GroupMetadata) Create ¶
func (gm *GroupMetadata) Create() error
func (*GroupMetadata) CreateInTransaction ¶
func (gm *GroupMetadata) CreateInTransaction(tx *gorm.DB) error
func (*GroupMetadata) Update ¶
func (gm *GroupMetadata) Update() error
func (*GroupMetadata) UpdateInTransaction ¶
func (gm *GroupMetadata) UpdateInTransaction(tx *gorm.DB) error
type InstallationMetadata ¶ added in v0.1.0
type Integration ¶
type Integration struct {
ID uuid.UUID `gorm:"primary_key;default:uuid_generate_v4()"`
OrganizationID uuid.UUID
AppName string
InstallationName string
State string
StateDescription string
Configuration datatypes.JSONType[map[string]any]
Metadata datatypes.JSONType[map[string]any]
BrowserAction *datatypes.JSONType[BrowserAction]
CreatedAt *time.Time
UpdatedAt *time.Time
DeletedAt gorm.DeletedAt `gorm:"index"`
}
func CreateIntegration ¶
func FindIntegration ¶ added in v0.6.0
func FindIntegration(orgID, integrationID uuid.UUID) (*Integration, error)
func FindIntegrationByName ¶
func FindIntegrationByName(orgID uuid.UUID, integrationName string) (*Integration, error)
func FindMaybeDeletedIntegrationInTransaction ¶ added in v0.6.0
func FindUnscopedIntegration ¶ added in v0.6.0
func FindUnscopedIntegration(integrationID uuid.UUID) (*Integration, error)
func FindUnscopedIntegrationInTransaction ¶ added in v0.6.0
func ListDeletedIntegrations ¶ added in v0.6.0
func ListDeletedIntegrations() ([]Integration, error)
func ListIntegrations ¶
func ListIntegrations(orgID uuid.UUID) ([]Integration, error)
func LockIntegration ¶ added in v0.6.0
func (*Integration) CreateActionRequest ¶ added in v0.6.0
func (*Integration) CreateSyncRequest ¶ added in v0.6.0
func (*Integration) GetRequest ¶ added in v0.6.0
func (a *Integration) GetRequest(ID string) (*IntegrationRequest, error)
func (*Integration) ListRequests ¶ added in v0.6.0
func (a *Integration) ListRequests(reqType string) ([]IntegrationRequest, error)
func (*Integration) SoftDelete ¶ added in v0.6.0
func (a *Integration) SoftDelete() error
func (*Integration) SoftDeleteInTransaction ¶ added in v0.6.0
func (a *Integration) SoftDeleteInTransaction(tx *gorm.DB) error
func (*Integration) TableName ¶ added in v0.6.0
func (a *Integration) TableName() string
type IntegrationInvokeAction ¶ added in v0.6.0
type IntegrationRequest ¶ added in v0.6.0
type IntegrationRequest struct {
ID uuid.UUID
AppInstallationID uuid.UUID
State string
Type string
Spec datatypes.JSONType[IntegrationRequestSpec]
RunAt time.Time
CreatedAt time.Time
UpdatedAt time.Time
}
func FindPendingRequestForIntegration ¶ added in v0.6.0
func ListIntegrationRequests ¶ added in v0.6.0
func ListIntegrationRequests() ([]IntegrationRequest, error)
func LockIntegrationRequest ¶ added in v0.6.0
func (*IntegrationRequest) Complete ¶ added in v0.6.0
func (r *IntegrationRequest) Complete(tx *gorm.DB) error
func (*IntegrationRequest) TableName ¶ added in v0.6.0
func (r *IntegrationRequest) TableName() string
type IntegrationRequestSpec ¶ added in v0.6.0
type IntegrationRequestSpec struct {
InvokeAction *IntegrationInvokeAction `json:"invoke_action,omitempty"`
}
type IntegrationSecret ¶ added in v0.6.0
type IntegrationSecret struct {
ID uuid.UUID `gorm:"primary_key;default:uuid_generate_v4()"`
OrganizationID uuid.UUID
InstallationID uuid.UUID
Name string
Value []byte
CreatedAt *time.Time
UpdatedAt *time.Time
}
func (*IntegrationSecret) TableName ¶ added in v0.6.0
func (a *IntegrationSecret) TableName() string
type IntegrationSubscription ¶ added in v0.6.0
type IntegrationSubscription struct {
ID uuid.UUID `gorm:"primary_key;default:uuid_generate_v4()"`
InstallationID uuid.UUID
WorkflowID uuid.UUID
NodeID string
Configuration datatypes.JSONType[any]
CreatedAt *time.Time
UpdatedAt *time.Time
}
func CreateIntegrationSubscription ¶ added in v0.6.0
func CreateIntegrationSubscription(node *CanvasNode, integration *Integration, configuration any) (*IntegrationSubscription, error)
func CreateIntegrationSubscriptionInTransaction ¶ added in v0.6.0
func CreateIntegrationSubscriptionInTransaction(tx *gorm.DB, node *CanvasNode, integration *Integration, configuration any) (*IntegrationSubscription, error)
func (*IntegrationSubscription) TableName ¶ added in v0.6.0
func (a *IntegrationSubscription) TableName() string
type InvokeAction ¶
type Node ¶
type Node struct {
ID string `json:"id"`
Name string `json:"name"`
Type string `json:"type"`
Ref NodeRef `json:"ref"`
Configuration map[string]any `json:"configuration"`
Metadata map[string]any `json:"metadata"`
Position Position `json:"position"`
IsCollapsed bool `json:"isCollapsed"`
IntegrationID *string `json:"integrationId,omitempty"`
ErrorMessage *string `json:"errorMessage,omitempty"`
WarningMessage *string `json:"warningMessage,omitempty"`
}
type NodeExecutionRequestSpec ¶
type NodeExecutionRequestSpec struct {
InvokeAction *InvokeAction `json:"invoke_action,omitempty"`
}
type NodeRef ¶
type NodeRef struct {
Component *ComponentRef `json:"component,omitempty"`
Blueprint *BlueprintRef `json:"blueprint,omitempty"`
Trigger *TriggerRef `json:"trigger,omitempty"`
Widget *WidgetRef `json:"widget,omitempty"`
}
type NodeSubscription ¶ added in v0.0.45
type NodeSubscription struct {
WorkflowID uuid.UUID
NodeID string
NodeType string
NodeRef datatypes.JSONType[NodeRef]
Configuration datatypes.JSONType[any]
}
func ListIntegrationSubscriptions ¶ added in v0.6.0
type Organization ¶
type Organization struct {
ID uuid.UUID `gorm:"primary_key;default:uuid_generate_v4()"`
Name string `gorm:"uniqueIndex"`
Description string
AllowedProviders datatypes.JSONSlice[string]
CreatedAt *time.Time
UpdatedAt *time.Time
DeletedAt gorm.DeletedAt `gorm:"index"`
}
func CreateOrganization ¶
func CreateOrganization(name, description string) (*Organization, error)
func CreateOrganizationInTransaction ¶
func CreateOrganizationInTransaction(tx *gorm.DB, name, description string) (*Organization, error)
func FindOrganizationByID ¶
func FindOrganizationByID(id string) (*Organization, error)
func FindOrganizationByName ¶
func FindOrganizationByName(name string) (*Organization, error)
func FindOrganizationsForAccount ¶
func FindOrganizationsForAccount(email string) ([]Organization, error)
func ListOrganizationsByIDs ¶
func ListOrganizationsByIDs(ids []string) ([]Organization, error)
func (*Organization) IsProviderAllowed ¶
func (o *Organization) IsProviderAllowed(provider string) bool
type OrganizationInvitation ¶
type OrganizationInvitation struct {
ID uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()"`
OrganizationID uuid.UUID
Email string
InvitedBy uuid.UUID
State string
CreatedAt time.Time
UpdatedAt time.Time
}
func CreateInvitation ¶
func CreateInvitation(organizationID, invitedBy uuid.UUID, email, state string) (*OrganizationInvitation, error)
func FindInvitationByID ¶
func FindInvitationByID(invitationID string) (*OrganizationInvitation, error)
func FindInvitationByIDWithState ¶
func FindInvitationByIDWithState(invitationID string, state string) (*OrganizationInvitation, error)
func FindPendingInvitation ¶
func FindPendingInvitation(email, organizationID string) (*OrganizationInvitation, error)
func FindPendingInvitationInTransaction ¶
func FindPendingInvitationInTransaction(tx *gorm.DB, email, organizationID string) (*OrganizationInvitation, error)
func ListInvitationsInState ¶
func ListInvitationsInState(organizationID string, state string) ([]OrganizationInvitation, error)
func (*OrganizationInvitation) Delete ¶
func (i *OrganizationInvitation) Delete() error
type OrganizationInviteLink ¶ added in v0.0.43
type OrganizationInviteLink struct {
ID uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()"`
OrganizationID uuid.UUID `gorm:"uniqueIndex"`
Token uuid.UUID `gorm:"type:uuid;uniqueIndex"`
Enabled bool
CreatedAt time.Time
UpdatedAt time.Time
}
func CreateInviteLink ¶ added in v0.0.43
func CreateInviteLink(organizationID uuid.UUID) (*OrganizationInviteLink, error)
func CreateInviteLinkInTransaction ¶ added in v0.0.43
func FindInviteLinkByOrganizationID ¶ added in v0.0.43
func FindInviteLinkByOrganizationID(organizationID string) (*OrganizationInviteLink, error)
func FindInviteLinkByOrganizationIDInTransaction ¶ added in v0.0.43
func FindInviteLinkByOrganizationIDInTransaction(tx *gorm.DB, organizationID string) (*OrganizationInviteLink, error)
func FindInviteLinkByToken ¶ added in v0.0.43
func FindInviteLinkByToken(token string) (*OrganizationInviteLink, error)
func FindInviteLinkByTokenInTransaction ¶ added in v0.0.43
func FindInviteLinkByTokenInTransaction(tx *gorm.DB, token string) (*OrganizationInviteLink, error)
type RoleMetadata ¶
type RoleMetadata struct {
ID uuid.UUID `json:"id" gorm:"type:uuid;primary_key;default:gen_random_uuid()"`
RoleName string `json:"role_name" gorm:"not null;index"`
DomainType string `json:"domain_type" gorm:"not null;index"`
DomainID string `json:"domain_id" gorm:"not null;index"`
DisplayName string `json:"display_name" gorm:"not null"`
Description string `json:"description"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
func FindRoleMetadata ¶
func FindRoleMetadata(roleName, domainType, domainID string) (*RoleMetadata, error)
func (*RoleMetadata) BeforeCreate ¶
func (rm *RoleMetadata) BeforeCreate(tx *gorm.DB) error
func (*RoleMetadata) Create ¶
func (rm *RoleMetadata) Create() error
func (*RoleMetadata) CreateInTransaction ¶
func (rm *RoleMetadata) CreateInTransaction(tx *gorm.DB) error
func (*RoleMetadata) Update ¶
func (rm *RoleMetadata) Update() error
func (*RoleMetadata) UpdateInTransaction ¶
func (rm *RoleMetadata) UpdateInTransaction(tx *gorm.DB) error
type Secret ¶
type Secret struct {
ID uuid.UUID `gorm:"primary_key;default:uuid_generate_v4()"`
DomainType string
DomainID uuid.UUID
Name string
CreatedAt *time.Time
CreatedBy uuid.UUID
UpdatedAt *time.Time
Provider string
Data []byte
}
func CreateSecret ¶
func FindSecretByID ¶
func FindSecretByName ¶
type SecretData ¶
type TriggerRef ¶
type TriggerRef struct {
Name string `json:"name"`
}
type User ¶
type User struct {
ID uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()"`
OrganizationID uuid.UUID
AccountID uuid.UUID
Email string
Name string
TokenHash string
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt gorm.DeletedAt
}
func CreateUserInTransaction ¶
func FindActiveUserByEmail ¶
func FindActiveUserByID ¶
func FindAnyUserByEmail ¶
func FindMaybeDeletedUserByEmailInTransaction ¶ added in v0.0.43
func FindMaybeDeletedUserByID ¶
NOTE: this method returns soft deleted users too. Make sure you really need to use it this one, and not FindActiveUserByID instead.
func FindMaybeDeletedUsersByIDs ¶ added in v0.0.43
func FindUnscopedUserByID ¶
func ListActiveUsersByID ¶ added in v0.0.43
func ListActiveUsersByIDInTransaction ¶ added in v0.0.43
func (*User) UpdateTokenHash ¶
type Webhook ¶
type Webhook struct {
ID uuid.UUID `gorm:"primary_key;default:uuid_generate_v4()"`
State string
Secret []byte
Configuration datatypes.JSONType[any]
Metadata datatypes.JSONType[any]
AppInstallationID *uuid.UUID
RetryCount int `gorm:"default:0"`
MaxRetries int `gorm:"default:3"`
CreatedAt *time.Time
UpdatedAt *time.Time
DeletedAt gorm.DeletedAt `gorm:"index"`
}
func ListDeletedWebhooks ¶
func ListIntegrationWebhooks ¶ added in v0.6.0
func ListPendingWebhooks ¶
func ListUnscopedIntegrationWebhooks ¶ added in v0.6.0
func (*Webhook) HasExceededRetries ¶
type WebhookResource ¶
type WorkflowNodeReference ¶
type WorkflowNodeReference struct {
WorkflowID uuid.UUID
WorkflowName string
NodeID string
NodeName string
}
func ListIntegrationNodeReferences ¶ added in v0.6.0
func ListIntegrationNodeReferences(integrationID uuid.UUID) ([]WorkflowNodeReference, error)
Source Files
¶
- account.go
- account_password_auth.go
- account_provider.go
- blueprint.go
- canvas.go
- canvas_event.go
- canvas_node.go
- canvas_node_execution.go
- canvas_node_execution_kvs.go
- canvas_node_request.go
- constants.go
- email_settings.go
- installation_metadata.go
- integration.go
- integration_request.go
- integration_subscription.go
- organization.go
- organization_invitation.go
- organization_invite_link.go
- role_metadata.go
- secret.go
- templates.go
- user.go
- webhook.go