authsome

package module
v0.0.0-...-da92add Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 11, 2026 License: Apache-2.0 Imports: 9 Imported by: 0

README

AuthSome Go Client SDK

Enterprise-grade Go client for AuthSome authentication with automatic middleware support for Forge and standard HTTP clients.

Features

  • 🔐 Multiple Authentication Methods: API keys, session tokens, and cookies
  • 🔄 Auto-detection: Automatically chooses the right auth method
  • 🎯 Forge Integration: First-class support for Forge framework
  • 🌐 Standard HTTP: Works with any http.Client via http.RoundTripper
  • 📦 Context Management: Built-in app and environment context handling
  • 🍪 Cookie Support: Automatic session cookie management
  • 🔗 Plugin System: Extensible plugin architecture

Installation

go get github.com/xraph/authsome/clients/go

Quick Start

Basic Usage
package main

import (
    "context"
    "log"
    
    authsome "github.com/xraph/authsome/clients/go"
)

func main() {
    // Create client with session token
    client := authsome.NewClient(
        "https://api.example.com",
        authsome.WithToken("your-session-token"),
    )
    
    // Sign in
    resp, err := client.SignIn(context.Background(), &authsome.SignInRequest{
        Email:    "user@example.com",
        Password: "password123",
    })
    if err != nil {
        log.Fatal(err)
    }
    
    log.Printf("Signed in as: %s", resp.User.Email)
}

Authentication Methods

1. API Key Authentication

Recommended for server-to-server communication:

client := authsome.NewClient(
    "https://api.example.com",
    authsome.WithAPIKey("sk_live_abc123"),
)

API keys automatically add Authorization: ApiKey {key} header.

2. Session Token Authentication

For authenticated user requests:

client := authsome.NewClient(
    "https://api.example.com",
    authsome.WithToken("user-session-token"),
)

Session tokens automatically add Authorization: Bearer {token} header.

For browser-like session management:

import "net/http/cookiejar"

jar, _ := cookiejar.New(nil)
client := authsome.NewClient(
    "https://api.example.com",
    authsome.WithCookieJar(jar),
)

Cookies are automatically sent with requests.

4. Dual Authentication

Combine API key and session token:

client := authsome.NewClient(
    "https://api.example.com",
    authsome.WithAPIKey("pk_live_xyz"),
    authsome.WithToken("user-session-token"),
)

Priority: API Key > Session Token > Cookies

Forge Framework Integration

Setting Up Forge Middleware
package main

import (
    "github.com/xraph/forge"
    authsome "github.com/xraph/authsome/clients/go"
)

func main() {
    app := forge.New()
    
    // Create AuthSome client
    authClient := authsome.NewClient(
        "https://auth.example.com",
        authsome.WithAPIKey("sk_live_abc123"),
    )
    
    // Apply authentication middleware globally
    app.Use(authClient.ForgeMiddleware())
    
    // Protected routes
    api := app.Group("/api")
    api.Use(authClient.RequireAuth())
    
    api.GET("/profile", func(c forge.Context) error {
        // Get user from context
        session, ok := authsome.GetSessionFromContext(c.Request().Context())
        if !ok {
            return c.JSON(401, map[string]string{"error": "not authenticated"})
        }
        
        return c.JSON(200, session)
    })
    
    app.Listen(":3000")
}
Middleware Functions
  • ForgeMiddleware(): Optional authentication - populates context
  • RequireAuth(): Blocks unauthenticated requests
  • OptionalAuth(): Alias for ForgeMiddleware()

Standard HTTP Client Integration

Using RoundTripper
package main

import (
    "net/http"
    authsome "github.com/xraph/authsome/clients/go"
)

func main() {
    // Create AuthSome client
    authClient := authsome.NewClient(
        "https://api.example.com",
        authsome.WithAPIKey("sk_live_abc123"),
    )
    
    // Create HTTP client with auth injection
    httpClient := &http.Client{
        Transport: authClient.RoundTripper(),
    }
    
    // All requests automatically include authentication
    resp, err := httpClient.Get("https://other-service.com/api/data")
    // ... handle response
}
Convenience Method
// Create fully configured HTTP client
httpClient := authClient.NewHTTPClientWithAuth()

Context Management

Setting App and Environment Context
client := authsome.NewClient(
    "https://api.example.com",
    authsome.WithAPIKey("sk_live_abc123"),
    authsome.WithAppContext("app_123", "env_prod"),
)

// Or set dynamically
client.SetAppContext("app_456", "env_staging")

// Get current context
appID, envID := client.GetAppContext()

Context headers are automatically added:

  • X-App-ID: Application identifier
  • X-Environment-ID: Environment identifier
Context Helper Functions
import (
    "context"
    authsome "github.com/xraph/authsome/clients/go"
)

ctx := context.Background()

// Add app ID
ctx = authsome.WithAppID(ctx, "app_123")

// Add environment ID
ctx = authsome.WithEnvironmentID(ctx, "env_prod")

// Add both
ctx = authsome.WithAppContext(ctx, "app_123", "env_prod")

// Retrieve values
appID, ok := authsome.GetAppID(ctx)
envID, ok := authsome.GetEnvironmentID(ctx)

User and Session Helpers

Get Current User
user, err := client.GetCurrentUser(context.Background())
if err != nil {
    log.Fatal(err)
}
log.Printf("User: %s (%s)", user.Name, user.Email)
Get Current Session
session, err := client.GetCurrentSession(context.Background())
if err != nil {
    log.Fatal(err)
}
log.Printf("Session expires: %s", session.ExpiresAt)

Custom Headers

client := authsome.NewClient(
    "https://api.example.com",
    authsome.WithHeaders(map[string]string{
        "X-Custom-Header": "value",
        "User-Agent":      "MyApp/1.0",
    }),
)

Plugin System

Using Plugins
import (
    authsome "github.com/xraph/authsome/clients/go"
    "github.com/xraph/authsome/clients/go/plugins/social"
)

client := authsome.NewClient(
    "https://api.example.com",
    authsome.WithPlugins(
        social.NewPlugin(),
    ),
)

// Access plugin
socialPlugin, ok := client.GetPlugin("social")
if ok {
    // Use plugin methods
}

Advanced Configuration

Complete Example
package main

import (
    "context"
    "log"
    "net/http"
    "net/http/cookiejar"
    
    authsome "github.com/xraph/authsome/clients/go"
)

func main() {
    // Create cookie jar
    jar, err := cookiejar.New(nil)
    if err != nil {
        log.Fatal(err)
    }
    
    // Create custom HTTP client
    httpClient := &http.Client{
        Timeout: 30 * time.Second,
        Jar:     jar,
    }
    
    // Create AuthSome client with all options
    client := authsome.NewClient(
        "https://api.example.com",
        authsome.WithHTTPClient(httpClient),
        authsome.WithAPIKey("sk_live_abc123"),
        authsome.WithCookieJar(jar),
        authsome.WithAppContext("app_prod_123", "env_production"),
        authsome.WithHeaders(map[string]string{
            "User-Agent": "MyApp/1.0.0",
        }),
    )
    
    // Use client
    session, err := client.GetCurrentSession(context.Background())
    if err != nil {
        log.Fatal(err)
    }
    
    log.Printf("Authenticated as: %s", session.User.Email)
}

Error Handling

resp, err := client.SignIn(context.Background(), &authsome.SignInRequest{
    Email:    "user@example.com",
    Password: "wrong-password",
})

if err != nil {
    if authErr, ok := err.(*authsome.Error); ok {
        switch authErr.StatusCode {
        case 401:
            log.Println("Invalid credentials")
        case 403:
            log.Println("Account locked")
        case 429:
            log.Println("Rate limited")
        default:
            log.Printf("Error: %s (code: %s)", authErr.Message, authErr.Code)
        }
    }
    return
}

Best Practices

1. API Key Security
// ✅ DO: Load from environment
apiKey := os.Getenv("AUTHSOME_API_KEY")

// ❌ DON'T: Hardcode in source
apiKey := "sk_live_abc123" // Never do this!
2. Context Propagation
// ✅ DO: Pass context through call chain
func handleRequest(ctx context.Context, client *authsome.Client) error {
    return client.GetSession(ctx)
}

// ❌ DON'T: Create new context
func handleRequest(client *authsome.Client) error {
    return client.GetSession(context.Background())
}
3. Resource Cleanup
// ✅ DO: Reuse client instances
var authClient *authsome.Client

func init() {
    authClient = authsome.NewClient(...)
}

// ❌ DON'T: Create new clients for each request
func handleRequest() {
    client := authsome.NewClient(...) // Wasteful!
}

Regenerating the Client

When the AuthSome API changes, regenerate the client:

cd /path/to/authsome
authsome generate client --lang go --output ./clients

Support

License

See LICENSE file in the repository root.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrUnauthorized = &Error{Message: "Unauthorized", StatusCode: 401, Code: "UNAUTHORIZED"}
	ErrForbidden    = &Error{Message: "Forbidden", StatusCode: 403, Code: "FORBIDDEN"}
	ErrNotFound     = &Error{Message: "Not found", StatusCode: 404, Code: "NOT_FOUND"}
	ErrConflict     = &Error{Message: "Conflict", StatusCode: 409, Code: "CONFLICT"}
	ErrRateLimit    = &Error{Message: "Rate limit exceeded", StatusCode: 429, Code: "RATE_LIMIT"}
	ErrServer       = &Error{Message: "Internal server error", StatusCode: 500, Code: "SERVER_ERROR"}
)

Specific error types

Functions

func GetAppID

func GetAppID(ctx context.Context) (string, bool)

GetAppID retrieves app ID from context

func GetEnvironmentID

func GetEnvironmentID(ctx context.Context) (string, bool)

GetEnvironmentID retrieves environment ID from context

func GetUserID

func GetUserID(ctx context.Context) (string, bool)

GetUserID retrieves user ID from context

func SetContextAppAndEnvironment

func SetContextAppAndEnvironment(ctx context.Context, appID, envID string) context.Context

SetContextAppAndEnvironment adds both app and environment IDs to context

func WithAppID

func WithAppID(ctx context.Context, appID string) context.Context

WithAppID adds app ID to context

func WithEnvironmentID

func WithEnvironmentID(ctx context.Context, envID string) context.Context

WithEnvironmentID adds environment ID to context

func WithUserID

func WithUserID(ctx context.Context, userID string) context.Context

WithUserID adds user ID to context

Types

type AMLMatch

type AMLMatch struct {
}

type APIKey

type APIKey struct{}

Placeholder types for undefined/missing types

type AcceptInvitationRequest

type AcceptInvitationRequest struct {
}

type AccessConfig

type AccessConfig struct {
	AllowApiAccess        bool `json:"allowApiAccess"`
	AllowDashboardAccess  bool `json:"allowDashboardAccess"`
	RateLimitPerMinute    int  `json:"rateLimitPerMinute"`
	RequireAuthentication bool `json:"requireAuthentication"`
	RequireRbac           bool `json:"requireRbac"`
}

type AccessTokenClaims

type AccessTokenClaims struct {
	Client_id  string `json:"client_id"`
	Scope      string `json:"scope"`
	Token_type string `json:"token_type"`
}

type AccountAutoSendConfig

type AccountAutoSendConfig struct {
	Reactivated          bool `json:"reactivated"`
	Suspended            bool `json:"suspended"`
	Username_changed     bool `json:"username_changed"`
	Deleted              bool `json:"deleted"`
	Email_change_request bool `json:"email_change_request"`
	Email_changed        bool `json:"email_changed"`
	Password_changed     bool `json:"password_changed"`
}

type AccountAutoSendDTO

type AccountAutoSendDTO struct {
	EmailChanged       bool `json:"emailChanged"`
	PasswordChanged    bool `json:"passwordChanged"`
	Reactivated        bool `json:"reactivated"`
	Suspended          bool `json:"suspended"`
	UsernameChanged    bool `json:"usernameChanged"`
	Deleted            bool `json:"deleted"`
	EmailChangeRequest bool `json:"emailChangeRequest"`
}

type AccountLockedResponse

type AccountLockedResponse struct {
	Code           string    `json:"code"`
	Locked_minutes int       `json:"locked_minutes"`
	Locked_until   time.Time `json:"locked_until"`
	Message        string    `json:"message"`
}

type AccountLockoutError

type AccountLockoutError struct {
}

type ActionDataDTO

type ActionDataDTO struct {
	Label        string `json:"label"`
	Order        int    `json:"order"`
	RequireAdmin bool   `json:"requireAdmin"`
	Style        string `json:"style"`
	Action       string `json:"action"`
	Icon         string `json:"icon"`
	Id           string `json:"id"`
}

type ActionResponse

type ActionResponse struct {
	CreatedAt   time.Time `json:"createdAt"`
	Description string    `json:"description"`
	Id          string    `json:"id"`
	Name        string    `json:"name"`
	NamespaceId string    `json:"namespaceId"`
}

type ActionsListResponse

type ActionsListResponse struct {
	Actions    []*ActionResponse `json:"actions"`
	TotalCount int               `json:"totalCount"`
}

type Adapter

type Adapter struct {
}

type AdaptiveMFAConfig

type AdaptiveMFAConfig struct {
	Enabled                   bool    `json:"enabled"`
	Factor_ip_reputation      bool    `json:"factor_ip_reputation"`
	Factor_location_change    bool    `json:"factor_location_change"`
	New_device_risk           float64 `json:"new_device_risk"`
	Require_step_up_threshold float64 `json:"require_step_up_threshold"`
	Velocity_risk             float64 `json:"velocity_risk"`
	Factor_new_device         bool    `json:"factor_new_device"`
	Factor_velocity           bool    `json:"factor_velocity"`
	Location_change_risk      float64 `json:"location_change_risk"`
	Risk_threshold            float64 `json:"risk_threshold"`
}

type AddFieldRequest

type AddFieldRequest struct {
}

type AddMemberRequest

type AddMemberRequest struct {
	Role    string `json:"role"`
	User_id string `json:"user_id"`
}

type AddTeamMemberRequest

type AddTeamMemberRequest struct {
	Member_id string `json:"member_id"`
}

type AddTeamMember_req

type AddTeamMember_req struct {
	Member_id xid.ID `json:"member_id"`
	Role      string `json:"role"`
}

type AddTrustedContactRequest

type AddTrustedContactRequest struct {
	Email        string `json:"email"`
	Name         string `json:"name"`
	Phone        string `json:"phone"`
	Relationship string `json:"relationship"`
}

type AddTrustedContactResponse

type AddTrustedContactResponse struct {
	ContactId xid.ID    `json:"contactId"`
	Email     string    `json:"email"`
	Message   string    `json:"message"`
	Name      string    `json:"name"`
	Phone     string    `json:"phone"`
	Verified  bool      `json:"verified"`
	AddedAt   time.Time `json:"addedAt"`
}

type AdminAddProviderRequest

type AdminAddProviderRequest struct {
	ClientSecret string   `json:"clientSecret"`
	Enabled      bool     `json:"enabled"`
	Provider     string   `json:"provider"`
	Scopes       []string `json:"scopes"`
	AppId        xid.ID   `json:"appId"`
	ClientId     string   `json:"clientId"`
}

type AdminBlockUserRequest

type AdminBlockUserRequest struct {
	Reason string `json:"reason"`
}

type AdminBlockUserResponse

type AdminBlockUserResponse struct {
	Status interface{} `json:"status"`
}

type AdminBlockUser_req

type AdminBlockUser_req struct {
	Reason string `json:"reason"`
}

type AdminBypassRequest

type AdminBypassRequest struct {
	Duration int    `json:"duration"`
	Reason   string `json:"reason"`
	UserId   xid.ID `json:"userId"`
}

type AdminGetUserVerificationStatusResponse

type AdminGetUserVerificationStatusResponse struct {
	Status interface{} `json:"status"`
}

type AdminGetUserVerificationsResponse

type AdminGetUserVerificationsResponse struct {
	Verifications []*interface{} `json:"verifications"`
}

type AdminHandler

type AdminHandler struct {
}

type AdminPolicyRequest

type AdminPolicyRequest struct {
	RequiredFactors int      `json:"requiredFactors"`
	AllowedTypes    []string `json:"allowedTypes"`
	Enabled         bool     `json:"enabled"`
	GracePeriod     int      `json:"gracePeriod"`
}

type AdminUnblockUserResponse

type AdminUnblockUserResponse struct {
	Status interface{} `json:"status"`
}

type AdminUpdateProviderRequest

type AdminUpdateProviderRequest struct {
	ClientId     *string  `json:"clientId"`
	ClientSecret *string  `json:"clientSecret"`
	Enabled      *bool    `json:"enabled"`
	Scopes       []string `json:"scopes"`
}

type AmountRule

type AmountRule struct {
	Currency       string        `json:"currency"`
	Description    string        `json:"description"`
	Max_amount     float64       `json:"max_amount"`
	Min_amount     float64       `json:"min_amount"`
	Org_id         string        `json:"org_id"`
	Security_level SecurityLevel `json:"security_level"`
}

type AnalyticsDTO

type AnalyticsDTO struct {
	TopTemplates []TemplatePerformanceDTO `json:"topTemplates"`
	ByDay        []DailyAnalyticsDTO      `json:"byDay"`
	ByTemplate   []TemplateAnalyticsDTO   `json:"byTemplate"`
	Overview     OverviewStatsDTO         `json:"overview"`
}

type AnalyticsResponse

type AnalyticsResponse struct {
	GeneratedAt time.Time        `json:"generatedAt"`
	Summary     AnalyticsSummary `json:"summary"`
	TimeRange   interface{}      `json:"timeRange"`
}

type AnalyticsSummary

type AnalyticsSummary struct {
	ActivePolicies   int                 `json:"activePolicies"`
	AllowedCount     int64               `json:"allowedCount"`
	CacheHitRate     float64             `json:"cacheHitRate"`
	DeniedCount      int64               `json:"deniedCount"`
	TopPolicies      []PolicyStats       `json:"topPolicies"`
	TopResourceTypes []ResourceTypeStats `json:"topResourceTypes"`
	TotalEvaluations int64               `json:"totalEvaluations"`
	AvgLatencyMs     float64             `json:"avgLatencyMs"`
	TotalPolicies    int                 `json:"totalPolicies"`
}

type App

type App struct {
}

type AppHandler

type AppHandler struct {
}

type AppServiceAdapter

type AppServiceAdapter struct {
}

type ApproveDeletionRequestResponse

type ApproveDeletionRequestResponse struct {
	Status string `json:"status"`
}

type ApproveRecoveryRequest

type ApproveRecoveryRequest struct {
	SessionId xid.ID `json:"sessionId"`
	Notes     string `json:"notes"`
}

type ApproveRecoveryResponse

type ApproveRecoveryResponse struct {
	Message    string    `json:"message"`
	SessionId  xid.ID    `json:"sessionId"`
	Approved   bool      `json:"approved"`
	ApprovedAt time.Time `json:"approvedAt"`
}

type ArchiveEntryRequest

type ArchiveEntryRequest struct {
}

type AssignRoleRequest

type AssignRoleRequest struct {
	RoleID string `json:"roleID"`
}

type AsyncAdapter

type AsyncAdapter struct {
}

type AsyncConfig

type AsyncConfig struct {
	Retry_backoff    []string `json:"retry_backoff"`
	Retry_enabled    bool     `json:"retry_enabled"`
	Worker_pool_size int      `json:"worker_pool_size"`
	Enabled          bool     `json:"enabled"`
	Max_retries      int      `json:"max_retries"`
	Persist_failures bool     `json:"persist_failures"`
	Queue_size       int      `json:"queue_size"`
}

type AuditConfig

type AuditConfig struct {
	Immutable        bool   `json:"immutable"`
	MaxRetentionDays int    `json:"maxRetentionDays"`
	MinRetentionDays int    `json:"minRetentionDays"`
	SignLogs         bool   `json:"signLogs"`
	DetailedTrail    bool   `json:"detailedTrail"`
	ExportFormat     string `json:"exportFormat"`
}

type AuditEvent

type AuditEvent struct {
}

type AuditLog

type AuditLog struct {
}

type AuditLogEntry

type AuditLogEntry struct {
	EnvironmentId      string      `json:"environmentId"`
	IpAddress          string      `json:"ipAddress"`
	NewValue           interface{} `json:"newValue"`
	OldValue           interface{} `json:"oldValue"`
	ResourceId         string      `json:"resourceId"`
	ActorId            string      `json:"actorId"`
	AppId              string      `json:"appId"`
	Id                 string      `json:"id"`
	ResourceType       string      `json:"resourceType"`
	Timestamp          time.Time   `json:"timestamp"`
	UserAgent          string      `json:"userAgent"`
	UserOrganizationId *string     `json:"userOrganizationId"`
	Action             string      `json:"action"`
}

type AuditLogResponse

type AuditLogResponse struct {
	Entries    []*AuditLogEntry `json:"entries"`
	Page       int              `json:"page"`
	PageSize   int              `json:"pageSize"`
	TotalCount int              `json:"totalCount"`
}

type AuditServiceAdapter

type AuditServiceAdapter struct {
}

type AuthAutoSendConfig

type AuthAutoSendConfig struct {
	Email_otp          bool `json:"email_otp"`
	Magic_link         bool `json:"magic_link"`
	Mfa_code           bool `json:"mfa_code"`
	Password_reset     bool `json:"password_reset"`
	Verification_email bool `json:"verification_email"`
	Welcome            bool `json:"welcome"`
}

type AuthAutoSendDTO

type AuthAutoSendDTO struct {
	EmailOtp          bool `json:"emailOtp"`
	MagicLink         bool `json:"magicLink"`
	MfaCode           bool `json:"mfaCode"`
	PasswordReset     bool `json:"passwordReset"`
	VerificationEmail bool `json:"verificationEmail"`
	Welcome           bool `json:"welcome"`
}

type AuthURLResponse

type AuthURLResponse struct {
	Url string `json:"url"`
}

type AuthorizeRequest

type AuthorizeRequest struct {
	Max_age               *int   `json:"max_age"`
	Response_type         string `json:"response_type"`
	Scope                 string `json:"scope"`
	State                 string `json:"state"`
	Ui_locales            string `json:"ui_locales"`
	Acr_values            string `json:"acr_values"`
	Client_id             string `json:"client_id"`
	Code_challenge_method string `json:"code_challenge_method"`
	Id_token_hint         string `json:"id_token_hint"`
	Login_hint            string `json:"login_hint"`
	Nonce                 string `json:"nonce"`
	Prompt                string `json:"prompt"`
	Redirect_uri          string `json:"redirect_uri"`
	Code_challenge        string `json:"code_challenge"`
}

type AutoCleanupConfig

type AutoCleanupConfig struct {
	Interval time.Duration `json:"interval"`
	Enabled  bool          `json:"enabled"`
}

type AutoSendConfig

type AutoSendConfig struct {
	Account      AccountAutoSendConfig      `json:"account"`
	Auth         AuthAutoSendConfig         `json:"auth"`
	Organization OrganizationAutoSendConfig `json:"organization"`
	Session      SessionAutoSendConfig      `json:"session"`
}

type AutomatedChecksConfig

type AutomatedChecksConfig struct {
	PasswordPolicy     bool          `json:"passwordPolicy"`
	SessionPolicy      bool          `json:"sessionPolicy"`
	SuspiciousActivity bool          `json:"suspiciousActivity"`
	DataRetention      bool          `json:"dataRetention"`
	Enabled            bool          `json:"enabled"`
	MfaCoverage        bool          `json:"mfaCoverage"`
	AccessReview       bool          `json:"accessReview"`
	CheckInterval      time.Duration `json:"checkInterval"`
	InactiveUsers      bool          `json:"inactiveUsers"`
}

type BackupAuthCodesResponse

type BackupAuthCodesResponse struct {
	Codes []string `json:"codes"`
}

type BackupAuthConfigResponse

type BackupAuthConfigResponse struct {
	Config interface{} `json:"config"`
}

type BackupAuthContactResponse

type BackupAuthContactResponse struct {
	Id string `json:"id"`
}

type BackupAuthContactsResponse

type BackupAuthContactsResponse struct {
	Contacts []*interface{} `json:"contacts"`
}

type BackupAuthDocumentResponse

type BackupAuthDocumentResponse struct {
	Id string `json:"id"`
}

type BackupAuthQuestionsResponse

type BackupAuthQuestionsResponse struct {
	Questions []string `json:"questions"`
}

type BackupAuthRecoveryResponse

type BackupAuthRecoveryResponse struct {
	Session_id string `json:"session_id"`
}

type BackupAuthSessionsResponse

type BackupAuthSessionsResponse struct {
	Sessions []*interface{} `json:"sessions"`
}

type BackupAuthStatsResponse

type BackupAuthStatsResponse struct {
	Stats interface{} `json:"stats"`
}

type BackupAuthStatusResponse

type BackupAuthStatusResponse struct {
	Status string `json:"status"`
}

type BackupAuthVideoResponse

type BackupAuthVideoResponse struct {
	Session_id string `json:"session_id"`
}

type BackupCodeFactorAdapter

type BackupCodeFactorAdapter struct {
}

type BackupCodesConfig

type BackupCodesConfig struct {
	Allow_reuse bool   `json:"allow_reuse"`
	Count       int    `json:"count"`
	Enabled     bool   `json:"enabled"`
	Format      string `json:"format"`
	Length      int    `json:"length"`
}

type BanUserRequest

type BanUserRequest struct {
	Expires_at           Time   `json:"expires_at"`
	Reason               string `json:"reason"`
	User_id              xid.ID `json:"user_id"`
	User_organization_id ID     `json:"user_organization_id"`
	App_id               xid.ID `json:"app_id"`
}

type BanUserRequestDTO

type BanUserRequestDTO struct {
	Expires_at Time   `json:"expires_at"`
	Reason     string `json:"reason"`
}

type BaseFactorAdapter

type BaseFactorAdapter struct {
}

type BatchEvaluateRequest

type BatchEvaluateRequest struct {
	Requests []EvaluateRequest `json:"requests"`
}

type BatchEvaluateResponse

type BatchEvaluateResponse struct {
	FailureCount     int                      `json:"failureCount"`
	Results          []*BatchEvaluationResult `json:"results"`
	SuccessCount     int                      `json:"successCount"`
	TotalEvaluations int                      `json:"totalEvaluations"`
	TotalTimeMs      float64                  `json:"totalTimeMs"`
}

type BatchEvaluationResult

type BatchEvaluationResult struct {
	Policies         []string `json:"policies"`
	ResourceId       string   `json:"resourceId"`
	ResourceType     string   `json:"resourceType"`
	Action           string   `json:"action"`
	Allowed          bool     `json:"allowed"`
	Error            string   `json:"error"`
	EvaluationTimeMs float64  `json:"evaluationTimeMs"`
	Index            int      `json:"index"`
}

type BeginLoginRequest

type BeginLoginRequest struct {
	UserVerification string `json:"userVerification"`
	UserId           string `json:"userId"`
}

type BeginLoginResponse

type BeginLoginResponse struct {
	Challenge string        `json:"challenge"`
	Options   interface{}   `json:"options"`
	Timeout   time.Duration `json:"timeout"`
}

type BeginRegisterRequest

type BeginRegisterRequest struct {
	Name               string `json:"name"`
	RequireResidentKey bool   `json:"requireResidentKey"`
	UserId             string `json:"userId"`
	UserVerification   string `json:"userVerification"`
	AuthenticatorType  string `json:"authenticatorType"`
}

type BeginRegisterResponse

type BeginRegisterResponse struct {
	UserId    string        `json:"userId"`
	Challenge string        `json:"challenge"`
	Options   interface{}   `json:"options"`
	Timeout   time.Duration `json:"timeout"`
}

type BlockUserRequest

type BlockUserRequest struct {
	Reason string `json:"reason"`
}

type BridgeAppInput

type BridgeAppInput struct {
	AppId string `json:"appId"`
}

type BulkDeleteRequest

type BulkDeleteRequest struct {
	Ids []string `json:"ids"`
}

type BulkPublishRequest

type BulkPublishRequest struct {
	Ids []string `json:"ids"`
}

type BulkRequest

type BulkRequest struct {
	Ids []string `json:"ids"`
}

type BulkUnpublishRequest

type BulkUnpublishRequest struct {
	Ids []string `json:"ids"`
}

type BunRepository

type BunRepository struct {
}

type CallbackDataResponse

type CallbackDataResponse struct {
	Action    string `json:"action"`
	IsNewUser bool   `json:"isNewUser"`
	User      User   `json:"user"`
}

type CallbackResponse

type CallbackResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
	User    User    `json:"user"`
}

type CallbackResult

type CallbackResult struct {
}

type CancelInvitationInput

type CancelInvitationInput struct {
	OrgId    string `json:"orgId"`
	AppId    string `json:"appId"`
	InviteId string `json:"inviteId"`
}

type CancelInvitationResult

type CancelInvitationResult struct {
	Success bool `json:"success"`
}

type CancelRecoveryRequest

type CancelRecoveryRequest struct {
	Reason    string `json:"reason"`
	SessionId xid.ID `json:"sessionId"`
}

type CancelRecoveryResponse

type CancelRecoveryResponse struct {
	Status string `json:"status"`
}

type Challenge

type Challenge struct {
	UserAgent   string          `json:"userAgent"`
	VerifiedAt  Time            `json:"verifiedAt"`
	ExpiresAt   time.Time       `json:"expiresAt"`
	Id          xid.ID          `json:"id"`
	IpAddress   string          `json:"ipAddress"`
	MaxAttempts int             `json:"maxAttempts"`
	Status      ChallengeStatus `json:"status"`
	UserId      xid.ID          `json:"userId"`
	Attempts    int             `json:"attempts"`
	CreatedAt   time.Time       `json:"createdAt"`
	FactorId    xid.ID          `json:"factorId"`
	Metadata    interface{}     `json:"metadata"`
	Type        FactorType      `json:"type"`
}

type ChallengeRequest

type ChallengeRequest struct {
	Context     string       `json:"context"`
	FactorTypes []FactorType `json:"factorTypes"`
	Metadata    interface{}  `json:"metadata"`
	UserId      xid.ID       `json:"userId"`
}

type ChallengeResponse

type ChallengeResponse struct {
	AvailableFactors []FactorInfo `json:"availableFactors"`
	ChallengeId      xid.ID       `json:"challengeId"`
	ExpiresAt        time.Time    `json:"expiresAt"`
	FactorsRequired  int          `json:"factorsRequired"`
	SessionId        xid.ID       `json:"sessionId"`
}

type ChallengeSession

type ChallengeSession struct {
}

type ChallengeStatus

type ChallengeStatus = string

Placeholder type aliases for undefined enum/custom types

type ChallengeStatusResponse

type ChallengeStatusResponse struct {
	SessionId        xid.ID    `json:"sessionId"`
	Status           string    `json:"status"`
	CompletedAt      Time      `json:"completedAt"`
	ExpiresAt        time.Time `json:"expiresAt"`
	FactorsRemaining int       `json:"factorsRemaining"`
	FactorsRequired  int       `json:"factorsRequired"`
	FactorsVerified  int       `json:"factorsVerified"`
}

type ChangePasswordRequest

type ChangePasswordRequest struct {
	NewPassword string `json:"newPassword"`
	OldPassword string `json:"oldPassword"`
}

type ChangePasswordResponse

type ChangePasswordResponse struct {
	Message string `json:"message"`
}

type ChannelsResponse

type ChannelsResponse struct {
	Channels interface{} `json:"channels"`
	Count    int         `json:"count"`
}

type CheckDependencies

type CheckDependencies struct {
}

type CheckMetadata

type CheckMetadata struct {
	Category    string   `json:"category"`
	Description string   `json:"description"`
	Name        string   `json:"name"`
	Severity    string   `json:"severity"`
	Standards   []string `json:"standards"`
	AutoRun     bool     `json:"autoRun"`
}

type CheckRegistry

type CheckRegistry struct {
}

type CheckResult

type CheckResult struct {
	Status    string      `json:"status"`
	CheckType string      `json:"checkType"`
	Error     error       `json:"error"`
	Evidence  []string    `json:"evidence"`
	Result    interface{} `json:"result"`
	Score     float64     `json:"score"`
}

type CheckSubResult

type CheckSubResult struct {
}

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client is the main AuthSome client

func NewClient

func NewClient(baseURL string, opts ...Option) *Client

NewClient creates a new AuthSome client

func (*Client) ChangePassword

func (c *Client) ChangePassword(ctx context.Context, req *ChangePasswordRequest) (*ChangePasswordResponse, error)

ChangePassword Change password for authenticated user

func (*Client) ConfirmEmailChange

func (c *Client) ConfirmEmailChange(ctx context.Context, req *ConfirmEmailChangeRequest) (*ConfirmEmailChangeResponse, error)

ConfirmEmailChange Confirm email change using token

func (*Client) ForgeMiddleware

func (c *Client) ForgeMiddleware() forge.Middleware

ForgeMiddleware returns a Forge middleware that injects auth into context This middleware verifies the session with the AuthSome backend and populates the request context with user and session information

func (*Client) GetAppContext

func (c *Client) GetAppContext() (appID, envID string)

GetAppContext returns the current app and environment IDs

func (*Client) GetCurrentSession

func (c *Client) GetCurrentSession(ctx context.Context) (*Session, error)

GetCurrentSession retrieves the current session

func (*Client) GetCurrentUser

func (c *Client) GetCurrentUser(ctx context.Context) (*User, error)

GetCurrentUser retrieves the current user from the session

func (*Client) GetPlugin

func (c *Client) GetPlugin(id string) (Plugin, bool)

GetPlugin returns a plugin by ID

func (*Client) GetSession

func (c *Client) GetSession(ctx context.Context) (*GetSessionResponse, error)

GetSession Get current session information

func (*Client) ListDevices

func (c *Client) ListDevices(ctx context.Context) (*ListDevicesResponse, error)

ListDevices List user devices

func (*Client) NewHTTPClientWithAuth

func (c *Client) NewHTTPClientWithAuth() *http.Client

NewHTTPClientWithAuth creates a new http.Client with automatic auth injection This is a convenience function for creating HTTP clients with AuthSome authentication

func (*Client) OptionalAuth

func (c *Client) OptionalAuth() forge.Middleware

OptionalAuth returns Forge middleware that optionally loads auth if present Unlike RequireAuth, this does not block unauthenticated requests

func (*Client) RefreshSession

func (c *Client) RefreshSession(ctx context.Context, req *RefreshSessionRequest) (*RefreshSessionResponse, error)

RefreshSession Refresh access token using refresh token

func (*Client) Request

func (c *Client) Request(ctx context.Context, method, path string, body interface{}, result interface{}, auth bool) error

Request makes an HTTP request - exposed for plugin use

func (*Client) RequestEmailChange

func (c *Client) RequestEmailChange(ctx context.Context, req *RequestEmailChangeRequest) (*RequestEmailChangeResponse, error)

RequestEmailChange Request email address change

func (*Client) RequestPasswordReset

RequestPasswordReset Request password reset link

func (*Client) RequireAuth

func (c *Client) RequireAuth() forge.Middleware

RequireAuth returns Forge middleware that requires authentication Requests without valid authentication will receive a 401 response

func (*Client) ResetPassword

func (c *Client) ResetPassword(ctx context.Context, req *ResetPasswordRequest) (*ResetPasswordResponse, error)

ResetPassword Reset password using token

func (*Client) RevokeDevice

func (c *Client) RevokeDevice(ctx context.Context, req *RevokeDeviceRequest) (*RevokeDeviceResponse, error)

RevokeDevice Revoke a device

func (*Client) RoundTripper

func (c *Client) RoundTripper() http.RoundTripper

RoundTripper returns an http.RoundTripper that injects authentication You can use this with any standard http.Client:

httpClient := &http.Client{
    Transport: authClient.RoundTripper(),
}

func (*Client) SetAPIKey

func (c *Client) SetAPIKey(apiKey string)

SetAPIKey sets the API key

func (*Client) SetAppContext

func (c *Client) SetAppContext(appID, envID string)

SetAppContext sets the app and environment context

func (*Client) SetToken

func (c *Client) SetToken(token string)

SetToken sets the authentication token

func (*Client) SignIn

func (c *Client) SignIn(ctx context.Context, req *SignInRequest) (*SignInResponse, error)

SignIn Sign in with email and password

func (*Client) SignOut

func (c *Client) SignOut(ctx context.Context) (*SignOutResponse, error)

SignOut Sign out and invalidate session

func (*Client) SignUp

func (c *Client) SignUp(ctx context.Context, req *SignUpRequest) (*SignUpResponse, error)

SignUp Create a new user account

func (*Client) UpdateUser

func (c *Client) UpdateUser(ctx context.Context, req *UpdateUserRequest) (*UpdateUserResponse, error)

UpdateUser Update current user profile

func (*Client) ValidateResetToken

func (c *Client) ValidateResetToken(ctx context.Context) (*ValidateResetTokenResponse, error)

ValidateResetToken Validate password reset token

type ClientAuthResult

type ClientAuthResult struct {
}

type ClientAuthenticator

type ClientAuthenticator struct {
}

type ClientDetailsResponse

type ClientDetailsResponse struct {
	RequireConsent          bool     `json:"requireConsent"`
	TosURI                  string   `json:"tosURI"`
	ResponseTypes           []string `json:"responseTypes"`
	TokenEndpointAuthMethod string   `json:"tokenEndpointAuthMethod"`
	ClientID                string   `json:"clientID"`
	PolicyURI               string   `json:"policyURI"`
	RequirePKCE             bool     `json:"requirePKCE"`
	UpdatedAt               string   `json:"updatedAt"`
	AllowedScopes           []string `json:"allowedScopes"`
	CreatedAt               string   `json:"createdAt"`
	LogoURI                 string   `json:"logoURI"`
	Name                    string   `json:"name"`
	PostLogoutRedirectURIs  []string `json:"postLogoutRedirectURIs"`
	TrustedClient           bool     `json:"trustedClient"`
	ApplicationType         string   `json:"applicationType"`
	Contacts                []string `json:"contacts"`
	GrantTypes              []string `json:"grantTypes"`
	IsOrgLevel              bool     `json:"isOrgLevel"`
	OrganizationID          string   `json:"organizationID"`
	RedirectURIs            []string `json:"redirectURIs"`
}

type ClientRegistrationRequest

type ClientRegistrationRequest struct {
	Policy_uri                 string   `json:"policy_uri"`
	Post_logout_redirect_uris  []string `json:"post_logout_redirect_uris"`
	Scope                      string   `json:"scope"`
	Application_type           string   `json:"application_type"`
	Logo_uri                   string   `json:"logo_uri"`
	Redirect_uris              []string `json:"redirect_uris"`
	Token_endpoint_auth_method string   `json:"token_endpoint_auth_method"`
	Response_types             []string `json:"response_types"`
	Tos_uri                    string   `json:"tos_uri"`
	Client_name                string   `json:"client_name"`
	Require_consent            bool     `json:"require_consent"`
	Require_pkce               bool     `json:"require_pkce"`
	Trusted_client             bool     `json:"trusted_client"`
	Contacts                   []string `json:"contacts"`
	Grant_types                []string `json:"grant_types"`
}

type ClientRegistrationResponse

type ClientRegistrationResponse struct {
	Logo_uri                   string   `json:"logo_uri"`
	Post_logout_redirect_uris  []string `json:"post_logout_redirect_uris"`
	Redirect_uris              []string `json:"redirect_uris"`
	Application_type           string   `json:"application_type"`
	Client_id_issued_at        int64    `json:"client_id_issued_at"`
	Grant_types                []string `json:"grant_types"`
	Response_types             []string `json:"response_types"`
	Tos_uri                    string   `json:"tos_uri"`
	Client_secret_expires_at   int64    `json:"client_secret_expires_at"`
	Scope                      string   `json:"scope"`
	Client_id                  string   `json:"client_id"`
	Contacts                   []string `json:"contacts"`
	Policy_uri                 string   `json:"policy_uri"`
	Token_endpoint_auth_method string   `json:"token_endpoint_auth_method"`
	Client_name                string   `json:"client_name"`
	Client_secret              string   `json:"client_secret"`
}

type ClientSummary

type ClientSummary struct {
	Name            string `json:"name"`
	ApplicationType string `json:"applicationType"`
	ClientID        string `json:"clientID"`
	CreatedAt       string `json:"createdAt"`
	IsOrgLevel      bool   `json:"isOrgLevel"`
}

type ClientUpdateRequest

type ClientUpdateRequest struct {
	Name                       string   `json:"name"`
	Policy_uri                 string   `json:"policy_uri"`
	Post_logout_redirect_uris  []string `json:"post_logout_redirect_uris"`
	Require_consent            *bool    `json:"require_consent"`
	Require_pkce               *bool    `json:"require_pkce"`
	Token_endpoint_auth_method string   `json:"token_endpoint_auth_method"`
	Trusted_client             *bool    `json:"trusted_client"`
	Allowed_scopes             []string `json:"allowed_scopes"`
	Contacts                   []string `json:"contacts"`
	Grant_types                []string `json:"grant_types"`
	Logo_uri                   string   `json:"logo_uri"`
	Redirect_uris              []string `json:"redirect_uris"`
	Response_types             []string `json:"response_types"`
	Tos_uri                    string   `json:"tos_uri"`
}

type ClientsListResponse

type ClientsListResponse struct {
	Clients    []ClientSummary `json:"clients"`
	Page       int             `json:"page"`
	PageSize   int             `json:"pageSize"`
	Total      int             `json:"total"`
	TotalPages int             `json:"totalPages"`
}

type CloneContentTypeRequest

type CloneContentTypeRequest struct {
}

type CodesResponse

type CodesResponse struct {
	Codes []string `json:"codes"`
}

type CompareRevisionsRequest

type CompareRevisionsRequest struct {
}

type CompleteRecoveryRequest

type CompleteRecoveryRequest struct {
	SessionId xid.ID `json:"sessionId"`
}

type CompleteRecoveryResponse

type CompleteRecoveryResponse struct {
	CompletedAt time.Time      `json:"completedAt"`
	Message     string         `json:"message"`
	SessionId   xid.ID         `json:"sessionId"`
	Status      RecoveryStatus `json:"status"`
	Token       string         `json:"token"`
}

type CompleteTrainingRequest

type CompleteTrainingRequest struct {
	Score int `json:"score"`
}

type CompleteTrainingResponse

type CompleteTrainingResponse struct {
	Status string `json:"status"`
}

type CompleteTraining_req

type CompleteTraining_req struct {
	Score int `json:"score"`
}

type CompleteVideoSessionRequest

type CompleteVideoSessionRequest struct {
	LivenessPassed     bool    `json:"livenessPassed"`
	LivenessScore      float64 `json:"livenessScore"`
	Notes              string  `json:"notes"`
	VerificationResult string  `json:"verificationResult"`
	VideoSessionId     xid.ID  `json:"videoSessionId"`
}

type CompleteVideoSessionResponse

type CompleteVideoSessionResponse struct {
	VideoSessionId xid.ID    `json:"videoSessionId"`
	CompletedAt    time.Time `json:"completedAt"`
	Message        string    `json:"message"`
	Result         string    `json:"result"`
}

type ComplianceCheck

type ComplianceCheck struct {
	CheckType     string      `json:"checkType"`
	CreatedAt     time.Time   `json:"createdAt"`
	Evidence      []string    `json:"evidence"`
	LastCheckedAt time.Time   `json:"lastCheckedAt"`
	ProfileId     string      `json:"profileId"`
	AppId         string      `json:"appId"`
	Id            string      `json:"id"`
	NextCheckAt   time.Time   `json:"nextCheckAt"`
	Result        interface{} `json:"result"`
	Status        string      `json:"status"`
}

type ComplianceCheckResponse

type ComplianceCheckResponse struct {
	Id string `json:"id"`
}

type ComplianceChecksResponse

type ComplianceChecksResponse struct {
	Checks []*interface{} `json:"checks"`
}

type ComplianceDashboardResponse

type ComplianceDashboardResponse struct {
	Metrics interface{} `json:"metrics"`
}

type ComplianceEvidence

type ComplianceEvidence struct {
	ProfileId    string             `json:"profileId"`
	Standard     ComplianceStandard `json:"standard"`
	AppId        string             `json:"appId"`
	Description  string             `json:"description"`
	EvidenceType string             `json:"evidenceType"`
	FileHash     string             `json:"fileHash"`
	Id           string             `json:"id"`
	Title        string             `json:"title"`
	CollectedBy  string             `json:"collectedBy"`
	ControlId    string             `json:"controlId"`
	CreatedAt    time.Time          `json:"createdAt"`
	FileUrl      string             `json:"fileUrl"`
	Metadata     interface{}        `json:"metadata"`
}

type ComplianceEvidenceResponse

type ComplianceEvidenceResponse struct {
	Id string `json:"id"`
}

type ComplianceEvidencesResponse

type ComplianceEvidencesResponse struct {
	Evidence []*interface{} `json:"evidence"`
}

type CompliancePoliciesResponse

type CompliancePoliciesResponse struct {
	Policies []*interface{} `json:"policies"`
}

type CompliancePolicy

type CompliancePolicy struct {
	Standard      ComplianceStandard `json:"standard"`
	Status        string             `json:"status"`
	AppId         string             `json:"appId"`
	ApprovedAt    Time               `json:"approvedAt"`
	CreatedAt     time.Time          `json:"createdAt"`
	Id            string             `json:"id"`
	ProfileId     string             `json:"profileId"`
	PolicyType    string             `json:"policyType"`
	Title         string             `json:"title"`
	Version       string             `json:"version"`
	ApprovedBy    string             `json:"approvedBy"`
	Content       string             `json:"content"`
	Metadata      interface{}        `json:"metadata"`
	ReviewDate    time.Time          `json:"reviewDate"`
	UpdatedAt     time.Time          `json:"updatedAt"`
	EffectiveDate time.Time          `json:"effectiveDate"`
}

type CompliancePolicyResponse

type CompliancePolicyResponse struct {
	Id string `json:"id"`
}

type ComplianceProfile

type ComplianceProfile struct {
	Standards             []ComplianceStandard `json:"standards"`
	MfaRequired           bool                 `json:"mfaRequired"`
	CreatedAt             time.Time            `json:"createdAt"`
	EncryptionInTransit   bool                 `json:"encryptionInTransit"`
	Metadata              interface{}          `json:"metadata"`
	AppId                 string               `json:"appId"`
	ComplianceContact     string               `json:"complianceContact"`
	PasswordMinLength     int                  `json:"passwordMinLength"`
	PasswordRequireLower  bool                 `json:"passwordRequireLower"`
	RbacRequired          bool                 `json:"rbacRequired"`
	RegularAccessReview   bool                 `json:"regularAccessReview"`
	Name                  string               `json:"name"`
	AuditLogExport        bool                 `json:"auditLogExport"`
	PasswordRequireUpper  bool                 `json:"passwordRequireUpper"`
	PasswordRequireSymbol bool                 `json:"passwordRequireSymbol"`
	RetentionDays         int                  `json:"retentionDays"`
	SessionIpBinding      bool                 `json:"sessionIpBinding"`
	Status                string               `json:"status"`
	DataResidency         string               `json:"dataResidency"`
	EncryptionAtRest      bool                 `json:"encryptionAtRest"`
	Id                    string               `json:"id"`
	PasswordExpiryDays    int                  `json:"passwordExpiryDays"`
	DetailedAuditTrail    bool                 `json:"detailedAuditTrail"`
	DpoContact            string               `json:"dpoContact"`
	SessionMaxAge         int                  `json:"sessionMaxAge"`
	UpdatedAt             time.Time            `json:"updatedAt"`
	LeastPrivilege        bool                 `json:"leastPrivilege"`
	SessionIdleTimeout    int                  `json:"sessionIdleTimeout"`
	PasswordRequireNumber bool                 `json:"passwordRequireNumber"`
}

type ComplianceProfileResponse

type ComplianceProfileResponse struct {
	Id string `json:"id"`
}

type ComplianceReport

type ComplianceReport struct {
	Period      string             `json:"period"`
	ProfileId   string             `json:"profileId"`
	Status      string             `json:"status"`
	Summary     interface{}        `json:"summary"`
	FileSize    int64              `json:"fileSize"`
	Format      string             `json:"format"`
	GeneratedBy string             `json:"generatedBy"`
	Id          string             `json:"id"`
	ReportType  string             `json:"reportType"`
	Standard    ComplianceStandard `json:"standard"`
	AppId       string             `json:"appId"`
	CreatedAt   time.Time          `json:"createdAt"`
	ExpiresAt   time.Time          `json:"expiresAt"`
	FileUrl     string             `json:"fileUrl"`
}

type ComplianceReportFileResponse

type ComplianceReportFileResponse struct {
	Content_type string `json:"content_type"`
	Data         []byte `json:"data"`
}

type ComplianceReportResponse

type ComplianceReportResponse struct {
	Id string `json:"id"`
}

type ComplianceReportsResponse

type ComplianceReportsResponse struct {
	Reports []*interface{} `json:"reports"`
}

type ComplianceStandard

type ComplianceStandard = string

Placeholder type aliases for undefined enum/custom types

type ComplianceStatus

type ComplianceStatus struct {
	LastChecked   time.Time          `json:"lastChecked"`
	Violations    int                `json:"violations"`
	ChecksFailed  int                `json:"checksFailed"`
	NextAudit     time.Time          `json:"nextAudit"`
	OverallStatus string             `json:"overallStatus"`
	ProfileId     string             `json:"profileId"`
	Score         int                `json:"score"`
	Standard      ComplianceStandard `json:"standard"`
	AppId         string             `json:"appId"`
	ChecksPassed  int                `json:"checksPassed"`
	ChecksWarning int                `json:"checksWarning"`
}

type ComplianceStatusDetailsResponse

type ComplianceStatusDetailsResponse struct {
	Status string `json:"status"`
}

type ComplianceStatusResponse

type ComplianceStatusResponse struct {
	Status string `json:"status"`
}

type ComplianceTemplate

type ComplianceTemplate struct {
	AuditFrequencyDays int                `json:"auditFrequencyDays"`
	DataResidency      string             `json:"dataResidency"`
	Description        string             `json:"description"`
	Name               string             `json:"name"`
	RequiredPolicies   []string           `json:"requiredPolicies"`
	RequiredTraining   []string           `json:"requiredTraining"`
	SessionMaxAge      int                `json:"sessionMaxAge"`
	Standard           ComplianceStandard `json:"standard"`
	MfaRequired        bool               `json:"mfaRequired"`
	PasswordMinLength  int                `json:"passwordMinLength"`
	RetentionDays      int                `json:"retentionDays"`
}

type ComplianceTemplateResponse

type ComplianceTemplateResponse struct {
	Standard string `json:"standard"`
}

type ComplianceTemplatesResponse

type ComplianceTemplatesResponse struct {
	Templates []*interface{} `json:"templates"`
}

type ComplianceTraining

type ComplianceTraining struct {
	AppId        string             `json:"appId"`
	CreatedAt    time.Time          `json:"createdAt"`
	Id           string             `json:"id"`
	Metadata     interface{}        `json:"metadata"`
	Standard     ComplianceStandard `json:"standard"`
	UserId       string             `json:"userId"`
	CompletedAt  Time               `json:"completedAt"`
	ExpiresAt    Time               `json:"expiresAt"`
	ProfileId    string             `json:"profileId"`
	Score        int                `json:"score"`
	Status       string             `json:"status"`
	TrainingType string             `json:"trainingType"`
}

type ComplianceTrainingResponse

type ComplianceTrainingResponse struct {
	Id string `json:"id"`
}

type ComplianceTrainingsResponse

type ComplianceTrainingsResponse struct {
	Training []*interface{} `json:"training"`
}

type ComplianceUserTrainingResponse

type ComplianceUserTrainingResponse struct {
	User_id string `json:"user_id"`
}

type ComplianceViolation

type ComplianceViolation struct {
	Description   string      `json:"description"`
	Id            string      `json:"id"`
	ResolvedBy    string      `json:"resolvedBy"`
	Severity      string      `json:"severity"`
	UserId        string      `json:"userId"`
	ViolationType string      `json:"violationType"`
	AppId         string      `json:"appId"`
	CreatedAt     time.Time   `json:"createdAt"`
	Metadata      interface{} `json:"metadata"`
	ProfileId     string      `json:"profileId"`
	ResolvedAt    Time        `json:"resolvedAt"`
	Status        string      `json:"status"`
}

type ComplianceViolationResponse

type ComplianceViolationResponse struct {
	Id string `json:"id"`
}

type ComplianceViolationsResponse

type ComplianceViolationsResponse struct {
	Violations []*interface{} `json:"violations"`
}

type Config

type Config struct {
	App_name                string          `json:"app_name"`
	Async                   AsyncConfig     `json:"async"`
	Auto_populate_templates bool            `json:"auto_populate_templates"`
	Auto_send               AutoSendConfig  `json:"auto_send"`
	Default_language        string          `json:"default_language"`
	Providers               ProvidersConfig `json:"providers"`
	Rate_limits             interface{}     `json:"rate_limits"`
	Allow_app_overrides     bool            `json:"allow_app_overrides"`
	Allow_template_reset    bool            `json:"allow_template_reset"`
	Auto_send_welcome       bool            `json:"auto_send_welcome"`
	Cleanup_after           time.Duration   `json:"cleanup_after"`
	Retry_attempts          int             `json:"retry_attempts"`
	Retry_delay             time.Duration   `json:"retry_delay"`
	Add_default_templates   bool            `json:"add_default_templates"`
}

type ConfigSourceConfig

type ConfigSourceConfig struct {
	Priority        int           `json:"priority"`
	RefreshInterval time.Duration `json:"refreshInterval"`
	AutoRefresh     bool          `json:"autoRefresh"`
	Enabled         bool          `json:"enabled"`
	Prefix          string        `json:"prefix"`
}

type ConfirmEmailChangeRequest

type ConfirmEmailChangeRequest struct {
	Token string `json:"token"`
}

type ConfirmEmailChangeResponse

type ConfirmEmailChangeResponse struct {
	Message string `json:"message"`
}

type ConnectionResponse

type ConnectionResponse struct {
	Connection SocialAccount `json:"connection"`
}

type ConnectionsResponse

type ConnectionsResponse struct {
	Connections SocialAccount `json:"connections"`
}

type ConsentAuditConfig

type ConsentAuditConfig struct {
	ArchiveOldLogs  bool          `json:"archiveOldLogs"`
	Enabled         bool          `json:"enabled"`
	ExportFormat    string        `json:"exportFormat"`
	Immutable       bool          `json:"immutable"`
	LogIpAddress    bool          `json:"logIpAddress"`
	LogUserAgent    bool          `json:"logUserAgent"`
	SignLogs        bool          `json:"signLogs"`
	LogAllChanges   bool          `json:"logAllChanges"`
	RetentionDays   int           `json:"retentionDays"`
	ArchiveInterval time.Duration `json:"archiveInterval"`
}

type ConsentAuditLog

type ConsentAuditLog struct {
	UserAgent      string    `json:"userAgent"`
	UserId         string    `json:"userId"`
	ConsentId      string    `json:"consentId"`
	ConsentType    string    `json:"consentType"`
	Id             xid.ID    `json:"id"`
	IpAddress      string    `json:"ipAddress"`
	OrganizationId string    `json:"organizationId"`
	PreviousValue  JSONBMap  `json:"previousValue"`
	Action         string    `json:"action"`
	CreatedAt      time.Time `json:"createdAt"`
	NewValue       JSONBMap  `json:"newValue"`
	Purpose        string    `json:"purpose"`
	Reason         string    `json:"reason"`
}

type ConsentAuditLogsResponse

type ConsentAuditLogsResponse struct {
	Audit_logs []*interface{} `json:"audit_logs"`
}

type ConsentCookieResponse

type ConsentCookieResponse struct {
	Preferences interface{} `json:"preferences"`
}

type ConsentDashboardConfig

type ConsentDashboardConfig struct {
	ShowDataDeletion      bool   `json:"showDataDeletion"`
	ShowDataExport        bool   `json:"showDataExport"`
	ShowPolicies          bool   `json:"showPolicies"`
	Enabled               bool   `json:"enabled"`
	Path                  string `json:"path"`
	ShowAuditLog          bool   `json:"showAuditLog"`
	ShowConsentHistory    bool   `json:"showConsentHistory"`
	ShowCookiePreferences bool   `json:"showCookiePreferences"`
}

type ConsentDecision

type ConsentDecision struct {
}

type ConsentDeletionResponse

type ConsentDeletionResponse struct {
	Id     string `json:"id"`
	Status string `json:"status"`
}

type ConsentExpiryConfig

type ConsentExpiryConfig struct {
	DefaultValidityDays int           `json:"defaultValidityDays"`
	Enabled             bool          `json:"enabled"`
	ExpireCheckInterval time.Duration `json:"expireCheckInterval"`
	RenewalReminderDays int           `json:"renewalReminderDays"`
	RequireReConsent    bool          `json:"requireReConsent"`
	AllowRenewal        bool          `json:"allowRenewal"`
	AutoExpireCheck     bool          `json:"autoExpireCheck"`
}

type ConsentExportFileResponse

type ConsentExportFileResponse struct {
	Content_type string `json:"content_type"`
	Data         []byte `json:"data"`
}

type ConsentExportResponse

type ConsentExportResponse struct {
	Id     string `json:"id"`
	Status string `json:"status"`
}

type ConsentManager

type ConsentManager struct {
}

type ConsentNotificationsConfig

type ConsentNotificationsConfig struct {
	Enabled                bool     `json:"enabled"`
	NotifyDeletionApproved bool     `json:"notifyDeletionApproved"`
	NotifyExportReady      bool     `json:"notifyExportReady"`
	NotifyOnGrant          bool     `json:"notifyOnGrant"`
	Channels               []string `json:"channels"`
	NotifyDeletionComplete bool     `json:"notifyDeletionComplete"`
	NotifyDpoEmail         string   `json:"notifyDpoEmail"`
	NotifyOnExpiry         bool     `json:"notifyOnExpiry"`
	NotifyOnRevoke         bool     `json:"notifyOnRevoke"`
}

type ConsentPolicy

type ConsentPolicy struct {
	Description    string    `json:"description"`
	Renewable      bool      `json:"renewable"`
	Name           string    `json:"name"`
	PublishedAt    Time      `json:"publishedAt"`
	ValidityPeriod *int      `json:"validityPeriod"`
	Active         bool      `json:"active"`
	ConsentType    string    `json:"consentType"`
	Content        string    `json:"content"`
	Id             xid.ID    `json:"id"`
	Metadata       JSONBMap  `json:"metadata"`
	OrganizationId string    `json:"organizationId"`
	UpdatedAt      time.Time `json:"updatedAt"`
	Required       bool      `json:"required"`
	Version        string    `json:"version"`
	CreatedAt      time.Time `json:"createdAt"`
	CreatedBy      string    `json:"createdBy"`
}

type ConsentPolicyResponse

type ConsentPolicyResponse struct {
	Id string `json:"id"`
}

type ConsentRecord

type ConsentRecord struct {
	ConsentType    string    `json:"consentType"`
	Id             xid.ID    `json:"id"`
	OrganizationId string    `json:"organizationId"`
	CreatedAt      time.Time `json:"createdAt"`
	Granted        bool      `json:"granted"`
	GrantedAt      time.Time `json:"grantedAt"`
	UserId         string    `json:"userId"`
	Version        string    `json:"version"`
	UserAgent      string    `json:"userAgent"`
	IpAddress      string    `json:"ipAddress"`
	Metadata       JSONBMap  `json:"metadata"`
	Purpose        string    `json:"purpose"`
	RevokedAt      Time      `json:"revokedAt"`
	UpdatedAt      time.Time `json:"updatedAt"`
	ExpiresAt      Time      `json:"expiresAt"`
}

type ConsentRecordResponse

type ConsentRecordResponse struct {
	Id string `json:"id"`
}

type ConsentReport

type ConsentReport struct {
	TotalUsers            int         `json:"totalUsers"`
	CompletedDeletions    int         `json:"completedDeletions"`
	ConsentRate           float64     `json:"consentRate"`
	DpasActive            int         `json:"dpasActive"`
	DpasExpiringSoon      int         `json:"dpasExpiringSoon"`
	OrganizationId        string      `json:"organizationId"`
	ReportPeriodEnd       time.Time   `json:"reportPeriodEnd"`
	UsersWithConsent      int         `json:"usersWithConsent"`
	ConsentsByType        interface{} `json:"consentsByType"`
	DataExportsThisPeriod int         `json:"dataExportsThisPeriod"`
	PendingDeletions      int         `json:"pendingDeletions"`
	ReportPeriodStart     time.Time   `json:"reportPeriodStart"`
}

type ConsentReportResponse

type ConsentReportResponse struct {
	Id string `json:"id"`
}

type ConsentRequest

type ConsentRequest struct {
	State                 string `json:"state"`
	Action                string `json:"action"`
	Client_id             string `json:"client_id"`
	Code_challenge        string `json:"code_challenge"`
	Code_challenge_method string `json:"code_challenge_method"`
	Redirect_uri          string `json:"redirect_uri"`
	Response_type         string `json:"response_type"`
	Scope                 string `json:"scope"`
}

type ConsentService

type ConsentService struct {
}

type ConsentSettingsResponse

type ConsentSettingsResponse struct {
	Settings interface{} `json:"settings"`
}

type ConsentStats

type ConsentStats struct {
	AverageLifetime int     `json:"averageLifetime"`
	ExpiredCount    int     `json:"expiredCount"`
	GrantRate       float64 `json:"grantRate"`
	GrantedCount    int     `json:"grantedCount"`
	RevokedCount    int     `json:"revokedCount"`
	TotalConsents   int     `json:"totalConsents"`
	Type            string  `json:"type"`
}

type ConsentStatusResponse

type ConsentStatusResponse struct {
	Status string `json:"status"`
}

type ConsentSummary

type ConsentSummary struct {
	ConsentsByType     interface{} `json:"consentsByType"`
	ExpiredConsents    int         `json:"expiredConsents"`
	HasPendingDeletion bool        `json:"hasPendingDeletion"`
	PendingRenewals    int         `json:"pendingRenewals"`
	GrantedConsents    int         `json:"grantedConsents"`
	HasPendingExport   bool        `json:"hasPendingExport"`
	LastConsentUpdate  Time        `json:"lastConsentUpdate"`
	OrganizationId     string      `json:"organizationId"`
	RevokedConsents    int         `json:"revokedConsents"`
	TotalConsents      int         `json:"totalConsents"`
	UserId             string      `json:"userId"`
}

type ConsentTypeStatus

type ConsentTypeStatus struct {
	NeedsRenewal bool      `json:"needsRenewal"`
	Type         string    `json:"type"`
	Version      string    `json:"version"`
	ExpiresAt    Time      `json:"expiresAt"`
	Granted      bool      `json:"granted"`
	GrantedAt    time.Time `json:"grantedAt"`
}

type ConsentsResponse

type ConsentsResponse struct {
	Consents interface{} `json:"consents"`
	Count    int         `json:"count"`
}

type ContentEntryHandler

type ContentEntryHandler struct {
}

type ContentTypeHandler

type ContentTypeHandler struct {
}

type ContextRule

type ContextRule struct {
	Security_level SecurityLevel `json:"security_level"`
	Condition      string        `json:"condition"`
	Description    string        `json:"description"`
	Name           string        `json:"name"`
	Org_id         string        `json:"org_id"`
}

type ContinueRecoveryRequest

type ContinueRecoveryRequest struct {
	Method    RecoveryMethod `json:"method"`
	SessionId xid.ID         `json:"sessionId"`
}

type ContinueRecoveryResponse

type ContinueRecoveryResponse struct {
	Data         interface{}    `json:"data"`
	ExpiresAt    time.Time      `json:"expiresAt"`
	Instructions string         `json:"instructions"`
	Method       RecoveryMethod `json:"method"`
	SessionId    xid.ID         `json:"sessionId"`
	TotalSteps   int            `json:"totalSteps"`
	CurrentStep  int            `json:"currentStep"`
}

type CookieConsent

type CookieConsent struct {
	Essential            bool      `json:"essential"`
	Id                   xid.ID    `json:"id"`
	UserAgent            string    `json:"userAgent"`
	Marketing            bool      `json:"marketing"`
	UpdatedAt            time.Time `json:"updatedAt"`
	ConsentBannerVersion string    `json:"consentBannerVersion"`
	CreatedAt            time.Time `json:"createdAt"`
	Functional           bool      `json:"functional"`
	Analytics            bool      `json:"analytics"`
	ExpiresAt            time.Time `json:"expiresAt"`
	IpAddress            string    `json:"ipAddress"`
	OrganizationId       string    `json:"organizationId"`
	Personalization      bool      `json:"personalization"`
	SessionId            string    `json:"sessionId"`
	ThirdParty           bool      `json:"thirdParty"`
	UserId               string    `json:"userId"`
}

type CookieConsentConfig

type CookieConsentConfig struct {
	BannerVersion   string        `json:"bannerVersion"`
	Categories      []string      `json:"categories"`
	DefaultStyle    string        `json:"defaultStyle"`
	Enabled         bool          `json:"enabled"`
	RequireExplicit bool          `json:"requireExplicit"`
	ValidityPeriod  time.Duration `json:"validityPeriod"`
	AllowAnonymous  bool          `json:"allowAnonymous"`
}

type CookieConsentRequest

type CookieConsentRequest struct {
	Analytics       bool   `json:"analytics"`
	BannerVersion   string `json:"bannerVersion"`
	Essential       bool   `json:"essential"`
	Functional      bool   `json:"functional"`
	Marketing       bool   `json:"marketing"`
	Personalization bool   `json:"personalization"`
	SessionId       string `json:"sessionId"`
	ThirdParty      bool   `json:"thirdParty"`
}

type CreateABTestVariant_req

type CreateABTestVariant_req struct {
	Name    string `json:"name"`
	Subject string `json:"subject"`
	Weight  int    `json:"weight"`
	Body    string `json:"body"`
}

type CreateAPIKeyRequest

type CreateAPIKeyRequest struct {
	Allowed_ips []string    `json:"allowed_ips"`
	Description string      `json:"description"`
	Metadata    interface{} `json:"metadata"`
	Name        string      `json:"name"`
	Permissions interface{} `json:"permissions"`
	Rate_limit  int         `json:"rate_limit"`
	Scopes      []string    `json:"scopes"`
}

type CreateAPIKeyResponse

type CreateAPIKeyResponse struct {
	Api_key APIKey `json:"api_key"`
	Message string `json:"message"`
}

type CreateActionRequest

type CreateActionRequest struct {
	Description string `json:"description"`
	Name        string `json:"name"`
	NamespaceId string `json:"namespaceId"`
}

type CreateAppRequest

type CreateAppRequest struct {
}

type CreateConsentPolicyRequest

type CreateConsentPolicyRequest struct {
	Version        string      `json:"version"`
	ConsentType    string      `json:"consentType"`
	Content        string      `json:"content"`
	Description    string      `json:"description"`
	Metadata       interface{} `json:"metadata"`
	Name           string      `json:"name"`
	Renewable      bool        `json:"renewable"`
	Required       bool        `json:"required"`
	ValidityPeriod *int        `json:"validityPeriod"`
}

type CreateConsentPolicyResponse

type CreateConsentPolicyResponse struct {
	Id string `json:"id"`
}

type CreateConsentRequest

type CreateConsentRequest struct {
	Purpose     string      `json:"purpose"`
	UserId      string      `json:"userId"`
	Version     string      `json:"version"`
	ConsentType string      `json:"consentType"`
	ExpiresIn   *int        `json:"expiresIn"`
	Granted     bool        `json:"granted"`
	Metadata    interface{} `json:"metadata"`
}

type CreateConsentResponse

type CreateConsentResponse struct {
	Id string `json:"id"`
}

type CreateDPARequest

type CreateDPARequest struct {
	SignedByEmail string      `json:"signedByEmail"`
	SignedByTitle string      `json:"signedByTitle"`
	AgreementType string      `json:"agreementType"`
	EffectiveDate time.Time   `json:"effectiveDate"`
	ExpiryDate    Time        `json:"expiryDate"`
	SignedByName  string      `json:"signedByName"`
	Version       string      `json:"version"`
	Content       string      `json:"content"`
	Metadata      interface{} `json:"metadata"`
}

type CreateEntryRequest

type CreateEntryRequest struct {
}

type CreateEvidenceRequest

type CreateEvidenceRequest struct {
	FileUrl      string             `json:"fileUrl"`
	Standard     ComplianceStandard `json:"standard"`
	Title        string             `json:"title"`
	ControlId    string             `json:"controlId"`
	Description  string             `json:"description"`
	EvidenceType string             `json:"evidenceType"`
}

type CreateEvidenceResponse

type CreateEvidenceResponse struct {
	Id string `json:"id"`
}

type CreateEvidence_req

type CreateEvidence_req struct {
	Description  string             `json:"description"`
	EvidenceType string             `json:"evidenceType"`
	FileUrl      string             `json:"fileUrl"`
	Standard     ComplianceStandard `json:"standard"`
	Title        string             `json:"title"`
	ControlId    string             `json:"controlId"`
}

type CreateJWTKeyRequest

type CreateJWTKeyRequest struct {
	Curve         string      `json:"curve"`
	ExpiresAt     Time        `json:"expiresAt"`
	IsPlatformKey bool        `json:"isPlatformKey"`
	KeyType       string      `json:"keyType"`
	Metadata      interface{} `json:"metadata"`
	Algorithm     string      `json:"algorithm"`
}

type CreateNamespaceRequest

type CreateNamespaceRequest struct {
	InheritPlatform bool   `json:"inheritPlatform"`
	Name            string `json:"name"`
	TemplateId      string `json:"templateId"`
	Description     string `json:"description"`
}

type CreateOrganizationHandlerRequest

type CreateOrganizationHandlerRequest struct {
}

type CreateOrganizationInput

type CreateOrganizationInput struct {
	Name     string      `json:"name"`
	Slug     string      `json:"slug"`
	AppId    string      `json:"appId"`
	Metadata interface{} `json:"metadata"`
}

type CreateOrganizationResult

type CreateOrganizationResult struct {
	Organization OrganizationDetailDTO `json:"organization"`
}

type CreatePolicyRequest

type CreatePolicyRequest struct {
	Priority     int      `json:"priority"`
	ResourceType string   `json:"resourceType"`
	Actions      []string `json:"actions"`
	Description  string   `json:"description"`
	Enabled      bool     `json:"enabled"`
	Expression   string   `json:"expression"`
	Name         string   `json:"name"`
	NamespaceId  string   `json:"namespaceId"`
}

type CreatePolicyResponse

type CreatePolicyResponse struct {
	Id string `json:"id"`
}

type CreatePolicy_req

type CreatePolicy_req struct {
	Content    string             `json:"content"`
	PolicyType string             `json:"policyType"`
	Standard   ComplianceStandard `json:"standard"`
	Title      string             `json:"title"`
	Version    string             `json:"version"`
}

type CreateProfileFromTemplateRequest

type CreateProfileFromTemplateRequest struct {
	Standard ComplianceStandard `json:"standard"`
}

type CreateProfileFromTemplateResponse

type CreateProfileFromTemplateResponse struct {
	Id string `json:"id"`
}

type CreateProfileFromTemplate_req

type CreateProfileFromTemplate_req struct {
	Standard ComplianceStandard `json:"standard"`
}

type CreateProfileRequest

type CreateProfileRequest struct {
	DataResidency         string               `json:"dataResidency"`
	Name                  string               `json:"name"`
	PasswordRequireSymbol bool                 `json:"passwordRequireSymbol"`
	RegularAccessReview   bool                 `json:"regularAccessReview"`
	RetentionDays         int                  `json:"retentionDays"`
	DpoContact            string               `json:"dpoContact"`
	Metadata              interface{}          `json:"metadata"`
	SessionIpBinding      bool                 `json:"sessionIpBinding"`
	SessionMaxAge         int                  `json:"sessionMaxAge"`
	Standards             []ComplianceStandard `json:"standards"`
	DetailedAuditTrail    bool                 `json:"detailedAuditTrail"`
	PasswordExpiryDays    int                  `json:"passwordExpiryDays"`
	PasswordMinLength     int                  `json:"passwordMinLength"`
	PasswordRequireUpper  bool                 `json:"passwordRequireUpper"`
	SessionIdleTimeout    int                  `json:"sessionIdleTimeout"`
	EncryptionAtRest      bool                 `json:"encryptionAtRest"`
	EncryptionInTransit   bool                 `json:"encryptionInTransit"`
	LeastPrivilege        bool                 `json:"leastPrivilege"`
	MfaRequired           bool                 `json:"mfaRequired"`
	PasswordRequireLower  bool                 `json:"passwordRequireLower"`
	PasswordRequireNumber bool                 `json:"passwordRequireNumber"`
	RbacRequired          bool                 `json:"rbacRequired"`
	AppId                 string               `json:"appId"`
	AuditLogExport        bool                 `json:"auditLogExport"`
	ComplianceContact     string               `json:"complianceContact"`
}

type CreateProfileResponse

type CreateProfileResponse struct {
	Id string `json:"id"`
}

type CreateProvider_req

type CreateProvider_req struct {
	Config         interface{} `json:"config"`
	IsDefault      bool        `json:"isDefault"`
	OrganizationId *string     `json:"organizationId,omitempty"`
	ProviderName   string      `json:"providerName"`
	ProviderType   string      `json:"providerType"`
}

type CreateRequest

type CreateRequest struct {
	Url    string   `json:"url"`
	Events []string `json:"events"`
	Secret *string  `json:"secret,omitempty"`
}

type CreateResourceRequest

type CreateResourceRequest struct {
	Attributes  []ResourceAttributeRequest `json:"attributes"`
	Description string                     `json:"description"`
	NamespaceId string                     `json:"namespaceId"`
	Type        string                     `json:"type"`
}

type CreateResponse

type CreateResponse struct {
	Webhook Webhook `json:"webhook"`
}

type CreateRoleTemplateInput

type CreateRoleTemplateInput struct {
	AppId       string   `json:"appId"`
	Description string   `json:"description"`
	Name        string   `json:"name"`
	Permissions []string `json:"permissions"`
}

type CreateRoleTemplateResult

type CreateRoleTemplateResult struct {
	Template RoleTemplateDTO `json:"template"`
}

type CreateSecretInput

type CreateSecretInput struct {
	Description string      `json:"description"`
	Path        string      `json:"path"`
	Tags        []string    `json:"tags"`
	Value       interface{} `json:"value"`
	ValueType   string      `json:"valueType"`
	AppId       string      `json:"appId"`
}

type CreateSecretOutput

type CreateSecretOutput struct {
	Secret SecretItem `json:"secret"`
}

type CreateSecretRequest

type CreateSecretRequest struct {
	Description string      `json:"description"`
	Metadata    interface{} `json:"metadata"`
	Path        string      `json:"path"`
	Tags        []string    `json:"tags"`
	Value       interface{} `json:"value"`
	ValueType   string      `json:"valueType"`
}

type CreateSessionHTTPRequest

type CreateSessionHTTPRequest struct {
	CancelUrl      string      `json:"cancelUrl"`
	Config         interface{} `json:"config"`
	Metadata       interface{} `json:"metadata"`
	Provider       string      `json:"provider"`
	RequiredChecks []string    `json:"requiredChecks"`
	SuccessUrl     string      `json:"successUrl"`
}

type CreateSessionRequest

type CreateSessionRequest struct {
}

type CreateTeamHandlerRequest

type CreateTeamHandlerRequest struct {
}

type CreateTeamInput

type CreateTeamInput struct {
	AppId       string      `json:"appId"`
	Description string      `json:"description"`
	Metadata    interface{} `json:"metadata"`
	Name        string      `json:"name"`
	OrgId       string      `json:"orgId"`
}

type CreateTeamRequest

type CreateTeamRequest struct {
	Description string `json:"description"`
	Name        string `json:"name"`
}

type CreateTeamResult

type CreateTeamResult struct {
	Team TeamDTO `json:"team"`
}

type CreateTemplateInput

type CreateTemplateInput struct {
	Subject     string      `json:"subject"`
	TemplateKey string      `json:"templateKey"`
	Type        string      `json:"type"`
	Variables   []string    `json:"variables"`
	Body        string      `json:"body"`
	Language    string      `json:"language"`
	Metadata    interface{} `json:"metadata"`
	Name        string      `json:"name"`
}

type CreateTemplateResponse

type CreateTemplateResponse struct {
	Template interface{} `json:"template"`
}

type CreateTemplateResult

type CreateTemplateResult struct {
	Message  string      `json:"message"`
	Success  bool        `json:"success"`
	Template TemplateDTO `json:"template"`
}

type CreateTemplateVersion_req

type CreateTemplateVersion_req struct {
	Changes string `json:"changes"`
}

type CreateTrainingRequest

type CreateTrainingRequest struct {
	TrainingType string             `json:"trainingType"`
	UserId       string             `json:"userId"`
	Standard     ComplianceStandard `json:"standard"`
}

type CreateTrainingResponse

type CreateTrainingResponse struct {
	Id string `json:"id"`
}

type CreateTraining_req

type CreateTraining_req struct {
	Standard     ComplianceStandard `json:"standard"`
	TrainingType string             `json:"trainingType"`
	UserId       string             `json:"userId"`
}

type CreateUserRequest

type CreateUserRequest struct {
	Email_verified       bool        `json:"email_verified"`
	Metadata             interface{} `json:"metadata"`
	Password             string      `json:"password"`
	Role                 string      `json:"role"`
	User_organization_id ID          `json:"user_organization_id"`
	Username             string      `json:"username"`
	App_id               xid.ID      `json:"app_id"`
	Name                 string      `json:"name"`
	Email                string      `json:"email"`
}

type CreateUserRequestDTO

type CreateUserRequestDTO struct {
	Email          string      `json:"email"`
	Email_verified bool        `json:"email_verified"`
	Metadata       interface{} `json:"metadata"`
	Name           string      `json:"name"`
	Password       string      `json:"password"`
	Role           string      `json:"role"`
	Username       string      `json:"username"`
}

type CreateVerificationRequest

type CreateVerificationRequest struct {
}

type CreateVerificationSessionRequest

type CreateVerificationSessionRequest struct {
	CancelUrl      string      `json:"cancelUrl"`
	Config         interface{} `json:"config"`
	Metadata       interface{} `json:"metadata"`
	Provider       string      `json:"provider"`
	RequiredChecks []string    `json:"requiredChecks"`
	SuccessUrl     string      `json:"successUrl"`
}

type CreateVerificationSessionResponse

type CreateVerificationSessionResponse struct {
	Session interface{} `json:"session"`
}

type CreateVerificationSession_req

type CreateVerificationSession_req struct {
	CancelUrl      string      `json:"cancelUrl"`
	Config         interface{} `json:"config"`
	Metadata       interface{} `json:"metadata"`
	Provider       string      `json:"provider"`
	RequiredChecks []string    `json:"requiredChecks"`
	SuccessUrl     string      `json:"successUrl"`
}

type DailyAnalyticsDTO

type DailyAnalyticsDTO struct {
	TotalOpened    int64   `json:"totalOpened"`
	TotalSent      int64   `json:"totalSent"`
	Date           string  `json:"date"`
	DeliveryRate   float64 `json:"deliveryRate"`
	OpenRate       float64 `json:"openRate"`
	TotalClicked   int64   `json:"totalClicked"`
	TotalDelivered int64   `json:"totalDelivered"`
}

type DashboardConfig

type DashboardConfig struct {
	Enabled          bool   `json:"enabled"`
	Path             string `json:"path"`
	ShowRecentChecks bool   `json:"showRecentChecks"`
	ShowReports      bool   `json:"showReports"`
	ShowScore        bool   `json:"showScore"`
	ShowViolations   bool   `json:"showViolations"`
}

type DashboardExtension

type DashboardExtension struct {
}

type DataDeletionConfig

type DataDeletionConfig struct {
	PreserveLegalData     bool     `json:"preserveLegalData"`
	RequireAdminApproval  bool     `json:"requireAdminApproval"`
	ArchiveBeforeDeletion bool     `json:"archiveBeforeDeletion"`
	GracePeriodDays       int      `json:"gracePeriodDays"`
	NotifyBeforeDeletion  bool     `json:"notifyBeforeDeletion"`
	RetentionExemptions   []string `json:"retentionExemptions"`
	AllowPartialDeletion  bool     `json:"allowPartialDeletion"`
	ArchivePath           string   `json:"archivePath"`
	AutoProcessAfterGrace bool     `json:"autoProcessAfterGrace"`
	Enabled               bool     `json:"enabled"`
}

type DataDeletionRequest

type DataDeletionRequest struct {
	CompletedAt     Time      `json:"completedAt"`
	ErrorMessage    string    `json:"errorMessage"`
	OrganizationId  string    `json:"organizationId"`
	RejectedAt      Time      `json:"rejectedAt"`
	RetentionExempt bool      `json:"retentionExempt"`
	UpdatedAt       time.Time `json:"updatedAt"`
	ApprovedAt      Time      `json:"approvedAt"`
	ApprovedBy      string    `json:"approvedBy"`
	CreatedAt       time.Time `json:"createdAt"`
	RequestReason   string    `json:"requestReason"`
	Status          string    `json:"status"`
	ArchivePath     string    `json:"archivePath"`
	DeleteSections  []string  `json:"deleteSections"`
	IpAddress       string    `json:"ipAddress"`
	UserId          string    `json:"userId"`
	ExemptionReason string    `json:"exemptionReason"`
	Id              xid.ID    `json:"id"`
}

type DataDeletionRequestInput

type DataDeletionRequestInput struct {
	DeleteSections []string `json:"deleteSections"`
	Reason         string   `json:"reason"`
}

type DataExportConfig

type DataExportConfig struct {
	AllowedFormats  []string      `json:"allowedFormats"`
	CleanupInterval time.Duration `json:"cleanupInterval"`
	DefaultFormat   string        `json:"defaultFormat"`
	ExpiryHours     int           `json:"expiryHours"`
	IncludeSections []string      `json:"includeSections"`
	MaxExportSize   int64         `json:"maxExportSize"`
	MaxRequests     int           `json:"maxRequests"`
	RequestPeriod   time.Duration `json:"requestPeriod"`
	AutoCleanup     bool          `json:"autoCleanup"`
	Enabled         bool          `json:"enabled"`
	StoragePath     string        `json:"storagePath"`
}

type DataExportRequest

type DataExportRequest struct {
	CreatedAt       time.Time `json:"createdAt"`
	ExpiresAt       Time      `json:"expiresAt"`
	ExportUrl       string    `json:"exportUrl"`
	UpdatedAt       time.Time `json:"updatedAt"`
	CompletedAt     Time      `json:"completedAt"`
	ExportPath      string    `json:"exportPath"`
	Format          string    `json:"format"`
	Id              xid.ID    `json:"id"`
	IpAddress       string    `json:"ipAddress"`
	ErrorMessage    string    `json:"errorMessage"`
	ExportSize      int64     `json:"exportSize"`
	OrganizationId  string    `json:"organizationId"`
	UserId          string    `json:"userId"`
	IncludeSections []string  `json:"includeSections"`
	Status          string    `json:"status"`
}

type DataExportRequestInput

type DataExportRequestInput struct {
	Format          string   `json:"format"`
	IncludeSections []string `json:"includeSections"`
}

type DataProcessingAgreement

type DataProcessingAgreement struct {
	CreatedAt        time.Time `json:"createdAt"`
	IpAddress        string    `json:"ipAddress"`
	Metadata         JSONBMap  `json:"metadata"`
	SignedByName     string    `json:"signedByName"`
	AgreementType    string    `json:"agreementType"`
	EffectiveDate    time.Time `json:"effectiveDate"`
	ExpiryDate       Time      `json:"expiryDate"`
	SignedBy         string    `json:"signedBy"`
	SignedByEmail    string    `json:"signedByEmail"`
	UpdatedAt        time.Time `json:"updatedAt"`
	Version          string    `json:"version"`
	DigitalSignature string    `json:"digitalSignature"`
	Id               xid.ID    `json:"id"`
	OrganizationId   string    `json:"organizationId"`
	Status           string    `json:"status"`
	Content          string    `json:"content"`
	SignedByTitle    string    `json:"signedByTitle"`
}

type DeclareABTestWinnerRequest

type DeclareABTestWinnerRequest struct {
}

type DeclareABTestWinner_req

type DeclareABTestWinner_req struct {
	AbTestGroup string `json:"abTestGroup"`
	WinnerId    string `json:"winnerId"`
}

type DeclineInvitationRequest

type DeclineInvitationRequest struct {
}

type DefaultProviderRegistry

type DefaultProviderRegistry struct {
}

type DeleteAPIKeyRequest

type DeleteAPIKeyRequest struct {
}

type DeleteAppRequest

type DeleteAppRequest struct {
}

type DeleteContentTypeRequest

type DeleteContentTypeRequest struct {
}

type DeleteEntryRequest

type DeleteEntryRequest struct {
}

type DeleteEvidenceResponse

type DeleteEvidenceResponse struct {
	Status string `json:"status"`
}

type DeleteFactorRequest

type DeleteFactorRequest struct {
}

type DeleteFieldRequest

type DeleteFieldRequest struct {
}

type DeleteOrganizationInput

type DeleteOrganizationInput struct {
	AppId string `json:"appId"`
	OrgId string `json:"orgId"`
}

type DeleteOrganizationRequest

type DeleteOrganizationRequest struct {
}

type DeleteOrganizationResult

type DeleteOrganizationResult struct {
	Success bool `json:"success"`
}

type DeletePasskeyRequest

type DeletePasskeyRequest struct {
}

type DeletePolicyResponse

type DeletePolicyResponse struct {
	Status string `json:"status"`
}

type DeleteProfileResponse

type DeleteProfileResponse struct {
	Status string `json:"status"`
}

type DeleteProviderRequest

type DeleteProviderRequest struct {
}

type DeleteRequest

type DeleteRequest struct {
	Id string `json:"id"`
}

type DeleteResponse

type DeleteResponse struct {
	Success bool `json:"success"`
}

type DeleteRoleTemplateInput

type DeleteRoleTemplateInput struct {
	AppId      string `json:"appId"`
	TemplateId string `json:"templateId"`
}

type DeleteRoleTemplateResult

type DeleteRoleTemplateResult struct {
	Success bool `json:"success"`
}

type DeleteSecretInput

type DeleteSecretInput struct {
	AppId    string `json:"appId"`
	SecretId string `json:"secretId"`
}

type DeleteSecretOutput

type DeleteSecretOutput struct {
	Message string `json:"message"`
	Success bool   `json:"success"`
}

type DeleteSecretRequest

type DeleteSecretRequest struct {
}

type DeleteTeamInput

type DeleteTeamInput struct {
	AppId  string `json:"appId"`
	OrgId  string `json:"orgId"`
	TeamId string `json:"teamId"`
}

type DeleteTeamRequest

type DeleteTeamRequest struct {
}

type DeleteTeamResult

type DeleteTeamResult struct {
	Success bool `json:"success"`
}

type DeleteTemplateInput

type DeleteTemplateInput struct {
	TemplateId string `json:"templateId"`
}

type DeleteTemplateRequest

type DeleteTemplateRequest struct {
}

type DeleteTemplateResponse

type DeleteTemplateResponse struct {
	Status string `json:"status"`
}

type DeleteTemplateResult

type DeleteTemplateResult struct {
	Message string `json:"message"`
	Success bool   `json:"success"`
}

type DeleteUserRequestDTO

type DeleteUserRequestDTO struct {
}

type Device

type Device struct {
	Type       *string `json:"type,omitempty"`
	LastUsedAt string  `json:"lastUsedAt"`
	IpAddress  *string `json:"ipAddress,omitempty"`
	UserAgent  *string `json:"userAgent,omitempty"`
	Id         string  `json:"id"`
	UserId     string  `json:"userId"`
	Name       *string `json:"name,omitempty"`
}

Device represents User device

type DeviceAuthorizationDecisionRequest

type DeviceAuthorizationDecisionRequest struct {
	Action    string `json:"action"`
	User_code string `json:"user_code"`
}

type DeviceAuthorizationRequest

type DeviceAuthorizationRequest struct {
	Client_id string `json:"client_id"`
	Scope     string `json:"scope"`
}

type DeviceAuthorizationResponse

type DeviceAuthorizationResponse struct {
	Verification_uri_complete string `json:"verification_uri_complete"`
	Device_code               string `json:"device_code"`
	Expires_in                int    `json:"expires_in"`
	Interval                  int    `json:"interval"`
	User_code                 string `json:"user_code"`
	Verification_uri          string `json:"verification_uri"`
}

type DeviceAuthorizeDecisionRequest

type DeviceAuthorizeDecisionRequest struct {
	User_code string `json:"user_code"`
	Action    string `json:"action"`
}

type DeviceAuthorizeDecisionResponse

type DeviceAuthorizeDecisionResponse struct {
	Success  bool   `json:"success"`
	Approved bool   `json:"approved"`
	Message  string `json:"message"`
}

type DeviceAuthorizeRequest

type DeviceAuthorizeRequest struct {
	Client_id string `json:"client_id"`
	Scope     string `json:"scope"`
}

type DeviceAuthorizeResponse

type DeviceAuthorizeResponse struct {
	Device_code               string `json:"device_code"`
	Expires_in                int    `json:"expires_in"`
	Interval                  int    `json:"interval"`
	User_code                 string `json:"user_code"`
	Verification_uri          string `json:"verification_uri"`
	Verification_uri_complete string `json:"verification_uri_complete"`
}

type DeviceCodeEntryResponse

type DeviceCodeEntryResponse struct {
	BasePath    string `json:"basePath"`
	FormAction  string `json:"formAction"`
	Placeholder string `json:"placeholder"`
}

type DeviceDecisionResponse

type DeviceDecisionResponse struct {
	Approved bool   `json:"approved"`
	Message  string `json:"message"`
	Success  bool   `json:"success"`
}

type DeviceInfo

type DeviceInfo struct {
}

type DeviceVerificationInfo

type DeviceVerificationInfo struct {
}

type DeviceVerificationRequest

type DeviceVerificationRequest struct {
	User_code string `json:"user_code"`
}

type DeviceVerifyRequest

type DeviceVerifyRequest struct {
	User_code string `json:"user_code"`
}

type DeviceVerifyResponse

type DeviceVerifyResponse struct {
	UserCode          string      `json:"userCode"`
	UserCodeFormatted string      `json:"userCodeFormatted"`
	AuthorizeUrl      string      `json:"authorizeUrl"`
	ClientId          string      `json:"clientId"`
	ClientName        string      `json:"clientName"`
	LogoUri           string      `json:"logoUri"`
	Scopes            []ScopeInfo `json:"scopes"`
}

type DevicesResponse

type DevicesResponse struct {
	Count   int         `json:"count"`
	Devices interface{} `json:"devices"`
}

type DisableRequest

type DisableRequest struct {
	User_id string `json:"user_id"`
}

type DiscoverProviderRequest

type DiscoverProviderRequest struct {
	Email string `json:"email"`
}

type DiscoveryResponse

type DiscoveryResponse struct {
	Revocation_endpoint                           string   `json:"revocation_endpoint"`
	Revocation_endpoint_auth_methods_supported    []string `json:"revocation_endpoint_auth_methods_supported"`
	Scopes_supported                              []string `json:"scopes_supported"`
	Subject_types_supported                       []string `json:"subject_types_supported"`
	Token_endpoint                                string   `json:"token_endpoint"`
	Claims_parameter_supported                    bool     `json:"claims_parameter_supported"`
	Introspection_endpoint                        string   `json:"introspection_endpoint"`
	Jwks_uri                                      string   `json:"jwks_uri"`
	Registration_endpoint                         string   `json:"registration_endpoint"`
	Request_uri_parameter_supported               bool     `json:"request_uri_parameter_supported"`
	Response_modes_supported                      []string `json:"response_modes_supported"`
	Userinfo_endpoint                             string   `json:"userinfo_endpoint"`
	Authorization_endpoint                        string   `json:"authorization_endpoint"`
	Device_authorization_endpoint                 string   `json:"device_authorization_endpoint"`
	Id_token_signing_alg_values_supported         []string `json:"id_token_signing_alg_values_supported"`
	Request_parameter_supported                   bool     `json:"request_parameter_supported"`
	Response_types_supported                      []string `json:"response_types_supported"`
	Token_endpoint_auth_methods_supported         []string `json:"token_endpoint_auth_methods_supported"`
	Code_challenge_methods_supported              []string `json:"code_challenge_methods_supported"`
	Grant_types_supported                         []string `json:"grant_types_supported"`
	Introspection_endpoint_auth_methods_supported []string `json:"introspection_endpoint_auth_methods_supported"`
	Issuer                                        string   `json:"issuer"`
	Claims_supported                              []string `json:"claims_supported"`
	Require_request_uri_registration              bool     `json:"require_request_uri_registration"`
}

type DiscoveryService

type DiscoveryService struct {
}

type DocumentCheckConfig

type DocumentCheckConfig struct {
	Enabled                 bool `json:"enabled"`
	ExtractData             bool `json:"extractData"`
	ValidateDataConsistency bool `json:"validateDataConsistency"`
	ValidateExpiry          bool `json:"validateExpiry"`
}

type DocumentVerification

type DocumentVerification struct {
}

type DocumentVerificationConfig

type DocumentVerificationConfig struct {
	StoragePath         string        `json:"storagePath"`
	AcceptedDocuments   []string      `json:"acceptedDocuments"`
	Provider            string        `json:"provider"`
	RequireManualReview bool          `json:"requireManualReview"`
	RetentionPeriod     time.Duration `json:"retentionPeriod"`
	StorageProvider     string        `json:"storageProvider"`
	Enabled             bool          `json:"enabled"`
	EncryptAtRest       bool          `json:"encryptAtRest"`
	EncryptionKey       string        `json:"encryptionKey"`
	MinConfidenceScore  float64       `json:"minConfidenceScore"`
	RequireBothSides    bool          `json:"requireBothSides"`
	RequireSelfie       bool          `json:"requireSelfie"`
}

type DocumentVerificationRequest

type DocumentVerificationRequest struct {
}

type DocumentVerificationResult

type DocumentVerificationResult struct {
}

type DownloadDataExportResponse

type DownloadDataExportResponse struct {
	Content_type string `json:"content_type"`
	Data         []byte `json:"data"`
}

type DownloadReportResponse

type DownloadReportResponse struct {
	Content_type string `json:"content_type"`
	Data         []byte `json:"data"`
}

type Email

type Email struct {
}

type EmailConfig

type EmailConfig struct {
	Code_expiry_minutes int              `json:"code_expiry_minutes"`
	Code_length         int              `json:"code_length"`
	Enabled             bool             `json:"enabled"`
	Provider            string           `json:"provider"`
	Rate_limit          *RateLimitConfig `json:"rate_limit"`
	Template_id         string           `json:"template_id"`
}

type EmailFactorAdapter

type EmailFactorAdapter struct {
}

type EmailProviderConfig

type EmailProviderConfig struct {
	Config    interface{} `json:"config"`
	From      string      `json:"from"`
	From_name string      `json:"from_name"`
	Provider  string      `json:"provider"`
	Reply_to  string      `json:"reply_to"`
}

type EmailProviderDTO

type EmailProviderDTO struct {
	Config    interface{} `json:"config"`
	Enabled   bool        `json:"enabled"`
	FromEmail string      `json:"fromEmail"`
	FromName  string      `json:"fromName"`
	Type      string      `json:"type"`
}

type EmailServiceAdapter

type EmailServiceAdapter struct {
}

type EmailVerificationConfig

type EmailVerificationConfig struct {
	CodeLength        int           `json:"codeLength"`
	EmailTemplate     string        `json:"emailTemplate"`
	Enabled           bool          `json:"enabled"`
	FromAddress       string        `json:"fromAddress"`
	FromName          string        `json:"fromName"`
	MaxAttempts       int           `json:"maxAttempts"`
	RequireEmailProof bool          `json:"requireEmailProof"`
	CodeExpiry        time.Duration `json:"codeExpiry"`
}

type EnableRequest

type EnableRequest struct {
}

type EnableRequest2FA

type EnableRequest2FA struct {
	Method  string `json:"method"`
	User_id string `json:"user_id"`
}

type EnableResponse

type EnableResponse struct {
	Totp_uri string `json:"totp_uri"`
	Status   string `json:"status"`
}

type EncryptionConfig

type EncryptionConfig struct {
	MasterKey      string        `json:"masterKey"`
	RotateKeyAfter time.Duration `json:"rotateKeyAfter"`
	TestOnStartup  bool          `json:"testOnStartup"`
}

type EncryptionService

type EncryptionService struct {
}

type EndImpersonationRequest

type EndImpersonationRequest struct {
	Impersonation_id string `json:"impersonation_id"`
	Reason           string `json:"reason"`
}

type EndImpersonationResponse

type EndImpersonationResponse struct {
	Ended_at string `json:"ended_at"`
	Status   string `json:"status"`
}

type EnrollFactorRequest

type EnrollFactorRequest struct {
	Metadata interface{}    `json:"metadata"`
	Name     string         `json:"name"`
	Priority FactorPriority `json:"priority"`
	Type     FactorType     `json:"type"`
}

type EnrollFactorResponse

type EnrollFactorResponse struct {
	Type             FactorType   `json:"type"`
	FactorId         xid.ID       `json:"factorId"`
	ProvisioningData interface{}  `json:"provisioningData"`
	Status           FactorStatus `json:"status"`
}

type Error

type Error struct {
	Message    string
	StatusCode int
	Code       string
}

Error represents an API error

func NewError

func NewError(statusCode int, message string) *Error

NewError creates an error from a status code and message

func (*Error) Error

func (e *Error) Error() string

type ErrorResponse

type ErrorResponse struct {
	Code    string      `json:"code"`
	Details interface{} `json:"details"`
	Error   string      `json:"error"`
}

type EvaluateRequest

type EvaluateRequest struct {
	Resource     interface{} `json:"resource"`
	ResourceId   string      `json:"resourceId"`
	ResourceType string      `json:"resourceType"`
	Action       string      `json:"action"`
	Context      interface{} `json:"context"`
	Principal    interface{} `json:"principal"`
	Request      interface{} `json:"request"`
}

type EvaluateResponse

type EvaluateResponse struct {
	Error             string   `json:"error"`
	EvaluatedPolicies int      `json:"evaluatedPolicies"`
	EvaluationTimeMs  float64  `json:"evaluationTimeMs"`
	MatchedPolicies   []string `json:"matchedPolicies"`
	Reason            string   `json:"reason"`
	Allowed           bool     `json:"allowed"`
	CacheHit          bool     `json:"cacheHit"`
}

type EvaluationContext

type EvaluationContext struct {
}

type EvaluationResult

type EvaluationResult struct {
	Matched_rules        []string             `json:"matched_rules"`
	Metadata             interface{}          `json:"metadata"`
	Reason               string               `json:"reason"`
	Required             bool                 `json:"required"`
	Requirement_id       string               `json:"requirement_id"`
	Security_level       SecurityLevel        `json:"security_level"`
	Can_remember         bool                 `json:"can_remember"`
	Challenge_token      string               `json:"challenge_token"`
	Expires_at           time.Time            `json:"expires_at"`
	Grace_period_ends_at time.Time            `json:"grace_period_ends_at"`
	Allowed_methods      []VerificationMethod `json:"allowed_methods"`
	Current_level        SecurityLevel        `json:"current_level"`
}

type FacialCheckConfig

type FacialCheckConfig struct {
	Enabled       bool   `json:"enabled"`
	MotionCapture bool   `json:"motionCapture"`
	Variant       string `json:"variant"`
}

type Factor

type Factor struct {
	UserId     xid.ID         `json:"userId"`
	Id         xid.ID         `json:"id"`
	LastUsedAt Time           `json:"lastUsedAt"`
	Metadata   interface{}    `json:"metadata"`
	Status     FactorStatus   `json:"status"`
	Type       FactorType     `json:"type"`
	VerifiedAt Time           `json:"verifiedAt"`
	CreatedAt  time.Time      `json:"createdAt"`
	ExpiresAt  Time           `json:"expiresAt"`
	Name       string         `json:"name"`
	Priority   FactorPriority `json:"priority"`
	UpdatedAt  time.Time      `json:"updatedAt"`
}

type FactorAdapterRegistry

type FactorAdapterRegistry struct {
}

type FactorEnrollmentRequest

type FactorEnrollmentRequest struct {
	Metadata interface{}    `json:"metadata"`
	Name     string         `json:"name"`
	Priority FactorPriority `json:"priority"`
	Type     FactorType     `json:"type"`
}

type FactorEnrollmentResponse

type FactorEnrollmentResponse struct {
	FactorId         xid.ID       `json:"factorId"`
	ProvisioningData interface{}  `json:"provisioningData"`
	Status           FactorStatus `json:"status"`
	Type             FactorType   `json:"type"`
}

type FactorInfo

type FactorInfo struct {
	FactorId xid.ID      `json:"factorId"`
	Metadata interface{} `json:"metadata"`
	Name     string      `json:"name"`
	Type     FactorType  `json:"type"`
}

type FactorPriority

type FactorPriority = string

Placeholder type aliases for undefined enum/custom types

type FactorStatus

type FactorStatus = string

Placeholder type aliases for undefined enum/custom types

type FactorType

type FactorType = string

Placeholder type aliases for undefined enum/custom types

type FactorVerificationRequest

type FactorVerificationRequest struct {
	Code     string      `json:"code"`
	Data     interface{} `json:"data"`
	FactorId xid.ID      `json:"factorId"`
}

type FactorsResponse

type FactorsResponse struct {
	Count   int         `json:"count"`
	Factors interface{} `json:"factors"`
}

type FinishLoginRequest

type FinishLoginRequest struct {
	Remember bool        `json:"remember"`
	Response interface{} `json:"response"`
}

type FinishRegisterRequest

type FinishRegisterRequest struct {
	Name     string      `json:"name"`
	Response interface{} `json:"response"`
	UserId   string      `json:"userId"`
}

type FinishRegisterResponse

type FinishRegisterResponse struct {
	Status       string    `json:"status"`
	CreatedAt    time.Time `json:"createdAt"`
	CredentialId string    `json:"credentialId"`
	Name         string    `json:"name"`
	PasskeyId    string    `json:"passkeyId"`
}

type ForgetDeviceResponse

type ForgetDeviceResponse struct {
	Message string `json:"message"`
	Success bool   `json:"success"`
}

type GenerateBackupCodesResponse

type GenerateBackupCodesResponse struct {
	Codes []string `json:"codes"`
}

type GenerateConsentReportResponse

type GenerateConsentReportResponse struct {
	Id string `json:"id"`
}

type GenerateRecoveryCodesRequest

type GenerateRecoveryCodesRequest struct {
	Count  int    `json:"count"`
	Format string `json:"format"`
}

type GenerateRecoveryCodesResponse

type GenerateRecoveryCodesResponse struct {
	Warning     string    `json:"warning"`
	Codes       []string  `json:"codes"`
	Count       int       `json:"count"`
	GeneratedAt time.Time `json:"generatedAt"`
}

type GenerateReportRequest

type GenerateReportRequest struct {
	ReportType string             `json:"reportType"`
	Standard   ComplianceStandard `json:"standard"`
	Format     string             `json:"format"`
	Period     string             `json:"period"`
}

type GenerateReportResponse

type GenerateReportResponse struct {
	Id string `json:"id"`
}

type GenerateReport_req

type GenerateReport_req struct {
	Format     string             `json:"format"`
	Period     string             `json:"period"`
	ReportType string             `json:"reportType"`
	Standard   ComplianceStandard `json:"standard"`
}

type GenerateTokenRequest

type GenerateTokenRequest struct {
	SessionId   string        `json:"sessionId"`
	TokenType   string        `json:"tokenType"`
	UserId      string        `json:"userId"`
	Audience    []string      `json:"audience"`
	ExpiresIn   time.Duration `json:"expiresIn"`
	Metadata    interface{}   `json:"metadata"`
	Permissions []string      `json:"permissions"`
	Scopes      []string      `json:"scopes"`
}

type GetABTestResultsRequest

type GetABTestResultsRequest struct {
}

type GetAPIKeyRequest

type GetAPIKeyRequest struct {
}

type GetAnalyticsInput

type GetAnalyticsInput struct {
	Days       *int    `json:"days"`
	EndDate    *string `json:"endDate"`
	StartDate  *string `json:"startDate"`
	TemplateId *string `json:"templateId"`
}

type GetAnalyticsResult

type GetAnalyticsResult struct {
	Analytics AnalyticsDTO `json:"analytics"`
}

type GetAppProfileResponse

type GetAppProfileResponse struct {
	Id string `json:"id"`
}

type GetAppRequest

type GetAppRequest struct {
}

type GetAuditLogsRequestDTO

type GetAuditLogsRequestDTO struct {
}

type GetAuditLogsResponse

type GetAuditLogsResponse struct {
	Audit_logs []*interface{} `json:"audit_logs"`
}

type GetByIDResponse

type GetByIDResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
}

type GetByPathRequest

type GetByPathRequest struct {
}

type GetByPathResponse

type GetByPathResponse struct {
	Message string `json:"message"`
	Code    string `json:"code"`
	Error   string `json:"error"`
}

type GetChallengeStatusRequest

type GetChallengeStatusRequest struct {
}

type GetChallengeStatusResponse

type GetChallengeStatusResponse struct {
	Attempts         int             `json:"attempts"`
	AvailableFactors []FactorInfo    `json:"availableFactors"`
	ChallengeId      xid.ID          `json:"challengeId"`
	FactorsRequired  int             `json:"factorsRequired"`
	FactorsVerified  int             `json:"factorsVerified"`
	MaxAttempts      int             `json:"maxAttempts"`
	Status           ChallengeStatus `json:"status"`
}

type GetCheckResponse

type GetCheckResponse struct {
	Id string `json:"id"`
}

type GetClientResponse

type GetClientResponse struct {
	IsOrgLevel              bool     `json:"isOrgLevel"`
	PostLogoutRedirectURIs  []string `json:"postLogoutRedirectURIs"`
	RedirectURIs            []string `json:"redirectURIs"`
	RequireConsent          bool     `json:"requireConsent"`
	Contacts                []string `json:"contacts"`
	Name                    string   `json:"name"`
	PolicyURI               string   `json:"policyURI"`
	RequirePKCE             bool     `json:"requirePKCE"`
	TokenEndpointAuthMethod string   `json:"tokenEndpointAuthMethod"`
	CreatedAt               string   `json:"createdAt"`
	OrganizationID          string   `json:"organizationID"`
	GrantTypes              []string `json:"grantTypes"`
	LogoURI                 string   `json:"logoURI"`
	ResponseTypes           []string `json:"responseTypes"`
	TosURI                  string   `json:"tosURI"`
	TrustedClient           bool     `json:"trustedClient"`
	UpdatedAt               string   `json:"updatedAt"`
	AllowedScopes           []string `json:"allowedScopes"`
	ApplicationType         string   `json:"applicationType"`
	ClientID                string   `json:"clientID"`
}

type GetComplianceStatusResponse

type GetComplianceStatusResponse struct {
	Status string `json:"status"`
}

type GetConsentAuditLogsResponse

type GetConsentAuditLogsResponse struct {
	Audit_logs []*interface{} `json:"audit_logs"`
}

type GetConsentPolicyResponse

type GetConsentPolicyResponse struct {
	Id string `json:"id"`
}

type GetConsentResponse

type GetConsentResponse struct {
	Id string `json:"id"`
}

type GetContentTypeRequest

type GetContentTypeRequest struct {
}

type GetCookieConsentResponse

type GetCookieConsentResponse struct {
	Preferences interface{} `json:"preferences"`
}

type GetCurrentResponse

type GetCurrentResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
}

type GetDashboardResponse

type GetDashboardResponse struct {
	Metrics interface{} `json:"metrics"`
}

type GetDataDeletionResponse

type GetDataDeletionResponse struct {
	Id     string `json:"id"`
	Status string `json:"status"`
}

type GetDataExportResponse

type GetDataExportResponse struct {
	Id     string `json:"id"`
	Status string `json:"status"`
}

type GetDocumentVerificationRequest

type GetDocumentVerificationRequest struct {
	DocumentId xid.ID `json:"documentId"`
}

type GetDocumentVerificationResponse

type GetDocumentVerificationResponse struct {
	Message         string  `json:"message"`
	RejectionReason string  `json:"rejectionReason"`
	Status          string  `json:"status"`
	VerifiedAt      Time    `json:"verifiedAt"`
	ConfidenceScore float64 `json:"confidenceScore"`
	DocumentId      xid.ID  `json:"documentId"`
}

type GetEffectivePermissionsRequest

type GetEffectivePermissionsRequest struct {
}

type GetEntryRequest

type GetEntryRequest struct {
}

type GetEntryStatsRequest

type GetEntryStatsRequest struct {
}

type GetEvidenceResponse

type GetEvidenceResponse struct {
	Id string `json:"id"`
}

type GetExtensionDataInput

type GetExtensionDataInput struct {
	AppId string `json:"appId"`
	OrgId string `json:"orgId"`
}

type GetExtensionDataResult

type GetExtensionDataResult struct {
	Tabs       []TabDataDTO       `json:"tabs"`
	Widgets    []WidgetDataDTO    `json:"widgets"`
	Actions    []ActionDataDTO    `json:"actions"`
	QuickLinks []QuickLinkDataDTO `json:"quickLinks"`
}

type GetFactorRequest

type GetFactorRequest struct {
}

type GetFactorResponse

type GetFactorResponse struct {
	Priority   FactorPriority `json:"priority"`
	Type       FactorType     `json:"type"`
	UpdatedAt  time.Time      `json:"updatedAt"`
	UserId     xid.ID         `json:"userId"`
	CreatedAt  time.Time      `json:"createdAt"`
	LastUsedAt Time           `json:"lastUsedAt"`
	Name       string         `json:"name"`
	Status     FactorStatus   `json:"status"`
	VerifiedAt Time           `json:"verifiedAt"`
	ExpiresAt  Time           `json:"expiresAt"`
	Id         xid.ID         `json:"id"`
	Metadata   interface{}    `json:"metadata"`
}

type GetImpersonationRequest

type GetImpersonationRequest struct {
}

type GetInvitationRequest

type GetInvitationRequest struct {
}

type GetInvitationsInput

type GetInvitationsInput struct {
	Page   int    `json:"page"`
	Status string `json:"status"`
	AppId  string `json:"appId"`
	Limit  int    `json:"limit"`
	OrgId  string `json:"orgId"`
}

type GetInvitationsResult

type GetInvitationsResult struct {
	Data       []InvitationDTO `json:"data"`
	Pagination PaginationInfo  `json:"pagination"`
}

type GetMembersInput

type GetMembersInput struct {
	Search string `json:"search"`
	AppId  string `json:"appId"`
	Limit  int    `json:"limit"`
	OrgId  string `json:"orgId"`
	Page   int    `json:"page"`
}

type GetMembersResult

type GetMembersResult struct {
	CanManage  bool           `json:"canManage"`
	Data       []MemberDTO    `json:"data"`
	Pagination PaginationInfo `json:"pagination"`
}

type GetMigrationStatusRequest

type GetMigrationStatusRequest struct {
}

type GetMigrationStatusResponse

type GetMigrationStatusResponse struct {
	HasMigratedPolicies bool   `json:"hasMigratedPolicies"`
	LastMigrationAt     string `json:"lastMigrationAt"`
	MigratedCount       int    `json:"migratedCount"`
	PendingRbacPolicies int    `json:"pendingRbacPolicies"`
}

type GetNotificationDetailInput

type GetNotificationDetailInput struct {
	NotificationId string `json:"notificationId"`
}

type GetNotificationDetailResult

type GetNotificationDetailResult struct {
	Notification NotificationHistoryDTO `json:"notification"`
}

type GetNotificationRequest

type GetNotificationRequest struct {
}

type GetNotificationResponse

type GetNotificationResponse struct {
	Notification interface{} `json:"notification"`
}

type GetOrganizationBySlugRequest

type GetOrganizationBySlugRequest struct {
}

type GetOrganizationInput

type GetOrganizationInput struct {
	AppId string `json:"appId"`
	OrgId string `json:"orgId"`
}

type GetOrganizationRequest

type GetOrganizationRequest struct {
}

type GetOrganizationResult

type GetOrganizationResult struct {
	Organization OrganizationDetailDTO `json:"organization"`
	Stats        OrgDetailStatsDTO     `json:"stats"`
	UserRole     string                `json:"userRole"`
}

type GetOrganizationsInput

type GetOrganizationsInput struct {
	AppId  string `json:"appId"`
	Limit  int    `json:"limit"`
	Page   int    `json:"page"`
	Search string `json:"search"`
}

type GetOrganizationsResult

type GetOrganizationsResult struct {
	Data       []OrganizationSummaryDTO `json:"data"`
	Pagination PaginationInfo           `json:"pagination"`
	Stats      OrganizationStatsDTO     `json:"stats"`
}

type GetOverviewStatsInput

type GetOverviewStatsInput struct {
	Days      *int    `json:"days"`
	EndDate   *string `json:"endDate"`
	StartDate *string `json:"startDate"`
}

type GetOverviewStatsResult

type GetOverviewStatsResult struct {
	Stats OverviewStatsDTO `json:"stats"`
}

type GetPasskeyRequest

type GetPasskeyRequest struct {
}

type GetPolicyResponse

type GetPolicyResponse struct {
	Id string `json:"id"`
}

type GetPrivacySettingsResponse

type GetPrivacySettingsResponse struct {
	Settings interface{} `json:"settings"`
}

type GetProfileResponse

type GetProfileResponse struct {
	Id string `json:"id"`
}

type GetProviderRequest

type GetProviderRequest struct {
}

type GetProvidersInput

type GetProvidersInput struct {
}

type GetProvidersResult

type GetProvidersResult struct {
	Providers ProvidersConfigDTO `json:"providers"`
}

type GetRecoveryConfigResponse

type GetRecoveryConfigResponse struct {
	RequireAdminReview   bool             `json:"requireAdminReview"`
	RequireMultipleSteps bool             `json:"requireMultipleSteps"`
	RiskScoreThreshold   float64          `json:"riskScoreThreshold"`
	EnabledMethods       []RecoveryMethod `json:"enabledMethods"`
	MinimumStepsRequired int              `json:"minimumStepsRequired"`
}

type GetRecoveryStatsRequest

type GetRecoveryStatsRequest struct {
	EndDate        time.Time `json:"endDate"`
	OrganizationId string    `json:"organizationId"`
	StartDate      time.Time `json:"startDate"`
}

type GetRecoveryStatsResponse

type GetRecoveryStatsResponse struct {
	AdminReviewsRequired int         `json:"adminReviewsRequired"`
	FailedRecoveries     int         `json:"failedRecoveries"`
	HighRiskAttempts     int         `json:"highRiskAttempts"`
	PendingRecoveries    int         `json:"pendingRecoveries"`
	SuccessfulRecoveries int         `json:"successfulRecoveries"`
	TotalAttempts        int         `json:"totalAttempts"`
	AverageRiskScore     float64     `json:"averageRiskScore"`
	MethodStats          interface{} `json:"methodStats"`
	SuccessRate          float64     `json:"successRate"`
}

type GetReportResponse

type GetReportResponse struct {
	Id string `json:"id"`
}

type GetRequest

type GetRequest struct {
}

type GetRequirementResponse

type GetRequirementResponse struct {
	Id string `json:"id"`
}

type GetRevisionRequest

type GetRevisionRequest struct {
}

type GetRoleTemplateInput

type GetRoleTemplateInput struct {
	AppId      string `json:"appId"`
	TemplateId string `json:"templateId"`
}

type GetRoleTemplateResult

type GetRoleTemplateResult struct {
	Template RoleTemplateDTO `json:"template"`
}

type GetRoleTemplatesInput

type GetRoleTemplatesInput struct {
	AppId string `json:"appId"`
}

type GetRoleTemplatesResult

type GetRoleTemplatesResult struct {
	Templates []RoleTemplateDTO `json:"templates"`
}

type GetRolesRequest

type GetRolesRequest struct {
}

type GetSecretInput

type GetSecretInput struct {
	AppId    string `json:"appId"`
	SecretId string `json:"secretId"`
}

type GetSecretOutput

type GetSecretOutput struct {
	Secret SecretItem `json:"secret"`
}

type GetSecretRequest

type GetSecretRequest struct {
}

type GetSecretsInput

type GetSecretsInput struct {
	AppId    string `json:"appId"`
	Page     int    `json:"page"`
	PageSize int    `json:"pageSize"`
	Search   string `json:"search"`
}

type GetSecretsOutput

type GetSecretsOutput struct {
	Page       int          `json:"page"`
	PageSize   int          `json:"pageSize"`
	Secrets    []SecretItem `json:"secrets"`
	Total      int64        `json:"total"`
	TotalPages int          `json:"totalPages"`
}

type GetSecurityQuestionsRequest

type GetSecurityQuestionsRequest struct {
	SessionId xid.ID `json:"sessionId"`
}

type GetSecurityQuestionsResponse

type GetSecurityQuestionsResponse struct {
	Questions []SecurityQuestionInfo `json:"questions"`
}

type GetSessionInput

type GetSessionInput struct {
	SessionId string `json:"sessionId"`
	AppId     string `json:"appId"`
}

type GetSessionResponse

type GetSessionResponse struct {
	Session Session `json:"session"`
	User    User    `json:"user"`
}

type GetSessionResult

type GetSessionResult struct {
	Session SessionDetailDTO `json:"session"`
}

type GetSessionStatsInput

type GetSessionStatsInput struct {
	AppId string `json:"appId"`
}

type GetSessionStatsResult

type GetSessionStatsResult struct {
	Stats SessionStatsDTO `json:"stats"`
}

type GetSessionsInput

type GetSessionsInput struct {
	UserId   string `json:"userId"`
	AppId    string `json:"appId"`
	Device   string `json:"device"`
	Page     int    `json:"page"`
	PageSize int    `json:"pageSize"`
	Search   string `json:"search"`
	Status   string `json:"status"`
}

type GetSessionsResult

type GetSessionsResult struct {
	Pagination PaginationInfoDTO `json:"pagination"`
	Sessions   []SessionDTO      `json:"sessions"`
	Stats      SessionStatsDTO   `json:"stats"`
}

type GetSettingsInput

type GetSettingsInput struct {
}

type GetSettingsResult

type GetSettingsResult struct {
	Settings NotificationSettingsDTO `json:"settings"`
}

type GetStatsRequestDTO

type GetStatsRequestDTO struct {
}

type GetStatsResponse

type GetStatsResponse struct {
	ActiveSessions int     `json:"activeSessions"`
	DeviceCount    int     `json:"deviceCount"`
	LocationCount  int     `json:"locationCount"`
	NewestSession  *string `json:"newestSession"`
	OldestSession  *string `json:"oldestSession"`
	TotalSessions  int     `json:"totalSessions"`
}

type GetStatusRequest

type GetStatusRequest struct {
	Device_id string `json:"device_id"`
	User_id   string `json:"user_id"`
}

type GetStatusResponse

type GetStatusResponse struct {
	PolicyActive    bool         `json:"policyActive"`
	RequiredCount   int          `json:"requiredCount"`
	TrustedDevice   bool         `json:"trustedDevice"`
	Enabled         bool         `json:"enabled"`
	EnrolledFactors []FactorInfo `json:"enrolledFactors"`
	GracePeriod     Time         `json:"gracePeriod"`
}

type GetTeamRequest

type GetTeamRequest struct {
}

type GetTeamsInput

type GetTeamsInput struct {
	AppId  string `json:"appId"`
	Limit  int    `json:"limit"`
	OrgId  string `json:"orgId"`
	Page   int    `json:"page"`
	Search string `json:"search"`
}

type GetTeamsResult

type GetTeamsResult struct {
	CanManage  bool           `json:"canManage"`
	Data       []TeamDTO      `json:"data"`
	Pagination PaginationInfo `json:"pagination"`
}

type GetTemplateAnalyticsRequest

type GetTemplateAnalyticsRequest struct {
}

type GetTemplateDefaultsResponse

type GetTemplateDefaultsResponse struct {
	Templates []*interface{} `json:"templates"`
	Total     int            `json:"total"`
}

type GetTemplateInput

type GetTemplateInput struct {
	TemplateId string `json:"templateId"`
}

type GetTemplateRequest

type GetTemplateRequest struct {
}

type GetTemplateResponse

type GetTemplateResponse struct {
	Template interface{} `json:"template"`
}

type GetTemplateResult

type GetTemplateResult struct {
	Template TemplateDTO `json:"template"`
}

type GetTemplateVersionRequest

type GetTemplateVersionRequest struct {
}

type GetTreeRequest

type GetTreeRequest struct {
}

type GetUserSessionsInput

type GetUserSessionsInput struct {
	AppId    string `json:"appId"`
	Page     int    `json:"page"`
	PageSize int    `json:"pageSize"`
	UserId   string `json:"userId"`
}

type GetUserSessionsResult

type GetUserSessionsResult struct {
	UserId      string            `json:"userId"`
	ActiveCount int               `json:"activeCount"`
	Pagination  PaginationInfoDTO `json:"pagination"`
	Sessions    []SessionDTO      `json:"sessions"`
	TotalCount  int               `json:"totalCount"`
}

type GetUserTrainingResponse

type GetUserTrainingResponse struct {
	User_id string `json:"user_id"`
}

type GetUserVerificationStatusResponse

type GetUserVerificationStatusResponse struct {
	Status interface{} `json:"status"`
}

type GetUserVerificationsResponse

type GetUserVerificationsResponse struct {
	Verifications []*interface{} `json:"verifications"`
}

type GetValueRequest

type GetValueRequest struct {
}

type GetVerificationResponse

type GetVerificationResponse struct {
	Verification interface{} `json:"verification"`
}

type GetVerificationSessionResponse

type GetVerificationSessionResponse struct {
	Session interface{} `json:"session"`
}

type GetVersionsRequest

type GetVersionsRequest struct {
}

type GetViolationResponse

type GetViolationResponse struct {
	Id string `json:"id"`
}

type HandleConsentRequest

type HandleConsentRequest struct {
	State                 string `json:"state"`
	Action                string `json:"action"`
	Client_id             string `json:"client_id"`
	Code_challenge        string `json:"code_challenge"`
	Code_challenge_method string `json:"code_challenge_method"`
	Redirect_uri          string `json:"redirect_uri"`
	Response_type         string `json:"response_type"`
	Scope                 string `json:"scope"`
}

type HandleWebhookResponse

type HandleWebhookResponse struct {
	Status string `json:"status"`
}

type Handler

type Handler struct {
}

type HealthCheckResponse

type HealthCheckResponse struct {
	Message         string           `json:"message"`
	ProvidersStatus interface{}      `json:"providersStatus"`
	Version         string           `json:"version"`
	EnabledMethods  []RecoveryMethod `json:"enabledMethods"`
	Healthy         bool             `json:"healthy"`
}

type ID

type ID = xid.ID

Placeholder types for undefined/missing types

type IDTokenClaims

type IDTokenClaims struct {
	Email_verified     bool   `json:"email_verified"`
	Family_name        string `json:"family_name"`
	Name               string `json:"name"`
	Nonce              string `json:"nonce"`
	Preferred_username string `json:"preferred_username"`
	Session_state      string `json:"session_state"`
	Auth_time          int64  `json:"auth_time"`
	Email              string `json:"email"`
	Given_name         string `json:"given_name"`
}

type IDVerificationErrorResponse

type IDVerificationErrorResponse struct {
	Error string `json:"error"`
}

type IDVerificationListResponse

type IDVerificationListResponse struct {
	Verifications []*interface{} `json:"verifications"`
}

type IDVerificationResponse

type IDVerificationResponse struct {
	Verification interface{} `json:"verification"`
}

type IDVerificationSessionResponse

type IDVerificationSessionResponse struct {
	Session interface{} `json:"session"`
}

type IDVerificationStatusResponse

type IDVerificationStatusResponse struct {
	Status interface{} `json:"status"`
}

type IDVerificationWebhookResponse

type IDVerificationWebhookResponse struct {
	Status string `json:"status"`
}

type IPWhitelistConfig

type IPWhitelistConfig struct {
	Strict_mode bool `json:"strict_mode"`
	Enabled     bool `json:"enabled"`
}

type IdentityVerification

type IdentityVerification struct{}

Placeholder types for undefined/missing types

type IdentityVerificationSession

type IdentityVerificationSession struct{}

Placeholder types for undefined/missing types

type ImpersonateUserRequest

type ImpersonateUserRequest struct {
	User_organization_id ID            `json:"user_organization_id"`
	App_id               xid.ID        `json:"app_id"`
	Duration             time.Duration `json:"duration"`
	User_id              xid.ID        `json:"user_id"`
}

type ImpersonateUserRequestDTO

type ImpersonateUserRequestDTO struct {
	Duration time.Duration `json:"duration"`
}

type ImpersonationContext

type ImpersonationContext struct {
	Impersonation_id  ID     `json:"impersonation_id"`
	Impersonator_id   ID     `json:"impersonator_id"`
	Indicator_message string `json:"indicator_message"`
	Is_impersonating  bool   `json:"is_impersonating"`
	Target_user_id    ID     `json:"target_user_id"`
}

type ImpersonationEndResponse

type ImpersonationEndResponse struct {
	Ended_at string `json:"ended_at"`
	Status   string `json:"status"`
}

type ImpersonationErrorResponse

type ImpersonationErrorResponse struct {
	Error string `json:"error"`
}

type ImpersonationMiddleware

type ImpersonationMiddleware struct {
}

type ImpersonationSession

type ImpersonationSession struct {
}

type ImpersonationStartResponse

type ImpersonationStartResponse struct {
	Impersonator_id string `json:"impersonator_id"`
	Session_id      string `json:"session_id"`
	Started_at      string `json:"started_at"`
	Target_user_id  string `json:"target_user_id"`
}

type ImpersonationVerifyResponse

type ImpersonationVerifyResponse struct {
	Impersonator_id  string `json:"impersonator_id"`
	Is_impersonating bool   `json:"is_impersonating"`
	Target_user_id   string `json:"target_user_id"`
}

type InitiateChallengeRequest

type InitiateChallengeRequest struct {
	Context     string       `json:"context"`
	FactorTypes []FactorType `json:"factorTypes"`
	Metadata    interface{}  `json:"metadata"`
}

type InitiateChallengeResponse

type InitiateChallengeResponse struct {
	SessionId        xid.ID       `json:"sessionId"`
	AvailableFactors []FactorInfo `json:"availableFactors"`
	ChallengeId      xid.ID       `json:"challengeId"`
	ExpiresAt        time.Time    `json:"expiresAt"`
	FactorsRequired  int          `json:"factorsRequired"`
}

type InstantiateTemplateRequest

type InstantiateTemplateRequest struct {
	Description  string      `json:"description"`
	Enabled      bool        `json:"enabled"`
	Name         string      `json:"name"`
	NamespaceId  string      `json:"namespaceId"`
	Parameters   interface{} `json:"parameters"`
	Priority     int         `json:"priority"`
	ResourceType string      `json:"resourceType"`
	Actions      []string    `json:"actions"`
}

type IntrospectTokenRequest

type IntrospectTokenRequest struct {
	Client_id       string `json:"client_id"`
	Client_secret   string `json:"client_secret"`
	Token           string `json:"token"`
	Token_type_hint string `json:"token_type_hint"`
}

type IntrospectTokenResponse

type IntrospectTokenResponse struct {
	Username   string   `json:"username"`
	Active     bool     `json:"active"`
	Aud        []string `json:"aud"`
	Client_id  string   `json:"client_id"`
	Exp        int64    `json:"exp"`
	Iat        int64    `json:"iat"`
	Iss        string   `json:"iss"`
	Jti        string   `json:"jti"`
	Scope      string   `json:"scope"`
	Nbf        int64    `json:"nbf"`
	Sub        string   `json:"sub"`
	Token_type string   `json:"token_type"`
}

type IntrospectionService

type IntrospectionService struct {
}

type Invitation

type Invitation struct{}

Placeholder types for undefined/missing types

type InvitationDTO

type InvitationDTO struct {
	InvitedBy   string    `json:"invitedBy"`
	InviterName string    `json:"inviterName"`
	Role        string    `json:"role"`
	Status      string    `json:"status"`
	CreatedAt   time.Time `json:"createdAt"`
	Email       string    `json:"email"`
	ExpiresAt   time.Time `json:"expiresAt"`
	Id          string    `json:"id"`
}

type InvitationResponse

type InvitationResponse struct {
	Invitation Invitation `json:"invitation"`
	Message    string     `json:"message"`
}

type InviteMemberHandlerRequest

type InviteMemberHandlerRequest struct {
}

type InviteMemberInput

type InviteMemberInput struct {
	Email string `json:"email"`
	OrgId string `json:"orgId"`
	Role  string `json:"role"`
	AppId string `json:"appId"`
}

type InviteMemberRequest

type InviteMemberRequest struct {
	Email string `json:"email"`
	Role  string `json:"role"`
}

type InviteMemberResult

type InviteMemberResult struct {
	Invitation InvitationDTO `json:"invitation"`
}

type JSONBMap

type JSONBMap = map[string]interface{}

Placeholder type aliases for undefined enum/custom types

type JWK

type JWK struct {
	Use string `json:"use"`
	Alg string `json:"alg"`
	E   string `json:"e"`
	Kid string `json:"kid"`
	Kty string `json:"kty"`
	N   string `json:"n"`
}

type JWKS

type JWKS struct {
	Keys []JWK `json:"keys"`
}

type JWKSResponse

type JWKSResponse struct {
	Keys []JWK `json:"keys"`
}

type JWKSService

type JWKSService struct {
}

type JWTService

type JWTService struct {
}

type JumioConfig

type JumioConfig struct {
	ApiToken             string   `json:"apiToken"`
	CallbackUrl          string   `json:"callbackUrl"`
	DataCenter           string   `json:"dataCenter"`
	EnableAMLScreening   bool     `json:"enableAMLScreening"`
	EnableExtraction     bool     `json:"enableExtraction"`
	EnabledDocumentTypes []string `json:"enabledDocumentTypes"`
	PresetId             string   `json:"presetId"`
	ApiSecret            string   `json:"apiSecret"`
	EnableLiveness       bool     `json:"enableLiveness"`
	Enabled              bool     `json:"enabled"`
	EnabledCountries     []string `json:"enabledCountries"`
	VerificationType     string   `json:"verificationType"`
}

type JumioProvider

type JumioProvider struct {
}

type KeyPair

type KeyPair struct {
}

type KeyStats

type KeyStats struct {
}

type KeyStore

type KeyStore struct {
}

type LimitResult

type LimitResult struct {
}

type LinkAccountRequest

type LinkAccountRequest struct {
	Provider string   `json:"provider"`
	Scopes   []string `json:"scopes"`
}

type LinkAccountResponse

type LinkAccountResponse struct {
	Url string `json:"url"`
}

type LinkRequest

type LinkRequest struct {
	Email    string `json:"email"`
	Name     string `json:"name"`
	Password string `json:"password"`
}

type LinkResponse

type LinkResponse struct {
	Message string      `json:"message"`
	User    interface{} `json:"user"`
}

type ListAPIKeysRequest

type ListAPIKeysRequest struct {
}

type ListAppsRequest

type ListAppsRequest struct {
}

type ListAuditEventsRequest

type ListAuditEventsRequest struct {
}

type ListChecksFilter

type ListChecksFilter struct {
	SinceBefore Time    `json:"sinceBefore"`
	Status      *string `json:"status"`
	AppId       *string `json:"appId"`
	CheckType   *string `json:"checkType"`
	ProfileId   *string `json:"profileId"`
}

type ListChecksResponse

type ListChecksResponse struct {
	Checks []*interface{} `json:"checks"`
}

type ListClientsResponse

type ListClientsResponse struct {
	TotalPages int             `json:"totalPages"`
	Clients    []ClientSummary `json:"clients"`
	Page       int             `json:"page"`
	PageSize   int             `json:"pageSize"`
	Total      int             `json:"total"`
}

type ListContentTypesRequest

type ListContentTypesRequest struct {
}

type ListDevicesResponse

type ListDevicesResponse struct {
	Devices []*Device `json:"devices"`
}

type ListEntriesRequest

type ListEntriesRequest struct {
}

type ListEvidenceFilter

type ListEvidenceFilter struct {
	ProfileId    *string             `json:"profileId"`
	Standard     *ComplianceStandard `json:"standard"`
	AppId        *string             `json:"appId"`
	ControlId    *string             `json:"controlId"`
	EvidenceType *string             `json:"evidenceType"`
}

type ListEvidenceResponse

type ListEvidenceResponse struct {
	Evidence []*interface{} `json:"evidence"`
}

type ListFactorsRequest

type ListFactorsRequest struct {
}

type ListFactorsResponse

type ListFactorsResponse struct {
	Count   int      `json:"count"`
	Factors []Factor `json:"factors"`
}

type ListImpersonationsRequest

type ListImpersonationsRequest struct {
}

type ListJWTKeysRequest

type ListJWTKeysRequest struct {
}

type ListMembersRequest

type ListMembersRequest struct {
}

type ListNotificationsHistoryInput

type ListNotificationsHistoryInput struct {
	Page      int     `json:"page"`
	Recipient *string `json:"recipient"`
	Status    *string `json:"status"`
	Type      *string `json:"type"`
	Limit     int     `json:"limit"`
}

type ListNotificationsHistoryResult

type ListNotificationsHistoryResult struct {
	Notifications []NotificationHistoryDTO `json:"notifications"`
	Pagination    PaginationDTO            `json:"pagination"`
}

type ListNotificationsResponse

type ListNotificationsResponse struct {
	Notifications []*interface{} `json:"notifications"`
	Total         int            `json:"total"`
}

type ListOrganizationsRequest

type ListOrganizationsRequest struct {
}

type ListPasskeysRequest

type ListPasskeysRequest struct {
}

type ListPasskeysResponse

type ListPasskeysResponse struct {
	Passkeys []PasskeyInfo `json:"passkeys"`
	Count    int           `json:"count"`
}

type ListPendingRequirementsResponse

type ListPendingRequirementsResponse struct {
	Requirements []*interface{} `json:"requirements"`
}

type ListPoliciesFilter

type ListPoliciesFilter struct {
	PolicyType *string             `json:"policyType"`
	ProfileId  *string             `json:"profileId"`
	Standard   *ComplianceStandard `json:"standard"`
	Status     *string             `json:"status"`
	AppId      *string             `json:"appId"`
}

type ListPoliciesResponse

type ListPoliciesResponse struct {
	Policies []*interface{} `json:"policies"`
}

type ListProfilesFilter

type ListProfilesFilter struct {
	Standard *ComplianceStandard `json:"standard"`
	Status   *string             `json:"status"`
	AppId    *string             `json:"appId"`
}

type ListProvidersResponse

type ListProvidersResponse struct {
	Providers []string `json:"providers"`
}

type ListRecoverySessionsRequest

type ListRecoverySessionsRequest struct {
	OrganizationId string         `json:"organizationId"`
	Page           int            `json:"page"`
	PageSize       int            `json:"pageSize"`
	RequiresReview bool           `json:"requiresReview"`
	Status         RecoveryStatus `json:"status"`
}

type ListRecoverySessionsResponse

type ListRecoverySessionsResponse struct {
	Page       int                   `json:"page"`
	PageSize   int                   `json:"pageSize"`
	Sessions   []RecoverySessionInfo `json:"sessions"`
	TotalCount int                   `json:"totalCount"`
}

type ListRememberedDevicesResponse

type ListRememberedDevicesResponse struct {
	Count   int         `json:"count"`
	Devices interface{} `json:"devices"`
}

type ListReportsFilter

type ListReportsFilter struct {
	ProfileId  *string             `json:"profileId"`
	ReportType *string             `json:"reportType"`
	Standard   *ComplianceStandard `json:"standard"`
	Status     *string             `json:"status"`
	AppId      *string             `json:"appId"`
	Format     *string             `json:"format"`
}

type ListReportsResponse

type ListReportsResponse struct {
	Reports []*interface{} `json:"reports"`
}

type ListRequest

type ListRequest struct {
	CreatedTo   *string `json:"createdTo"`
	Limit       int     `json:"limit"`
	SortBy      *string `json:"sortBy"`
	UserAgent   *string `json:"userAgent"`
	CreatedFrom *string `json:"createdFrom"`
	IpAddress   *string `json:"ipAddress"`
	Offset      int     `json:"offset"`
	SortOrder   *string `json:"sortOrder"`
	Active      *bool   `json:"active"`
}

type ListResponse

type ListResponse struct {
	Webhooks []*Webhook `json:"webhooks"`
}

type ListRevisionsRequest

type ListRevisionsRequest struct {
}

type ListSecretsRequest

type ListSecretsRequest struct {
}

type ListSessionsRequest

type ListSessionsRequest struct {
	CreatedFrom *string `json:"createdFrom"`
	CreatedTo   *string `json:"createdTo"`
	Offset      int     `json:"offset"`
	SortOrder   *string `json:"sortOrder"`
	Active      *bool   `json:"active"`
	IpAddress   *string `json:"ipAddress"`
	Limit       int     `json:"limit"`
	SortBy      *string `json:"sortBy"`
	UserAgent   *string `json:"userAgent"`
}

type ListSessionsRequestDTO

type ListSessionsRequestDTO struct {
}

type ListSessionsResponse

type ListSessionsResponse struct {
	Total       int     `json:"total"`
	Total_pages int     `json:"total_pages"`
	Limit       int     `json:"limit"`
	Page        int     `json:"page"`
	Sessions    Session `json:"sessions"`
}

type ListTeamsRequest

type ListTeamsRequest struct {
}

type ListTemplatesInput

type ListTemplatesInput struct {
	Active   *bool   `json:"active"`
	Language *string `json:"language"`
	Limit    int     `json:"limit"`
	Page     int     `json:"page"`
	Type     *string `json:"type"`
}

type ListTemplatesResponse

type ListTemplatesResponse struct {
	Templates []*interface{} `json:"templates"`
	Total     int            `json:"total"`
}

type ListTemplatesResult

type ListTemplatesResult struct {
	Pagination PaginationDTO `json:"pagination"`
	Templates  []TemplateDTO `json:"templates"`
}

type ListTrainingFilter

type ListTrainingFilter struct {
	UserId       *string             `json:"userId"`
	AppId        *string             `json:"appId"`
	ProfileId    *string             `json:"profileId"`
	Standard     *ComplianceStandard `json:"standard"`
	Status       *string             `json:"status"`
	TrainingType *string             `json:"trainingType"`
}

type ListTrainingResponse

type ListTrainingResponse struct {
	Training []*interface{} `json:"training"`
}

type ListTrustedContactsResponse

type ListTrustedContactsResponse struct {
	Contacts []TrustedContactInfo `json:"contacts"`
	Count    int                  `json:"count"`
}

type ListTrustedDevicesResponse

type ListTrustedDevicesResponse struct {
	Count   int             `json:"count"`
	Devices []TrustedDevice `json:"devices"`
}

type ListUsersRequest

type ListUsersRequest struct {
	Limit                int    `json:"limit"`
	Page                 int    `json:"page"`
	Role                 string `json:"role"`
	Search               string `json:"search"`
	Status               string `json:"status"`
	User_organization_id ID     `json:"user_organization_id"`
	App_id               xid.ID `json:"app_id"`
}

type ListUsersRequestDTO

type ListUsersRequestDTO struct {
}

type ListUsersResponse

type ListUsersResponse struct {
	Limit       int  `json:"limit"`
	Page        int  `json:"page"`
	Total       int  `json:"total"`
	Total_pages int  `json:"total_pages"`
	Users       User `json:"users"`
}

type ListVerificationsResponse

type ListVerificationsResponse struct {
	Verifications []*interface{} `json:"verifications"`
}

type ListViolationsFilter

type ListViolationsFilter struct {
	Status        *string `json:"status"`
	UserId        *string `json:"userId"`
	ViolationType *string `json:"violationType"`
	AppId         *string `json:"appId"`
	ProfileId     *string `json:"profileId"`
	Severity      *string `json:"severity"`
}

type ListViolationsResponse

type ListViolationsResponse struct {
	Violations []*interface{} `json:"violations"`
}

type LoginResponse

type LoginResponse struct {
	PasskeyUsed string      `json:"passkeyUsed"`
	Session     interface{} `json:"session"`
	Token       string      `json:"token"`
	User        interface{} `json:"user"`
}

type MFABypassResponse

type MFABypassResponse struct {
	Id        xid.ID    `json:"id"`
	Reason    string    `json:"reason"`
	UserId    xid.ID    `json:"userId"`
	ExpiresAt time.Time `json:"expiresAt"`
}

type MFAConfigResponse

type MFAConfigResponse struct {
	Required_factor_count int      `json:"required_factor_count"`
	Allowed_factor_types  []string `json:"allowed_factor_types"`
	Enabled               bool     `json:"enabled"`
}

type MFAPolicy

type MFAPolicy struct {
	AdaptiveMfaEnabled     bool         `json:"adaptiveMfaEnabled"`
	CreatedAt              time.Time    `json:"createdAt"`
	LockoutDurationMinutes int          `json:"lockoutDurationMinutes"`
	MaxFailedAttempts      int          `json:"maxFailedAttempts"`
	OrganizationId         xid.ID       `json:"organizationId"`
	RequiredFactorCount    int          `json:"requiredFactorCount"`
	RequiredFactorTypes    []FactorType `json:"requiredFactorTypes"`
	UpdatedAt              time.Time    `json:"updatedAt"`
	AllowedFactorTypes     []FactorType `json:"allowedFactorTypes"`
	GracePeriodDays        int          `json:"gracePeriodDays"`
	Id                     xid.ID       `json:"id"`
	StepUpRequired         bool         `json:"stepUpRequired"`
	TrustedDeviceDays      int          `json:"trustedDeviceDays"`
}

type MFAPolicyResponse

type MFAPolicyResponse struct {
	AllowedFactorTypes  []string `json:"allowedFactorTypes"`
	AppId               xid.ID   `json:"appId"`
	Enabled             bool     `json:"enabled"`
	GracePeriodDays     int      `json:"gracePeriodDays"`
	Id                  xid.ID   `json:"id"`
	OrganizationId      ID       `json:"organizationId"`
	RequiredFactorCount int      `json:"requiredFactorCount"`
}

type MFASession

type MFASession struct {
	VerifiedFactors ID          `json:"verifiedFactors"`
	CompletedAt     Time        `json:"completedAt"`
	FactorsVerified int         `json:"factorsVerified"`
	Id              xid.ID      `json:"id"`
	RiskLevel       RiskLevel   `json:"riskLevel"`
	SessionToken    string      `json:"sessionToken"`
	UserAgent       string      `json:"userAgent"`
	CreatedAt       time.Time   `json:"createdAt"`
	ExpiresAt       time.Time   `json:"expiresAt"`
	FactorsRequired int         `json:"factorsRequired"`
	IpAddress       string      `json:"ipAddress"`
	Metadata        interface{} `json:"metadata"`
	UserId          xid.ID      `json:"userId"`
}

type MFAStatus

type MFAStatus struct {
	RequiredCount   int          `json:"requiredCount"`
	TrustedDevice   bool         `json:"trustedDevice"`
	Enabled         bool         `json:"enabled"`
	EnrolledFactors []FactorInfo `json:"enrolledFactors"`
	GracePeriod     Time         `json:"gracePeriod"`
	PolicyActive    bool         `json:"policyActive"`
}

type Member

type Member struct{}

Placeholder types for undefined/missing types

type MemberDTO

type MemberDTO struct {
	Status    string    `json:"status"`
	UserEmail string    `json:"userEmail"`
	UserId    string    `json:"userId"`
	UserName  string    `json:"userName"`
	Id        string    `json:"id"`
	JoinedAt  time.Time `json:"joinedAt"`
	Role      string    `json:"role"`
}

type MemberHandler

type MemberHandler struct {
}

type MembersResponse

type MembersResponse struct {
	Members Member `json:"members"`
	Total   int    `json:"total"`
}

type MemoryChallengeStore

type MemoryChallengeStore struct {
}

type MemoryStateStore

type MemoryStateStore struct {
}

type MessageResponse

type MessageResponse struct {
	Message string `json:"message"`
}

MessageResponse represents Simple message response

type MetadataResponse

type MetadataResponse struct {
	Metadata string `json:"metadata"`
}

type Middleware

type Middleware struct {
}

type MigrateAllRequest

type MigrateAllRequest struct {
	DryRun           bool `json:"dryRun"`
	PreserveOriginal bool `json:"preserveOriginal"`
}

type MigrateAllResponse

type MigrateAllResponse struct {
	DryRun            bool                     `json:"dryRun"`
	FailedPolicies    int                      `json:"failedPolicies"`
	MigratedPolicies  int                      `json:"migratedPolicies"`
	StartedAt         string                   `json:"startedAt"`
	CompletedAt       string                   `json:"completedAt"`
	ConvertedPolicies []PolicyPreviewResponse  `json:"convertedPolicies"`
	Errors            []MigrationErrorResponse `json:"errors"`
	SkippedPolicies   int                      `json:"skippedPolicies"`
	TotalPolicies     int                      `json:"totalPolicies"`
}

type MigrateRBACRequest

type MigrateRBACRequest struct {
	KeepRbacPolicies    bool   `json:"keepRbacPolicies"`
	NamespaceId         string `json:"namespaceId"`
	ValidateEquivalence bool   `json:"validateEquivalence"`
	DryRun              bool   `json:"dryRun"`
}

type MigrateRolesRequest

type MigrateRolesRequest struct {
	DryRun bool `json:"dryRun"`
}

type MigrationErrorResponse

type MigrationErrorResponse struct {
	Error       string `json:"error"`
	PolicyIndex int    `json:"policyIndex"`
	Resource    string `json:"resource"`
	Subject     string `json:"subject"`
}

type MigrationHandler

type MigrationHandler struct {
}

type MigrationResponse

type MigrationResponse struct {
	Message     string    `json:"message"`
	MigrationId string    `json:"migrationId"`
	StartedAt   time.Time `json:"startedAt"`
	Status      string    `json:"status"`
}

type MigrationStatusResponse

type MigrationStatusResponse struct {
	StartedAt          time.Time `json:"startedAt"`
	Status             string    `json:"status"`
	TotalPolicies      int       `json:"totalPolicies"`
	ValidationPassed   bool      `json:"validationPassed"`
	AppId              string    `json:"appId"`
	CompletedAt        Time      `json:"completedAt"`
	EnvironmentId      string    `json:"environmentId"`
	FailedCount        int       `json:"failedCount"`
	MigratedCount      int       `json:"migratedCount"`
	Progress           float64   `json:"progress"`
	UserOrganizationId *string   `json:"userOrganizationId"`
	Errors             []string  `json:"errors"`
}

type MockAppService

type MockAppService struct {
}

type MockAuditService

type MockAuditService struct {
}

type MockEmailService

type MockEmailService struct {
}

type MockOrganizationUIExtension

type MockOrganizationUIExtension struct {
}

type MockRepository

type MockRepository struct {
}

type MockService

type MockService struct {
}

type MockSessionService

type MockSessionService struct {
}

type MockSocialAccountRepository

type MockSocialAccountRepository struct {
}

type MockStateStore

type MockStateStore struct {
}

type MockUserRepository

type MockUserRepository struct {
}

type MockUserService

type MockUserService struct {
}

type MultiSessionErrorResponse

type MultiSessionErrorResponse struct {
	Error string `json:"error"`
}

type MultiStepRecoveryConfig

type MultiStepRecoveryConfig struct {
	AllowStepSkip        bool             `json:"allowStepSkip"`
	HighRiskSteps        []RecoveryMethod `json:"highRiskSteps"`
	LowRiskSteps         []RecoveryMethod `json:"lowRiskSteps"`
	MediumRiskSteps      []RecoveryMethod `json:"mediumRiskSteps"`
	MinimumSteps         int              `json:"minimumSteps"`
	AllowUserChoice      bool             `json:"allowUserChoice"`
	Enabled              bool             `json:"enabled"`
	RequireAdminApproval bool             `json:"requireAdminApproval"`
	SessionExpiry        time.Duration    `json:"sessionExpiry"`
}

type NamespaceResponse

type NamespaceResponse struct {
	CreatedAt          time.Time `json:"createdAt"`
	EnvironmentId      string    `json:"environmentId"`
	InheritPlatform    bool      `json:"inheritPlatform"`
	PolicyCount        int       `json:"policyCount"`
	ResourceCount      int       `json:"resourceCount"`
	UpdatedAt          time.Time `json:"updatedAt"`
	AppId              string    `json:"appId"`
	Description        string    `json:"description"`
	Id                 string    `json:"id"`
	Name               string    `json:"name"`
	TemplateId         *string   `json:"templateId"`
	UserOrganizationId *string   `json:"userOrganizationId"`
	ActionCount        int       `json:"actionCount"`
}

type NamespacesListResponse

type NamespacesListResponse struct {
	Namespaces []*NamespaceResponse `json:"namespaces"`
	TotalCount int                  `json:"totalCount"`
}

type NoOpDocumentProvider

type NoOpDocumentProvider struct {
}

type NoOpEmailProvider

type NoOpEmailProvider struct {
}

type NoOpNotificationProvider

type NoOpNotificationProvider struct {
}

type NoOpSMSProvider

type NoOpSMSProvider struct {
}

type NoOpVideoProvider

type NoOpVideoProvider struct {
}

type NotificationChannels

type NotificationChannels struct {
	Email   bool `json:"email"`
	Slack   bool `json:"slack"`
	Webhook bool `json:"webhook"`
}

type NotificationErrorResponse

type NotificationErrorResponse struct {
	Error string `json:"error"`
}

type NotificationHistoryDTO

type NotificationHistoryDTO struct {
	AppId       string      `json:"appId"`
	Body        string      `json:"body"`
	ProviderId  string      `json:"providerId"`
	Recipient   string      `json:"recipient"`
	Status      string      `json:"status"`
	Type        string      `json:"type"`
	Error       string      `json:"error"`
	Metadata    interface{} `json:"metadata"`
	Subject     string      `json:"subject"`
	CreatedAt   string      `json:"createdAt"`
	Id          string      `json:"id"`
	SentAt      *string     `json:"sentAt"`
	TemplateId  *string     `json:"templateId"`
	DeliveredAt *string     `json:"deliveredAt"`
	UpdatedAt   string      `json:"updatedAt"`
}

type NotificationListResponse

type NotificationListResponse struct {
	Notifications []*interface{} `json:"notifications"`
	Total         int            `json:"total"`
}

type NotificationPreviewResponse

type NotificationPreviewResponse struct {
	Body    string `json:"body"`
	Subject string `json:"subject"`
}

type NotificationResponse

type NotificationResponse struct {
	Notification interface{} `json:"notification"`
}

type NotificationSettingsDTO

type NotificationSettingsDTO struct {
	Account      AccountAutoSendDTO      `json:"account"`
	AppName      string                  `json:"appName"`
	Auth         AuthAutoSendDTO         `json:"auth"`
	Organization OrganizationAutoSendDTO `json:"organization"`
	Session      SessionAutoSendDTO      `json:"session"`
}

type NotificationStatusResponse

type NotificationStatusResponse struct {
	Status string `json:"status"`
}

type NotificationTemplateListResponse

type NotificationTemplateListResponse struct {
	Templates []*interface{} `json:"templates"`
	Total     int            `json:"total"`
}

type NotificationTemplateResponse

type NotificationTemplateResponse struct {
	Template interface{} `json:"template"`
}

type NotificationType

type NotificationType = string

Placeholder types for undefined/missing types

type NotificationWebhookResponse

type NotificationWebhookResponse struct {
	Status string `json:"status"`
}

type NotificationsConfig

type NotificationsConfig struct {
	Enabled                 bool                 `json:"enabled"`
	FailedChecks            bool                 `json:"failedChecks"`
	NotifyComplianceContact bool                 `json:"notifyComplianceContact"`
	NotifyOwners            bool                 `json:"notifyOwners"`
	Violations              bool                 `json:"violations"`
	AuditReminders          bool                 `json:"auditReminders"`
	Channels                NotificationChannels `json:"channels"`
}

type NotificationsResponse

type NotificationsResponse struct {
	Count         int         `json:"count"`
	Notifications interface{} `json:"notifications"`
}

type OAuthErrorResponse

type OAuthErrorResponse struct {
	Error             string `json:"error"`
	Error_description string `json:"error_description"`
	Error_uri         string `json:"error_uri"`
	State             string `json:"state"`
}

type OAuthState

type OAuthState struct {
	Created_at           time.Time `json:"created_at"`
	Extra_scopes         []string  `json:"extra_scopes"`
	Link_user_id         ID        `json:"link_user_id"`
	Provider             string    `json:"provider"`
	Redirect_url         string    `json:"redirect_url"`
	User_organization_id ID        `json:"user_organization_id"`
	App_id               xid.ID    `json:"app_id"`
}

type OIDCCallbackResponse

type OIDCCallbackResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
	User    User    `json:"user"`
}

type OIDCLoginRequest

type OIDCLoginRequest struct {
	Nonce       string `json:"nonce"`
	RedirectUri string `json:"redirectUri"`
	Scope       string `json:"scope"`
	State       string `json:"state"`
}

type OIDCLoginResponse

type OIDCLoginResponse struct {
	Nonce      string `json:"nonce"`
	ProviderId string `json:"providerId"`
	State      string `json:"state"`
	AuthUrl    string `json:"authUrl"`
}

type OIDCState

type OIDCState struct {
}

type OTPSentResponse

type OTPSentResponse struct {
	Code   string `json:"code"`
	Status string `json:"status"`
}

type OnfidoConfig

type OnfidoConfig struct {
	IncludeDocumentReport  bool                `json:"includeDocumentReport"`
	IncludeWatchlistReport bool                `json:"includeWatchlistReport"`
	Region                 string              `json:"region"`
	WorkflowId             string              `json:"workflowId"`
	DocumentCheck          DocumentCheckConfig `json:"documentCheck"`
	Enabled                bool                `json:"enabled"`
	IncludeFacialReport    bool                `json:"includeFacialReport"`
	WebhookToken           string              `json:"webhookToken"`
	ApiToken               string              `json:"apiToken"`
	FacialCheck            FacialCheckConfig   `json:"facialCheck"`
}

type OnfidoProvider

type OnfidoProvider struct {
}

type Option

type Option func(*Client)

Option is a functional option for configuring the client

func WithAPIKey

func WithAPIKey(apiKey string) Option

WithAPIKey sets the API key for authentication

func WithAppContext

func WithAppContext(appID, envID string) Option

WithAppContext sets the app and environment context for requests

func WithCookieJar

func WithCookieJar(jar http.CookieJar) Option

WithCookieJar sets a cookie jar for session management

func WithHTTPClient

func WithHTTPClient(client *http.Client) Option

WithHTTPClient sets a custom HTTP client

func WithHeaders

func WithHeaders(headers map[string]string) Option

WithHeaders sets custom headers

func WithPlugins

func WithPlugins(plugins ...Plugin) Option

WithPlugins adds plugins to the client

func WithToken

func WithToken(token string) Option

WithToken sets the authentication token (session token)

type OrgDetailStatsDTO

type OrgDetailStatsDTO struct {
	InvitationCount int64 `json:"invitationCount"`
	MemberCount     int64 `json:"memberCount"`
	TeamCount       int64 `json:"teamCount"`
}

type OrganizationAutoSendConfig

type OrganizationAutoSendConfig struct {
	Deleted        bool `json:"deleted"`
	Invite         bool `json:"invite"`
	Member_added   bool `json:"member_added"`
	Member_left    bool `json:"member_left"`
	Member_removed bool `json:"member_removed"`
	Role_changed   bool `json:"role_changed"`
	Transfer       bool `json:"transfer"`
}

type OrganizationAutoSendDTO

type OrganizationAutoSendDTO struct {
	Deleted       bool `json:"deleted"`
	Invite        bool `json:"invite"`
	MemberAdded   bool `json:"memberAdded"`
	MemberLeft    bool `json:"memberLeft"`
	MemberRemoved bool `json:"memberRemoved"`
	RoleChanged   bool `json:"roleChanged"`
	Transfer      bool `json:"transfer"`
}

type OrganizationDetailDTO

type OrganizationDetailDTO struct {
	CreatedAt time.Time   `json:"createdAt"`
	Id        string      `json:"id"`
	Metadata  interface{} `json:"metadata"`
	Name      string      `json:"name"`
	Slug      string      `json:"slug"`
	UpdatedAt time.Time   `json:"updatedAt"`
}

type OrganizationHandler

type OrganizationHandler struct {
}

type OrganizationSettingsDTO

type OrganizationSettingsDTO struct {
	MaxTeamsPerOrg           int    `json:"maxTeamsPerOrg"`
	AllowUserCreation        bool   `json:"allowUserCreation"`
	DefaultRole              string `json:"defaultRole"`
	MaxMembersPerOrg         int    `json:"maxMembersPerOrg"`
	RequireInvitation        bool   `json:"requireInvitation"`
	AllowMultipleMemberships bool   `json:"allowMultipleMemberships"`
	Enabled                  bool   `json:"enabled"`
	InvitationExpiryDays     int    `json:"invitationExpiryDays"`
	MaxOrgsPerUser           int    `json:"maxOrgsPerUser"`
}

type OrganizationStatsDTO

type OrganizationStatsDTO struct {
	TotalMembers       int64 `json:"totalMembers"`
	TotalOrganizations int64 `json:"totalOrganizations"`
	TotalTeams         int64 `json:"totalTeams"`
}

type OrganizationSummaryDTO

type OrganizationSummaryDTO struct {
	MemberCount int64     `json:"memberCount"`
	Name        string    `json:"name"`
	Slug        string    `json:"slug"`
	TeamCount   int64     `json:"teamCount"`
	UserRole    string    `json:"userRole"`
	CreatedAt   time.Time `json:"createdAt"`
	Id          string    `json:"id"`
}

type OrganizationUIRegistry

type OrganizationUIRegistry struct {
}

type OverviewStatsDTO

type OverviewStatsDTO struct {
	OpenRate       float64 `json:"openRate"`
	TotalBounced   int64   `json:"totalBounced"`
	TotalClicked   int64   `json:"totalClicked"`
	TotalDelivered int64   `json:"totalDelivered"`
	TotalFailed    int64   `json:"totalFailed"`
	TotalSent      int64   `json:"totalSent"`
	BounceRate     float64 `json:"bounceRate"`
	ClickRate      float64 `json:"clickRate"`
	DeliveryRate   float64 `json:"deliveryRate"`
	TotalOpened    int64   `json:"totalOpened"`
}

type PaginationDTO

type PaginationDTO struct {
	PageSize    int   `json:"pageSize"`
	TotalCount  int64 `json:"totalCount"`
	TotalPages  int   `json:"totalPages"`
	CurrentPage int   `json:"currentPage"`
	HasNext     bool  `json:"hasNext"`
	HasPrev     bool  `json:"hasPrev"`
}

type PaginationInfo

type PaginationInfo struct {
	CurrentPage int   `json:"currentPage"`
	PageSize    int   `json:"pageSize"`
	TotalItems  int64 `json:"totalItems"`
	TotalPages  int   `json:"totalPages"`
}

type PaginationInfoDTO

type PaginationInfoDTO struct {
	PageSize    int   `json:"pageSize"`
	TotalItems  int64 `json:"totalItems"`
	TotalPages  int   `json:"totalPages"`
	CurrentPage int   `json:"currentPage"`
}

type PasskeyInfo

type PasskeyInfo struct {
	AuthenticatorType string    `json:"authenticatorType"`
	CreatedAt         time.Time `json:"createdAt"`
	CredentialId      string    `json:"credentialId"`
	IsResidentKey     bool      `json:"isResidentKey"`
	LastUsedAt        Time      `json:"lastUsedAt"`
	Name              string    `json:"name"`
	Aaguid            string    `json:"aaguid"`
	Id                string    `json:"id"`
	SignCount         uint      `json:"signCount"`
}

type PhoneVerifyResponse

type PhoneVerifyResponse struct {
	Token   string  `json:"token"`
	User    User    `json:"user"`
	Session Session `json:"session"`
}

type Plugin

type Plugin interface {
	// ID returns the unique plugin identifier
	ID() string

	// Init initializes the plugin with the client
	Init(client *Client) error
}

Plugin defines the interface for client plugins

type PoliciesListResponse

type PoliciesListResponse struct {
	Policies   []*PolicyResponse `json:"policies"`
	TotalCount int               `json:"totalCount"`
	Page       int               `json:"page"`
	PageSize   int               `json:"pageSize"`
}

type PolicyEngine

type PolicyEngine struct {
}

type PolicyPreviewResponse

type PolicyPreviewResponse struct {
	Actions      []string `json:"actions"`
	Description  string   `json:"description"`
	Expression   string   `json:"expression"`
	Name         string   `json:"name"`
	ResourceType string   `json:"resourceType"`
}

type PolicyResponse

type PolicyResponse struct {
	ResourceType       string    `json:"resourceType"`
	Actions            []string  `json:"actions"`
	EnvironmentId      string    `json:"environmentId"`
	Name               string    `json:"name"`
	Description        string    `json:"description"`
	Id                 string    `json:"id"`
	CreatedAt          time.Time `json:"createdAt"`
	UpdatedAt          time.Time `json:"updatedAt"`
	UserOrganizationId *string   `json:"userOrganizationId"`
	Version            int       `json:"version"`
	AppId              string    `json:"appId"`
	CreatedBy          string    `json:"createdBy"`
	Enabled            bool      `json:"enabled"`
	Expression         string    `json:"expression"`
	NamespaceId        string    `json:"namespaceId"`
	Priority           int       `json:"priority"`
}

type PolicyStats

type PolicyStats struct {
	PolicyId        string  `json:"policyId"`
	PolicyName      string  `json:"policyName"`
	AllowCount      int64   `json:"allowCount"`
	AvgLatencyMs    float64 `json:"avgLatencyMs"`
	DenyCount       int64   `json:"denyCount"`
	EvaluationCount int64   `json:"evaluationCount"`
}

type PreviewConversionRequest

type PreviewConversionRequest struct {
	Actions   []string `json:"actions"`
	Condition string   `json:"condition"`
	Resource  string   `json:"resource"`
	Subject   string   `json:"subject"`
}

type PreviewConversionResponse

type PreviewConversionResponse struct {
	ResourceType  string `json:"resourceType"`
	Success       bool   `json:"success"`
	CelExpression string `json:"celExpression"`
	Error         string `json:"error"`
	PolicyName    string `json:"policyName"`
	ResourceId    string `json:"resourceId"`
}

type PreviewTemplateInput

type PreviewTemplateInput struct {
	TemplateId string      `json:"templateId"`
	Variables  interface{} `json:"variables"`
}

type PreviewTemplateRequest

type PreviewTemplateRequest struct {
}

type PreviewTemplateResponse

type PreviewTemplateResponse struct {
	Body    string `json:"body"`
	Subject string `json:"subject"`
}

type PreviewTemplateResult

type PreviewTemplateResult struct {
	Body       string `json:"body"`
	RenderedAt string `json:"renderedAt"`
	Subject    string `json:"subject"`
}

type PreviewTemplate_req

type PreviewTemplate_req struct {
	Variables interface{} `json:"variables"`
}

type PrivacySettings

type PrivacySettings struct {
	CcpaMode                        bool      `json:"ccpaMode"`
	ConsentRequired                 bool      `json:"consentRequired"`
	ContactEmail                    string    `json:"contactEmail"`
	CookieConsentStyle              string    `json:"cookieConsentStyle"`
	DataExportExpiryHours           int       `json:"dataExportExpiryHours"`
	DeletionGracePeriodDays         int       `json:"deletionGracePeriodDays"`
	ExportFormat                    []string  `json:"exportFormat"`
	RequireExplicitConsent          bool      `json:"requireExplicitConsent"`
	AnonymousConsentEnabled         bool      `json:"anonymousConsentEnabled"`
	CookieConsentEnabled            bool      `json:"cookieConsentEnabled"`
	CreatedAt                       time.Time `json:"createdAt"`
	DataRetentionDays               int       `json:"dataRetentionDays"`
	Id                              xid.ID    `json:"id"`
	Metadata                        JSONBMap  `json:"metadata"`
	RequireAdminApprovalForDeletion bool      `json:"requireAdminApprovalForDeletion"`
	UpdatedAt                       time.Time `json:"updatedAt"`
	AllowDataPortability            bool      `json:"allowDataPortability"`
	AutoDeleteAfterDays             int       `json:"autoDeleteAfterDays"`
	ContactPhone                    string    `json:"contactPhone"`
	DpoEmail                        string    `json:"dpoEmail"`
	GdprMode                        bool      `json:"gdprMode"`
	OrganizationId                  string    `json:"organizationId"`
}

type PrivacySettingsRequest

type PrivacySettingsRequest struct {
	DataRetentionDays               *int     `json:"dataRetentionDays"`
	GdprMode                        *bool    `json:"gdprMode"`
	CcpaMode                        *bool    `json:"ccpaMode"`
	ContactEmail                    string   `json:"contactEmail"`
	DataExportExpiryHours           *int     `json:"dataExportExpiryHours"`
	ExportFormat                    []string `json:"exportFormat"`
	ConsentRequired                 *bool    `json:"consentRequired"`
	CookieConsentStyle              string   `json:"cookieConsentStyle"`
	DeletionGracePeriodDays         *int     `json:"deletionGracePeriodDays"`
	RequireAdminApprovalForDeletion *bool    `json:"requireAdminApprovalForDeletion"`
	RequireExplicitConsent          *bool    `json:"requireExplicitConsent"`
	AnonymousConsentEnabled         *bool    `json:"anonymousConsentEnabled"`
	AutoDeleteAfterDays             *int     `json:"autoDeleteAfterDays"`
	DpoEmail                        string   `json:"dpoEmail"`
	AllowDataPortability            *bool    `json:"allowDataPortability"`
	ContactPhone                    string   `json:"contactPhone"`
	CookieConsentEnabled            *bool    `json:"cookieConsentEnabled"`
}

type ProviderCheckResult

type ProviderCheckResult struct {
}

type ProviderConfig

type ProviderConfig struct{}

Placeholder types for undefined/missing types

type ProviderConfigResponse

type ProviderConfigResponse struct {
	AppId    string `json:"appId"`
	Message  string `json:"message"`
	Provider string `json:"provider"`
}

type ProviderDetailResponse

type ProviderDetailResponse struct {
	AttributeMapping interface{} `json:"attributeMapping"`
	CreatedAt        string      `json:"createdAt"`
	Domain           string      `json:"domain"`
	OidcIssuer       string      `json:"oidcIssuer"`
	OidcRedirectURI  string      `json:"oidcRedirectURI"`
	ProviderId       string      `json:"providerId"`
	SamlIssuer       string      `json:"samlIssuer"`
	UpdatedAt        string      `json:"updatedAt"`
	HasSamlCert      bool        `json:"hasSamlCert"`
	OidcClientID     string      `json:"oidcClientID"`
	SamlEntryPoint   string      `json:"samlEntryPoint"`
	Type             string      `json:"type"`
}

type ProviderDiscoveredResponse

type ProviderDiscoveredResponse struct {
	Found      bool   `json:"found"`
	ProviderId string `json:"providerId"`
	Type       string `json:"type"`
}

type ProviderInfo

type ProviderInfo struct {
	CreatedAt  string `json:"createdAt"`
	Domain     string `json:"domain"`
	ProviderId string `json:"providerId"`
	Type       string `json:"type"`
}

type ProviderListResponse

type ProviderListResponse struct {
	Providers []ProviderInfo `json:"providers"`
	Total     int            `json:"total"`
}

type ProviderRegisteredResponse

type ProviderRegisteredResponse struct {
	ProviderId string `json:"providerId"`
	Status     string `json:"status"`
	Type       string `json:"type"`
}

type ProviderSession

type ProviderSession struct {
}

type ProviderSessionRequest

type ProviderSessionRequest struct {
}

type ProvidersAppResponse

type ProvidersAppResponse struct {
	AppId     string   `json:"appId"`
	Providers []string `json:"providers"`
}

type ProvidersConfig

type ProvidersConfig struct {
	Sms   *SMSProviderConfig  `json:"sms"`
	Email EmailProviderConfig `json:"email"`
}

type ProvidersConfigDTO

type ProvidersConfigDTO struct {
	SmsProvider   SMSProviderDTO   `json:"smsProvider"`
	EmailProvider EmailProviderDTO `json:"emailProvider"`
}

type ProvidersResponse

type ProvidersResponse struct {
	Providers []string `json:"providers"`
}

type PublishContentTypeRequest

type PublishContentTypeRequest struct {
}

type PublishEntryRequest

type PublishEntryRequest struct {
}

type QueryEntriesRequest

type QueryEntriesRequest struct {
}

type QuickLinkDataDTO

type QuickLinkDataDTO struct {
	Url          string `json:"url"`
	Description  string `json:"description"`
	Icon         string `json:"icon"`
	Id           string `json:"id"`
	Order        int    `json:"order"`
	RequireAdmin bool   `json:"requireAdmin"`
	Title        string `json:"title"`
}

type RateLimit

type RateLimit struct {
	Max_requests int           `json:"max_requests"`
	Window       time.Duration `json:"window"`
}

type RateLimitConfig

type RateLimitConfig struct {
	Enabled bool          `json:"enabled"`
	Window  time.Duration `json:"window"`
}

type RateLimitRule

type RateLimitRule struct {
	Max    int           `json:"max"`
	Window time.Duration `json:"window"`
}

type RateLimiter

type RateLimiter struct {
}

type RateLimitingConfig

type RateLimitingConfig struct {
	MaxAttemptsPerDay    int           `json:"maxAttemptsPerDay"`
	MaxAttemptsPerHour   int           `json:"maxAttemptsPerHour"`
	MaxAttemptsPerIp     int           `json:"maxAttemptsPerIp"`
	Enabled              bool          `json:"enabled"`
	ExponentialBackoff   bool          `json:"exponentialBackoff"`
	IpCooldownPeriod     time.Duration `json:"ipCooldownPeriod"`
	LockoutAfterAttempts int           `json:"lockoutAfterAttempts"`
	LockoutDuration      time.Duration `json:"lockoutDuration"`
}

type RecordCookieConsentRequest

type RecordCookieConsentRequest struct {
	BannerVersion   string `json:"bannerVersion"`
	Essential       bool   `json:"essential"`
	Functional      bool   `json:"functional"`
	Marketing       bool   `json:"marketing"`
	Personalization bool   `json:"personalization"`
	SessionId       string `json:"sessionId"`
	ThirdParty      bool   `json:"thirdParty"`
	Analytics       bool   `json:"analytics"`
}

type RecordCookieConsentResponse

type RecordCookieConsentResponse struct {
	Preferences interface{} `json:"preferences"`
}

type RecoveryAttemptLog

type RecoveryAttemptLog struct {
}

type RecoveryCodeUsage

type RecoveryCodeUsage struct {
}

type RecoveryCodesConfig

type RecoveryCodesConfig struct {
	AllowPrint      bool   `json:"allowPrint"`
	AutoRegenerate  bool   `json:"autoRegenerate"`
	CodeCount       int    `json:"codeCount"`
	CodeLength      int    `json:"codeLength"`
	Enabled         bool   `json:"enabled"`
	Format          string `json:"format"`
	RegenerateCount int    `json:"regenerateCount"`
	AllowDownload   bool   `json:"allowDownload"`
}

type RecoveryConfiguration

type RecoveryConfiguration struct {
}

type RecoveryMethod

type RecoveryMethod = string

Placeholder type aliases for undefined enum/custom types

type RecoverySession

type RecoverySession struct {
}

type RecoverySessionInfo

type RecoverySessionInfo struct {
	TotalSteps     int            `json:"totalSteps"`
	UserEmail      string         `json:"userEmail"`
	CompletedAt    Time           `json:"completedAt"`
	CreatedAt      time.Time      `json:"createdAt"`
	CurrentStep    int            `json:"currentStep"`
	ExpiresAt      time.Time      `json:"expiresAt"`
	Method         RecoveryMethod `json:"method"`
	RequiresReview bool           `json:"requiresReview"`
	UserId         xid.ID         `json:"userId"`
	Id             xid.ID         `json:"id"`
	RiskScore      float64        `json:"riskScore"`
	Status         RecoveryStatus `json:"status"`
}

type RecoveryStatus

type RecoveryStatus = string

Placeholder type aliases for undefined enum/custom types

type RedisChallengeStore

type RedisChallengeStore struct {
}

type RedisStateStore

type RedisStateStore struct {
	Client Client `json:"client,omitempty"`
}

type RefreshResponse

type RefreshResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
}

type RefreshSessionRequest

type RefreshSessionRequest struct {
	RefreshToken string `json:"refreshToken"`
}

type RefreshSessionResponse

type RefreshSessionResponse struct {
	Session          interface{} `json:"session"`
	AccessToken      string      `json:"accessToken"`
	RefreshToken     string      `json:"refreshToken"`
	ExpiresAt        string      `json:"expiresAt"`
	RefreshExpiresAt string      `json:"refreshExpiresAt"`
}

type RegenerateCodesRequest

type RegenerateCodesRequest struct {
	Count   int    `json:"count"`
	User_id string `json:"user_id"`
}

type RegisterClientRequest

type RegisterClientRequest struct {
	Tos_uri                    string   `json:"tos_uri"`
	Trusted_client             bool     `json:"trusted_client"`
	Grant_types                []string `json:"grant_types"`
	Policy_uri                 string   `json:"policy_uri"`
	Post_logout_redirect_uris  []string `json:"post_logout_redirect_uris"`
	Redirect_uris              []string `json:"redirect_uris"`
	Response_types             []string `json:"response_types"`
	Client_name                string   `json:"client_name"`
	Scope                      string   `json:"scope"`
	Token_endpoint_auth_method string   `json:"token_endpoint_auth_method"`
	Contacts                   []string `json:"contacts"`
	Logo_uri                   string   `json:"logo_uri"`
	Require_consent            bool     `json:"require_consent"`
	Application_type           string   `json:"application_type"`
	Require_pkce               bool     `json:"require_pkce"`
}

type RegisterClientResponse

type RegisterClientResponse struct {
	Application_type           string   `json:"application_type"`
	Contacts                   []string `json:"contacts"`
	Response_types             []string `json:"response_types"`
	Client_id_issued_at        int64    `json:"client_id_issued_at"`
	Policy_uri                 string   `json:"policy_uri"`
	Client_id                  string   `json:"client_id"`
	Client_name                string   `json:"client_name"`
	Client_secret              string   `json:"client_secret"`
	Client_secret_expires_at   int64    `json:"client_secret_expires_at"`
	Post_logout_redirect_uris  []string `json:"post_logout_redirect_uris"`
	Token_endpoint_auth_method string   `json:"token_endpoint_auth_method"`
	Grant_types                []string `json:"grant_types"`
	Logo_uri                   string   `json:"logo_uri"`
	Redirect_uris              []string `json:"redirect_uris"`
	Scope                      string   `json:"scope"`
	Tos_uri                    string   `json:"tos_uri"`
}

type RegisterProviderRequest

type RegisterProviderRequest struct {
	SamlCert         string      `json:"samlCert"`
	SamlEntryPoint   string      `json:"samlEntryPoint"`
	SamlIssuer       string      `json:"samlIssuer"`
	Type             string      `json:"type"`
	AttributeMapping interface{} `json:"attributeMapping"`
	Domain           string      `json:"domain"`
	OidcClientID     string      `json:"oidcClientID"`
	OidcClientSecret string      `json:"oidcClientSecret"`
	OidcIssuer       string      `json:"oidcIssuer"`
	ProviderId       string      `json:"providerId"`
	OidcRedirectURI  string      `json:"oidcRedirectURI"`
}

type RegisterProviderResponse

type RegisterProviderResponse struct {
	ProviderId string `json:"providerId"`
	Status     string `json:"status"`
	Type       string `json:"type"`
}

type RegistrationService

type RegistrationService struct {
}

type RejectRecoveryRequest

type RejectRecoveryRequest struct {
	Notes     string `json:"notes"`
	Reason    string `json:"reason"`
	SessionId xid.ID `json:"sessionId"`
}

type RejectRecoveryResponse

type RejectRecoveryResponse struct {
	SessionId  xid.ID    `json:"sessionId"`
	Message    string    `json:"message"`
	Reason     string    `json:"reason"`
	Rejected   bool      `json:"rejected"`
	RejectedAt time.Time `json:"rejectedAt"`
}

type RemoveMemberInput

type RemoveMemberInput struct {
	AppId    string `json:"appId"`
	MemberId string `json:"memberId"`
	OrgId    string `json:"orgId"`
}

type RemoveMemberRequest

type RemoveMemberRequest struct {
}

type RemoveMemberResult

type RemoveMemberResult struct {
	Success bool `json:"success"`
}

type RemoveTeamMemberRequest

type RemoveTeamMemberRequest struct {
}

type RemoveTrustedContactRequest

type RemoveTrustedContactRequest struct {
	ContactId xid.ID `json:"contactId"`
}

type RemoveTrustedContactResponse

type RemoveTrustedContactResponse struct {
	Status string `json:"status"`
}

type RenderTemplateRequest

type RenderTemplateRequest struct {
}

type RenderTemplateResponse

type RenderTemplateResponse struct {
	Subject string `json:"subject"`
	Body    string `json:"body"`
}

type RenderTemplate_req

type RenderTemplate_req struct {
	Variables interface{} `json:"variables"`
	Template  string      `json:"template"`
}

type ReorderFieldsRequest

type ReorderFieldsRequest struct {
}

type ReportsConfig

type ReportsConfig struct {
	RetentionDays   int      `json:"retentionDays"`
	Schedule        string   `json:"schedule"`
	StoragePath     string   `json:"storagePath"`
	Enabled         bool     `json:"enabled"`
	Formats         []string `json:"formats"`
	IncludeEvidence bool     `json:"includeEvidence"`
}

type RequestDataDeletionRequest

type RequestDataDeletionRequest struct {
	DeleteSections []string `json:"deleteSections"`
	Reason         string   `json:"reason"`
}

type RequestDataDeletionResponse

type RequestDataDeletionResponse struct {
	Id     string `json:"id"`
	Status string `json:"status"`
}

type RequestDataExportRequest

type RequestDataExportRequest struct {
	Format          string   `json:"format"`
	IncludeSections []string `json:"includeSections"`
}

type RequestDataExportResponse

type RequestDataExportResponse struct {
	Status string `json:"status"`
	Id     string `json:"id"`
}

type RequestEmailChangeRequest

type RequestEmailChangeRequest struct {
	NewEmail string `json:"newEmail"`
}

type RequestEmailChangeResponse

type RequestEmailChangeResponse struct {
	Message string `json:"message"`
}

type RequestPasswordResetRequest

type RequestPasswordResetRequest struct {
	Email string `json:"email"`
}

type RequestPasswordResetResponse

type RequestPasswordResetResponse struct {
	Message string `json:"message"`
}

type RequestReverificationRequest

type RequestReverificationRequest struct {
	Reason string `json:"reason"`
}

type RequestReverificationResponse

type RequestReverificationResponse struct {
	Session interface{} `json:"session"`
}

type RequestReverification_req

type RequestReverification_req struct {
	Reason string `json:"reason"`
}

type RequestTrustedContactVerificationRequest

type RequestTrustedContactVerificationRequest struct {
	ContactId xid.ID `json:"contactId"`
	SessionId xid.ID `json:"sessionId"`
}

type RequestTrustedContactVerificationResponse

type RequestTrustedContactVerificationResponse struct {
	Message     string    `json:"message"`
	NotifiedAt  time.Time `json:"notifiedAt"`
	ContactId   xid.ID    `json:"contactId"`
	ContactName string    `json:"contactName"`
	ExpiresAt   time.Time `json:"expiresAt"`
}

type RequirementsResponse

type RequirementsResponse struct {
	Count        int         `json:"count"`
	Requirements interface{} `json:"requirements"`
}

type ResendNotificationRequest

type ResendNotificationRequest struct {
}

type ResendNotificationResponse

type ResendNotificationResponse struct {
	Notification interface{} `json:"notification"`
}

type ResendRequest

type ResendRequest struct {
	Email string `json:"email"`
}

type ResendResponse

type ResendResponse struct {
	Status string `json:"status"`
}

type ResetAllTemplatesResponse

type ResetAllTemplatesResponse struct {
	Status string `json:"status"`
}

type ResetPasswordRequest

type ResetPasswordRequest struct {
	Token       string `json:"token"`
	NewPassword string `json:"newPassword"`
}

type ResetPasswordResponse

type ResetPasswordResponse struct {
	Message string `json:"message"`
}

type ResetTemplateRequest

type ResetTemplateRequest struct {
}

type ResetTemplateResponse

type ResetTemplateResponse struct {
	Status string `json:"status"`
}

type ResetUserMFARequest

type ResetUserMFARequest struct {
	Reason string `json:"reason"`
}

type ResetUserMFAResponse

type ResetUserMFAResponse struct {
	FactorsReset   int    `json:"factorsReset"`
	Message        string `json:"message"`
	Success        bool   `json:"success"`
	DevicesRevoked int    `json:"devicesRevoked"`
}

type ResolveViolationRequest

type ResolveViolationRequest struct {
	Notes      string `json:"notes"`
	Resolution string `json:"resolution"`
}

type ResolveViolationResponse

type ResolveViolationResponse struct {
	Status string `json:"status"`
}

type ResourceAttributeRequest

type ResourceAttributeRequest struct {
	Type        string      `json:"type"`
	Default     interface{} `json:"default"`
	Description string      `json:"description"`
	Name        string      `json:"name"`
	Required    bool        `json:"required"`
}

type ResourceResponse

type ResourceResponse struct {
	Attributes  ResourceAttribute `json:"attributes"`
	CreatedAt   time.Time         `json:"createdAt"`
	Description string            `json:"description"`
	Id          string            `json:"id"`
	NamespaceId string            `json:"namespaceId"`
	Type        string            `json:"type"`
}

type ResourceRule

type ResourceRule struct {
	Action         string        `json:"action"`
	Description    string        `json:"description"`
	Org_id         string        `json:"org_id"`
	Resource_type  string        `json:"resource_type"`
	Security_level SecurityLevel `json:"security_level"`
	Sensitivity    string        `json:"sensitivity"`
}

type ResourceTypeStats

type ResourceTypeStats struct {
	AllowRate       float64 `json:"allowRate"`
	AvgLatencyMs    float64 `json:"avgLatencyMs"`
	EvaluationCount int64   `json:"evaluationCount"`
	ResourceType    string  `json:"resourceType"`
}

type ResourcesListResponse

type ResourcesListResponse struct {
	Resources  []*ResourceResponse `json:"resources"`
	TotalCount int                 `json:"totalCount"`
}

type RestoreEntryRequest

type RestoreEntryRequest struct {
}

type RestoreRevisionRequest

type RestoreRevisionRequest struct {
}

type RestoreTemplateVersionRequest

type RestoreTemplateVersionRequest struct {
}

type RetentionConfig

type RetentionConfig struct {
	ArchiveBeforePurge bool   `json:"archiveBeforePurge"`
	ArchivePath        string `json:"archivePath"`
	Enabled            bool   `json:"enabled"`
	GracePeriodDays    int    `json:"gracePeriodDays"`
	PurgeSchedule      string `json:"purgeSchedule"`
}

type RevealSecretInput

type RevealSecretInput struct {
	AppId    string `json:"appId"`
	SecretId string `json:"secretId"`
}

type RevealSecretOutput

type RevealSecretOutput struct {
	Value     interface{} `json:"value"`
	ValueType string      `json:"valueType"`
}

type ReverifyRequest

type ReverifyRequest struct {
	Reason string `json:"reason"`
}

type ReviewDocumentRequest

type ReviewDocumentRequest struct {
	Approved        bool   `json:"approved"`
	DocumentId      xid.ID `json:"documentId"`
	Notes           string `json:"notes"`
	RejectionReason string `json:"rejectionReason"`
}

type ReviewDocumentResponse

type ReviewDocumentResponse struct {
	Status string `json:"status"`
}

type RevisionHandler

type RevisionHandler struct {
}

type RevokeAllRequest

type RevokeAllRequest struct {
	IncludeCurrentSession bool `json:"includeCurrentSession"`
}

type RevokeAllResponse

type RevokeAllResponse struct {
	RevokedCount int    `json:"revokedCount"`
	Status       string `json:"status"`
}

type RevokeAllUserSessionsInput

type RevokeAllUserSessionsInput struct {
	AppId  string `json:"appId"`
	UserId string `json:"userId"`
}

type RevokeAllUserSessionsResult

type RevokeAllUserSessionsResult struct {
	Message      string `json:"message"`
	RevokedCount int    `json:"revokedCount"`
	Success      bool   `json:"success"`
}

type RevokeConsentRequest

type RevokeConsentRequest struct {
	Metadata interface{} `json:"metadata"`
	Reason   string      `json:"reason"`
	Granted  *bool       `json:"granted"`
}

type RevokeConsentResponse

type RevokeConsentResponse struct {
	Status string `json:"status"`
}

type RevokeDeviceRequest

type RevokeDeviceRequest struct {
	Fingerprint string `json:"fingerprint"`
}

type RevokeDeviceResponse

type RevokeDeviceResponse struct {
	Status string `json:"status"`
}

type RevokeOthersResponse

type RevokeOthersResponse struct {
	Status       string `json:"status"`
	RevokedCount int    `json:"revokedCount"`
}

type RevokeResponse

type RevokeResponse struct {
	Status       string `json:"status"`
	RevokedCount int    `json:"revokedCount"`
}

type RevokeSessionInput

type RevokeSessionInput struct {
	AppId     string `json:"appId"`
	SessionId string `json:"sessionId"`
}

type RevokeSessionRequestDTO

type RevokeSessionRequestDTO struct {
}

type RevokeSessionResult

type RevokeSessionResult struct {
	Message string `json:"message"`
	Success bool   `json:"success"`
}

type RevokeTokenRequest

type RevokeTokenRequest struct {
	Client_id       string `json:"client_id"`
	Client_secret   string `json:"client_secret"`
	Token           string `json:"token"`
	Token_type_hint string `json:"token_type_hint"`
}

type RevokeTokenService

type RevokeTokenService struct {
}

type RevokeTrustedDeviceRequest

type RevokeTrustedDeviceRequest struct {
}

type RiskAssessment

type RiskAssessment struct {
	Score       float64      `json:"score"`
	Factors     []string     `json:"factors"`
	Level       RiskLevel    `json:"level"`
	Metadata    interface{}  `json:"metadata"`
	Recommended []FactorType `json:"recommended"`
}

type RiskAssessmentConfig

type RiskAssessmentConfig struct {
	BlockHighRisk       bool    `json:"blockHighRisk"`
	Enabled             bool    `json:"enabled"`
	HighRiskThreshold   float64 `json:"highRiskThreshold"`
	HistoryWeight       float64 `json:"historyWeight"`
	LowRiskThreshold    float64 `json:"lowRiskThreshold"`
	NewDeviceWeight     float64 `json:"newDeviceWeight"`
	NewLocationWeight   float64 `json:"newLocationWeight"`
	MediumRiskThreshold float64 `json:"mediumRiskThreshold"`
	NewIpWeight         float64 `json:"newIpWeight"`
	RequireReviewAbove  float64 `json:"requireReviewAbove"`
	VelocityWeight      float64 `json:"velocityWeight"`
}

type RiskContext

type RiskContext struct {
}

type RiskEngine

type RiskEngine struct {
}

type RiskFactor

type RiskFactor struct {
}

type RiskLevel

type RiskLevel = string

Placeholder type aliases for undefined enum/custom types

type Role

type Role struct{}

Placeholder types for undefined/missing types

type RoleTemplateDTO

type RoleTemplateDTO struct {
	Id          string    `json:"id"`
	Name        string    `json:"name"`
	Permissions []string  `json:"permissions"`
	UpdatedAt   time.Time `json:"updatedAt"`
	CreatedAt   time.Time `json:"createdAt"`
	Description string    `json:"description"`
}

type RolesResponse

type RolesResponse struct {
	Roles Role `json:"roles"`
}

type RollbackRequest

type RollbackRequest struct {
	Reason string `json:"reason"`
}

type RotateAPIKeyRequest

type RotateAPIKeyRequest struct {
}

type RotateAPIKeyResponse

type RotateAPIKeyResponse struct {
	Message string `json:"message"`
	Api_key APIKey `json:"api_key"`
}

type RoundTripperMiddleware

type RoundTripperMiddleware struct {
	// contains filtered or unexported fields
}

RoundTripperMiddleware wraps http.RoundTripper with auth injection Use this to automatically inject authentication headers and context into all HTTP requests made by a standard http.Client

func (*RoundTripperMiddleware) RoundTrip

func (m *RoundTripperMiddleware) RoundTrip(req *http.Request) (*http.Response, error)

RoundTrip implements http.RoundTripper interface

type RouteRule

type RouteRule struct {
	Description    string        `json:"description"`
	Method         string        `json:"method"`
	Org_id         string        `json:"org_id"`
	Pattern        string        `json:"pattern"`
	Security_level SecurityLevel `json:"security_level"`
}

type RunCheckRequest

type RunCheckRequest struct {
	CheckType string `json:"checkType"`
}

type RunCheckResponse

type RunCheckResponse struct {
	Id string `json:"id"`
}

type RunCheck_req

type RunCheck_req struct {
	CheckType string `json:"checkType"`
}

type SAMLCallbackResponse

type SAMLCallbackResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
	User    User    `json:"user"`
}

type SAMLLoginRequest

type SAMLLoginRequest struct {
	RelayState string `json:"relayState"`
}

type SAMLLoginResponse

type SAMLLoginResponse struct {
	ProviderId  string `json:"providerId"`
	RedirectUrl string `json:"redirectUrl"`
	RequestId   string `json:"requestId"`
}

type SAMLSPMetadataResponse

type SAMLSPMetadataResponse struct {
	Metadata string `json:"metadata"`
}

type SMSConfig

type SMSConfig struct {
	Rate_limit          *RateLimitConfig `json:"rate_limit"`
	Template_id         string           `json:"template_id"`
	Code_expiry_minutes int              `json:"code_expiry_minutes"`
	Code_length         int              `json:"code_length"`
	Enabled             bool             `json:"enabled"`
	Provider            string           `json:"provider"`
}

type SMSFactorAdapter

type SMSFactorAdapter struct {
}

type SMSProviderConfig

type SMSProviderConfig struct {
	Config   interface{} `json:"config"`
	From     string      `json:"from"`
	Provider string      `json:"provider"`
}

type SMSProviderDTO

type SMSProviderDTO struct {
	Config  interface{} `json:"config"`
	Enabled bool        `json:"enabled"`
	Type    string      `json:"type"`
}

type SMSVerificationConfig

type SMSVerificationConfig struct {
	Provider        string        `json:"provider"`
	CodeExpiry      time.Duration `json:"codeExpiry"`
	CodeLength      int           `json:"codeLength"`
	CooldownPeriod  time.Duration `json:"cooldownPeriod"`
	Enabled         bool          `json:"enabled"`
	MaxAttempts     int           `json:"maxAttempts"`
	MaxSmsPerDay    int           `json:"maxSmsPerDay"`
	MessageTemplate string        `json:"messageTemplate"`
}

type SSOAuthResponse

type SSOAuthResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
	User    User    `json:"user"`
}

type SaveBuilderTemplateInput

type SaveBuilderTemplateInput struct {
	BuilderJson string `json:"builderJson"`
	Name        string `json:"name"`
	Subject     string `json:"subject"`
	TemplateId  string `json:"templateId"`
	TemplateKey string `json:"templateKey"`
}

type SaveBuilderTemplateResult

type SaveBuilderTemplateResult struct {
	Success    bool   `json:"success"`
	TemplateId string `json:"templateId"`
	Message    string `json:"message"`
}

type ScheduleVideoSessionRequest

type ScheduleVideoSessionRequest struct {
	TimeZone    string    `json:"timeZone"`
	ScheduledAt time.Time `json:"scheduledAt"`
	SessionId   xid.ID    `json:"sessionId"`
}

type ScheduleVideoSessionResponse

type ScheduleVideoSessionResponse struct {
	Instructions   string    `json:"instructions"`
	JoinUrl        string    `json:"joinUrl"`
	Message        string    `json:"message"`
	ScheduledAt    time.Time `json:"scheduledAt"`
	VideoSessionId xid.ID    `json:"videoSessionId"`
}

type SchemaValidator

type SchemaValidator struct {
}

type ScopeDefinition

type ScopeDefinition struct {
}

type ScopeInfo

type ScopeInfo struct {
}

type ScopeResolver

type ScopeResolver struct {
}

type SecretItem

type SecretItem struct {
	UpdatedAt   string   `json:"updatedAt"`
	ValueType   string   `json:"valueType"`
	Key         string   `json:"key"`
	Version     int      `json:"version"`
	CreatedAt   string   `json:"createdAt"`
	Description string   `json:"description"`
	Id          string   `json:"id"`
	Path        string   `json:"path"`
	Tags        []string `json:"tags"`
}

type SecretsConfigSource

type SecretsConfigSource struct {
}

type SecurityLevel

type SecurityLevel = string

Placeholder type aliases for undefined enum/custom types

type SecurityQuestion

type SecurityQuestion struct {
}

type SecurityQuestionInfo

type SecurityQuestionInfo struct {
	Id           xid.ID `json:"id"`
	IsCustom     bool   `json:"isCustom"`
	QuestionId   int    `json:"questionId"`
	QuestionText string `json:"questionText"`
}

type SecurityQuestionsConfig

type SecurityQuestionsConfig struct {
	AllowCustomQuestions bool          `json:"allowCustomQuestions"`
	CaseSensitive        bool          `json:"caseSensitive"`
	Enabled              bool          `json:"enabled"`
	ForbidCommonAnswers  bool          `json:"forbidCommonAnswers"`
	LockoutDuration      time.Duration `json:"lockoutDuration"`
	MinimumQuestions     int           `json:"minimumQuestions"`
	RequiredToRecover    int           `json:"requiredToRecover"`
	MaxAnswerLength      int           `json:"maxAnswerLength"`
	MaxAttempts          int           `json:"maxAttempts"`
	PredefinedQuestions  []string      `json:"predefinedQuestions"`
	RequireMinLength     int           `json:"requireMinLength"`
}

type SendCodeRequest

type SendCodeRequest struct {
	Phone string `json:"phone"`
}

type SendCodeResponse

type SendCodeResponse struct {
	Dev_code string `json:"dev_code"`
	Status   string `json:"status"`
}

type SendNotificationResponse

type SendNotificationResponse struct {
	Notification interface{} `json:"notification"`
}

type SendOTPRequest

type SendOTPRequest struct {
	User_id string `json:"user_id"`
}

type SendOTPResponse

type SendOTPResponse struct {
	Code   string `json:"code"`
	Status string `json:"status"`
}

type SendRequest

type SendRequest struct {
	Email string `json:"email"`
}

type SendResponse

type SendResponse struct {
	Dev_otp string `json:"dev_otp"`
	Status  string `json:"status"`
}

type SendVerificationCodeRequest

type SendVerificationCodeRequest struct {
	SessionId xid.ID         `json:"sessionId"`
	Target    string         `json:"target"`
	Method    RecoveryMethod `json:"method"`
}

type SendVerificationCodeResponse

type SendVerificationCodeResponse struct {
	ExpiresAt    time.Time `json:"expiresAt"`
	MaskedTarget string    `json:"maskedTarget"`
	Message      string    `json:"message"`
	Sent         bool      `json:"sent"`
}

type SendWithTemplateRequest

type SendWithTemplateRequest struct {
	Language    string           `json:"language"`
	Metadata    interface{}      `json:"metadata"`
	Recipient   string           `json:"recipient"`
	TemplateKey string           `json:"templateKey"`
	Type        NotificationType `json:"type"`
	Variables   interface{}      `json:"variables"`
	AppId       xid.ID           `json:"appId"`
}

type Service

type Service struct {
}

type Session

type Session struct {
	UserAgent *string `json:"userAgent,omitempty"`
	CreatedAt string  `json:"createdAt"`
	Id        string  `json:"id"`
	UserId    string  `json:"userId"`
	Token     string  `json:"token"`
	ExpiresAt string  `json:"expiresAt"`
	IpAddress *string `json:"ipAddress,omitempty"`
}

Session represents User session

func GetSessionFromContext

func GetSessionFromContext(ctx context.Context) (*Session, bool)

GetSessionFromContext retrieves session from Forge context

func GetUserFromContext

func GetUserFromContext(ctx context.Context) (*Session, bool)

GetUserFromContext retrieves user ID from Forge context

type SessionAutoSendConfig

type SessionAutoSendConfig struct {
	All_revoked      bool `json:"all_revoked"`
	Device_removed   bool `json:"device_removed"`
	New_device       bool `json:"new_device"`
	New_location     bool `json:"new_location"`
	Suspicious_login bool `json:"suspicious_login"`
}

type SessionAutoSendDTO

type SessionAutoSendDTO struct {
	AllRevoked      bool `json:"allRevoked"`
	DeviceRemoved   bool `json:"deviceRemoved"`
	NewDevice       bool `json:"newDevice"`
	NewLocation     bool `json:"newLocation"`
	SuspiciousLogin bool `json:"suspiciousLogin"`
}

type SessionDTO

type SessionDTO struct {
	BrowserVersion string    `json:"browserVersion"`
	DeviceInfo     string    `json:"deviceInfo"`
	IpAddress      string    `json:"ipAddress"`
	Os             string    `json:"os"`
	OsVersion      string    `json:"osVersion"`
	ExpiresIn      string    `json:"expiresIn"`
	IsActive       bool      `json:"isActive"`
	IsExpiring     bool      `json:"isExpiring"`
	Status         string    `json:"status"`
	UserAgent      string    `json:"userAgent"`
	CreatedAt      time.Time `json:"createdAt"`
	DeviceType     string    `json:"deviceType"`
	ExpiresAt      time.Time `json:"expiresAt"`
	UserEmail      string    `json:"userEmail"`
	UserId         string    `json:"userId"`
	Browser        string    `json:"browser"`
	Id             string    `json:"id"`
	LastUsed       string    `json:"lastUsed"`
}

type SessionDetailDTO

type SessionDetailDTO struct {
	ExpiresAtFormatted     string    `json:"expiresAtFormatted"`
	Id                     string    `json:"id"`
	LastRefreshedFormatted string    `json:"lastRefreshedFormatted"`
	OrganizationId         string    `json:"organizationId"`
	Os                     string    `json:"os"`
	CreatedAtFormatted     string    `json:"createdAtFormatted"`
	DeviceType             string    `json:"deviceType"`
	IsActive               bool      `json:"isActive"`
	UserAgent              string    `json:"userAgent"`
	UserEmail              string    `json:"userEmail"`
	Browser                string    `json:"browser"`
	CreatedAt              time.Time `json:"createdAt"`
	UpdatedAt              time.Time `json:"updatedAt"`
	UpdatedAtFormatted     string    `json:"updatedAtFormatted"`
	UserId                 string    `json:"userId"`
	EnvironmentId          string    `json:"environmentId"`
	ExpiresAt              time.Time `json:"expiresAt"`
	IpAddress              string    `json:"ipAddress"`
	IsExpiring             bool      `json:"isExpiring"`
	LastRefreshedAt        Time      `json:"lastRefreshedAt"`
	OsVersion              string    `json:"osVersion"`
	Status                 string    `json:"status"`
	AppId                  string    `json:"appId"`
	BrowserVersion         string    `json:"browserVersion"`
	DeviceInfo             string    `json:"deviceInfo"`
}

type SessionStats

type SessionStats struct {
}

type SessionStatsDTO

type SessionStatsDTO struct {
	TabletCount   int   `json:"tabletCount"`
	TotalSessions int64 `json:"totalSessions"`
	UniqueUsers   int   `json:"uniqueUsers"`
	ActiveCount   int   `json:"activeCount"`
	DesktopCount  int   `json:"desktopCount"`
	ExpiredCount  int   `json:"expiredCount"`
	ExpiringCount int   `json:"expiringCount"`
	MobileCount   int   `json:"mobileCount"`
}

type SessionStatsResponse

type SessionStatsResponse struct {
	LocationCount  int     `json:"locationCount"`
	NewestSession  *string `json:"newestSession"`
	OldestSession  *string `json:"oldestSession"`
	TotalSessions  int     `json:"totalSessions"`
	ActiveSessions int     `json:"activeSessions"`
	DeviceCount    int     `json:"deviceCount"`
}

type SessionTokenResponse

type SessionTokenResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
}

type SetActiveRequest

type SetActiveRequest struct {
	Id string `json:"id"`
}

type SetActiveResponse

type SetActiveResponse struct {
	Session Session `json:"session"`
	Token   string  `json:"token"`
}

type SetUserRoleRequest

type SetUserRoleRequest struct {
	User_organization_id ID     `json:"user_organization_id"`
	App_id               xid.ID `json:"app_id"`
	Role                 string `json:"role"`
	User_id              xid.ID `json:"user_id"`
}

type SetUserRoleRequestDTO

type SetUserRoleRequestDTO struct {
	Role string `json:"role"`
}

type SettingsDTO

type SettingsDTO struct {
	EnableDeviceTracking bool `json:"enableDeviceTracking"`
	MaxSessionsPerUser   int  `json:"maxSessionsPerUser"`
	SessionExpiryHours   int  `json:"sessionExpiryHours"`
	AllowCrossPlatform   bool `json:"allowCrossPlatform"`
}

type SetupSecurityQuestionRequest

type SetupSecurityQuestionRequest struct {
	Answer     string `json:"answer"`
	CustomText string `json:"customText"`
	QuestionId int    `json:"questionId"`
}

type SetupSecurityQuestionsRequest

type SetupSecurityQuestionsRequest struct {
	Questions []SetupSecurityQuestionRequest `json:"questions"`
}

type SetupSecurityQuestionsResponse

type SetupSecurityQuestionsResponse struct {
	Count   int       `json:"count"`
	Message string    `json:"message"`
	SetupAt time.Time `json:"setupAt"`
}

type SignInRequest

type SignInRequest struct {
}

type SignInResponse

type SignInResponse struct {
	Token   string      `json:"token"`
	User    interface{} `json:"user"`
	Session interface{} `json:"session"`
}

type SignOutResponse

type SignOutResponse struct {
	Success bool `json:"success"`
}

type SignUpRequest

type SignUpRequest struct {
	Password string `json:"password"`
	Username string `json:"username"`
}

type SignUpResponse

type SignUpResponse struct {
	Message string `json:"message"`
	Status  string `json:"status"`
}

type SocialAccount

type SocialAccount struct{}

Placeholder types for undefined/missing types

type StartImpersonationRequest

type StartImpersonationRequest struct {
	Reason           string `json:"reason"`
	Target_user_id   string `json:"target_user_id"`
	Ticket_number    string `json:"ticket_number"`
	Duration_minutes int    `json:"duration_minutes"`
}

type StartImpersonationResponse

type StartImpersonationResponse struct {
	Session_id      string `json:"session_id"`
	Started_at      string `json:"started_at"`
	Target_user_id  string `json:"target_user_id"`
	Impersonator_id string `json:"impersonator_id"`
}

type StartRecoveryRequest

type StartRecoveryRequest struct {
	UserId          string         `json:"userId"`
	DeviceId        string         `json:"deviceId"`
	Email           string         `json:"email"`
	PreferredMethod RecoveryMethod `json:"preferredMethod"`
}

type StartRecoveryResponse

type StartRecoveryResponse struct {
	SessionId        xid.ID           `json:"sessionId"`
	Status           RecoveryStatus   `json:"status"`
	AvailableMethods []RecoveryMethod `json:"availableMethods"`
	CompletedSteps   int              `json:"completedSteps"`
	ExpiresAt        time.Time        `json:"expiresAt"`
	RequiredSteps    int              `json:"requiredSteps"`
	RequiresReview   bool             `json:"requiresReview"`
	RiskScore        float64          `json:"riskScore"`
}

type StartVideoSessionRequest

type StartVideoSessionRequest struct {
	VideoSessionId xid.ID `json:"videoSessionId"`
}

type StartVideoSessionResponse

type StartVideoSessionResponse struct {
	ExpiresAt      time.Time `json:"expiresAt"`
	Message        string    `json:"message"`
	SessionUrl     string    `json:"sessionUrl"`
	StartedAt      time.Time `json:"startedAt"`
	VideoSessionId xid.ID    `json:"videoSessionId"`
}

type StateStorageConfig

type StateStorageConfig struct {
	RedisAddr     string        `json:"redisAddr"`
	RedisDb       int           `json:"redisDb"`
	RedisPassword string        `json:"redisPassword"`
	StateTtl      time.Duration `json:"stateTtl"`
	UseRedis      bool          `json:"useRedis"`
}

type StateStore

type StateStore struct {
}

type StatsResponse

type StatsResponse struct {
	Banned_users    int    `json:"banned_users"`
	Timestamp       string `json:"timestamp"`
	Total_sessions  int    `json:"total_sessions"`
	Total_users     int    `json:"total_users"`
	Active_sessions int    `json:"active_sessions"`
	Active_users    int    `json:"active_users"`
}

type Status

type Status struct {
}

type StatusResponse

type StatusResponse struct {
	Status string `json:"status"`
}

StatusResponse represents Status response

type StepUpAttempt

type StepUpAttempt struct {
	Created_at     time.Time          `json:"created_at"`
	Id             string             `json:"id"`
	Ip             string             `json:"ip"`
	Method         VerificationMethod `json:"method"`
	Org_id         string             `json:"org_id"`
	Requirement_id string             `json:"requirement_id"`
	User_agent     string             `json:"user_agent"`
	User_id        string             `json:"user_id"`
	Failure_reason string             `json:"failure_reason"`
	Success        bool               `json:"success"`
}

type StepUpAuditLog

type StepUpAuditLog struct {
	User_id    string      `json:"user_id"`
	Event_data interface{} `json:"event_data"`
	Event_type string      `json:"event_type"`
	Ip         string      `json:"ip"`
	Severity   string      `json:"severity"`
	Created_at time.Time   `json:"created_at"`
	Id         string      `json:"id"`
	Org_id     string      `json:"org_id"`
	User_agent string      `json:"user_agent"`
}

type StepUpAuditLogsResponse

type StepUpAuditLogsResponse struct {
	Audit_logs []*interface{} `json:"audit_logs"`
}

type StepUpDevicesResponse

type StepUpDevicesResponse struct {
	Devices interface{} `json:"devices"`
	Count   int         `json:"count"`
}

type StepUpErrorResponse

type StepUpErrorResponse struct {
	Error string `json:"error"`
}

type StepUpEvaluationResponse

type StepUpEvaluationResponse struct {
	Reason   string `json:"reason"`
	Required bool   `json:"required"`
}

type StepUpPoliciesResponse

type StepUpPoliciesResponse struct {
	Policies []*interface{} `json:"policies"`
}

type StepUpPolicy

type StepUpPolicy struct {
	Id          string      `json:"id"`
	Metadata    interface{} `json:"metadata"`
	Name        string      `json:"name"`
	Org_id      string      `json:"org_id"`
	User_id     string      `json:"user_id"`
	Description string      `json:"description"`
	Priority    int         `json:"priority"`
	Rules       interface{} `json:"rules"`
	Updated_at  time.Time   `json:"updated_at"`
	Created_at  time.Time   `json:"created_at"`
	Enabled     bool        `json:"enabled"`
}

type StepUpPolicyResponse

type StepUpPolicyResponse struct {
	Id string `json:"id"`
}

type StepUpRememberedDevice

type StepUpRememberedDevice struct {
	Device_id      string        `json:"device_id"`
	Device_name    string        `json:"device_name"`
	Expires_at     time.Time     `json:"expires_at"`
	Ip             string        `json:"ip"`
	Last_used_at   time.Time     `json:"last_used_at"`
	Org_id         string        `json:"org_id"`
	Remembered_at  time.Time     `json:"remembered_at"`
	User_id        string        `json:"user_id"`
	Created_at     time.Time     `json:"created_at"`
	Id             string        `json:"id"`
	Security_level SecurityLevel `json:"security_level"`
	User_agent     string        `json:"user_agent"`
}

type StepUpRequirement

type StepUpRequirement struct {
	Metadata        interface{}   `json:"metadata"`
	Method          string        `json:"method"`
	Reason          string        `json:"reason"`
	Resource_action string        `json:"resource_action"`
	Route           string        `json:"route"`
	Created_at      time.Time     `json:"created_at"`
	Expires_at      time.Time     `json:"expires_at"`
	Org_id          string        `json:"org_id"`
	Risk_score      float64       `json:"risk_score"`
	Rule_name       string        `json:"rule_name"`
	Session_id      string        `json:"session_id"`
	Status          string        `json:"status"`
	User_id         string        `json:"user_id"`
	Currency        string        `json:"currency"`
	Current_level   SecurityLevel `json:"current_level"`
	Resource_type   string        `json:"resource_type"`
	Amount          float64       `json:"amount"`
	Challenge_token string        `json:"challenge_token"`
	Required_level  SecurityLevel `json:"required_level"`
	User_agent      string        `json:"user_agent"`
	Fulfilled_at    Time          `json:"fulfilled_at"`
	Id              string        `json:"id"`
	Ip              string        `json:"ip"`
}

type StepUpRequirementResponse

type StepUpRequirementResponse struct {
	Id string `json:"id"`
}

type StepUpRequirementsResponse

type StepUpRequirementsResponse struct {
	Requirements []*interface{} `json:"requirements"`
}

type StepUpStatusResponse

type StepUpStatusResponse struct {
	Status string `json:"status"`
}

type StepUpVerification

type StepUpVerification struct {
	Verified_at    time.Time          `json:"verified_at"`
	Device_id      string             `json:"device_id"`
	Reason         string             `json:"reason"`
	Session_id     string             `json:"session_id"`
	Metadata       interface{}        `json:"metadata"`
	Org_id         string             `json:"org_id"`
	Expires_at     time.Time          `json:"expires_at"`
	Method         VerificationMethod `json:"method"`
	Rule_name      string             `json:"rule_name"`
	User_id        string             `json:"user_id"`
	Created_at     time.Time          `json:"created_at"`
	Id             string             `json:"id"`
	Ip             string             `json:"ip"`
	Security_level SecurityLevel      `json:"security_level"`
	User_agent     string             `json:"user_agent"`
}

type StepUpVerificationResponse

type StepUpVerificationResponse struct {
	Expires_at string `json:"expires_at"`
	Verified   bool   `json:"verified"`
}

type StepUpVerificationsResponse

type StepUpVerificationsResponse struct {
	Verifications []*interface{} `json:"verifications"`
}

type StripeIdentityConfig

type StripeIdentityConfig struct {
	WebhookSecret         string   `json:"webhookSecret"`
	AllowedTypes          []string `json:"allowedTypes"`
	ApiKey                string   `json:"apiKey"`
	Enabled               bool     `json:"enabled"`
	RequireLiveCapture    bool     `json:"requireLiveCapture"`
	RequireMatchingSelfie bool     `json:"requireMatchingSelfie"`
	ReturnUrl             string   `json:"returnUrl"`
	UseMock               bool     `json:"useMock"`
}

type StripeIdentityProvider

type StripeIdentityProvider struct {
}

type SuccessResponse

type SuccessResponse struct {
	Success bool `json:"success"`
}

SuccessResponse represents Success boolean response

type TOTPConfig

type TOTPConfig struct {
	Algorithm   string `json:"algorithm"`
	Digits      int    `json:"digits"`
	Enabled     bool   `json:"enabled"`
	Issuer      string `json:"issuer"`
	Period      int    `json:"period"`
	Window_size int    `json:"window_size"`
}

type TOTPFactorAdapter

type TOTPFactorAdapter struct {
}

type TOTPSecret

type TOTPSecret struct {
}

type TabDataDTO

type TabDataDTO struct {
	Order        int    `json:"order"`
	Path         string `json:"path"`
	RequireAdmin bool   `json:"requireAdmin"`
	Icon         string `json:"icon"`
	Id           string `json:"id"`
	Label        string `json:"label"`
}

type Team

type Team struct{}

Placeholder types for undefined/missing types

type TeamDTO

type TeamDTO struct {
	Metadata    interface{} `json:"metadata"`
	Name        string      `json:"name"`
	CreatedAt   time.Time   `json:"createdAt"`
	Description string      `json:"description"`
	Id          string      `json:"id"`
	MemberCount int64       `json:"memberCount"`
}

type TeamHandler

type TeamHandler struct {
}

type TeamsResponse

type TeamsResponse struct {
	Total int  `json:"total"`
	Teams Team `json:"teams"`
}

type TemplateAnalyticsDTO

type TemplateAnalyticsDTO struct {
	TotalDelivered int64   `json:"totalDelivered"`
	TotalOpened    int64   `json:"totalOpened"`
	TotalSent      int64   `json:"totalSent"`
	DeliveryRate   float64 `json:"deliveryRate"`
	TemplateId     string  `json:"templateId"`
	TemplateName   string  `json:"templateName"`
	ClickRate      float64 `json:"clickRate"`
	OpenRate       float64 `json:"openRate"`
	TotalClicked   int64   `json:"totalClicked"`
}

type TemplateDTO

type TemplateDTO struct {
	Active      bool        `json:"active"`
	AppId       string      `json:"appId"`
	CreatedAt   string      `json:"createdAt"`
	Metadata    interface{} `json:"metadata"`
	Subject     string      `json:"subject"`
	UpdatedAt   string      `json:"updatedAt"`
	Language    string      `json:"language"`
	Type        string      `json:"type"`
	Variables   []string    `json:"variables"`
	Body        string      `json:"body"`
	IsDefault   bool        `json:"isDefault"`
	TemplateKey string      `json:"templateKey"`
	Id          string      `json:"id"`
	IsModified  bool        `json:"isModified"`
	Name        string      `json:"name"`
}

type TemplateDefault

type TemplateDefault struct {
}

type TemplateEngine

type TemplateEngine struct {
}

type TemplatePerformanceDTO

type TemplatePerformanceDTO struct {
	OpenRate     float64 `json:"openRate"`
	TemplateId   string  `json:"templateId"`
	TemplateName string  `json:"templateName"`
	TotalSent    int64   `json:"totalSent"`
	ClickRate    float64 `json:"clickRate"`
}

type TemplateResponse

type TemplateResponse struct {
	Name        string            `json:"name"`
	Parameters  TemplateParameter `json:"parameters"`
	Category    string            `json:"category"`
	Description string            `json:"description"`
	Examples    []string          `json:"examples"`
	Expression  string            `json:"expression"`
	Id          string            `json:"id"`
}

type TemplateService

type TemplateService struct {
}

type TemplatesListResponse

type TemplatesListResponse struct {
	TotalCount int                 `json:"totalCount"`
	Categories []string            `json:"categories"`
	Templates  []*TemplateResponse `json:"templates"`
}

type TemplatesResponse

type TemplatesResponse struct {
	Count     int         `json:"count"`
	Templates interface{} `json:"templates"`
}

type TestCase

type TestCase struct {
	Expected  bool        `json:"expected"`
	Name      string      `json:"name"`
	Principal interface{} `json:"principal"`
	Request   interface{} `json:"request"`
	Resource  interface{} `json:"resource"`
	Action    string      `json:"action"`
}

type TestCaseResult

type TestCaseResult struct {
	Passed           bool    `json:"passed"`
	Actual           bool    `json:"actual"`
	Error            string  `json:"error"`
	EvaluationTimeMs float64 `json:"evaluationTimeMs"`
	Expected         bool    `json:"expected"`
	Name             string  `json:"name"`
}

type TestPolicyRequest

type TestPolicyRequest struct {
	Actions      []string   `json:"actions"`
	Expression   string     `json:"expression"`
	ResourceType string     `json:"resourceType"`
	TestCases    []TestCase `json:"testCases"`
}

type TestPolicyResponse

type TestPolicyResponse struct {
	Results     []TestCaseResult `json:"results"`
	Total       int              `json:"total"`
	Error       string           `json:"error"`
	FailedCount int              `json:"failedCount"`
	Passed      bool             `json:"passed"`
	PassedCount int              `json:"passedCount"`
}

type TestProviderInput

type TestProviderInput struct {
	ProviderType string `json:"providerType"`
	Recipient    string `json:"recipient"`
}

type TestProviderResult

type TestProviderResult struct {
	Message string `json:"message"`
	Success bool   `json:"success"`
}

type TestSendTemplateInput

type TestSendTemplateInput struct {
	Recipient  string      `json:"recipient"`
	TemplateId string      `json:"templateId"`
	Variables  interface{} `json:"variables"`
}

type TestSendTemplateResult

type TestSendTemplateResult struct {
	Message string `json:"message"`
	Success bool   `json:"success"`
}

type Time

type Time = time.Time

Placeholder types for undefined/missing types

type TimeBasedRule

type TimeBasedRule struct {
	Operation      string        `json:"operation"`
	Org_id         string        `json:"org_id"`
	Security_level SecurityLevel `json:"security_level"`
	Description    string        `json:"description"`
	Max_age        time.Duration `json:"max_age"`
}

type TokenIntrospectionRequest

type TokenIntrospectionRequest struct {
	Client_id       string `json:"client_id"`
	Client_secret   string `json:"client_secret"`
	Token           string `json:"token"`
	Token_type_hint string `json:"token_type_hint"`
}

type TokenIntrospectionResponse

type TokenIntrospectionResponse struct {
	Active     bool     `json:"active"`
	Aud        []string `json:"aud"`
	Client_id  string   `json:"client_id"`
	Exp        int64    `json:"exp"`
	Iat        int64    `json:"iat"`
	Iss        string   `json:"iss"`
	Nbf        int64    `json:"nbf"`
	Sub        string   `json:"sub"`
	Jti        string   `json:"jti"`
	Scope      string   `json:"scope"`
	Token_type string   `json:"token_type"`
	Username   string   `json:"username"`
}

type TokenRequest

type TokenRequest struct {
	Audience      string `json:"audience"`
	Client_id     string `json:"client_id"`
	Client_secret string `json:"client_secret"`
	Code          string `json:"code"`
	Code_verifier string `json:"code_verifier"`
	Device_code   string `json:"device_code"`
	Grant_type    string `json:"grant_type"`
	Redirect_uri  string `json:"redirect_uri"`
	Refresh_token string `json:"refresh_token"`
	Scope         string `json:"scope"`
}

type TokenResponse

type TokenResponse struct {
	Access_token  string `json:"access_token"`
	Expires_in    int    `json:"expires_in"`
	Id_token      string `json:"id_token"`
	Refresh_token string `json:"refresh_token"`
	Scope         string `json:"scope"`
	Token_type    string `json:"token_type"`
}

type TokenRevocationRequest

type TokenRevocationRequest struct {
	Client_id       string `json:"client_id"`
	Client_secret   string `json:"client_secret"`
	Token           string `json:"token"`
	Token_type_hint string `json:"token_type_hint"`
}

type TrackNotificationEvent_req

type TrackNotificationEvent_req struct {
	Event          string       `json:"event"`
	EventData      *interface{} `json:"eventData,omitempty"`
	NotificationId string       `json:"notificationId"`
	OrganizationId *string      `json:"organizationId,omitempty"`
	TemplateId     string       `json:"templateId"`
}

type TrustDeviceRequest

type TrustDeviceRequest struct {
	DeviceId string      `json:"deviceId"`
	Metadata interface{} `json:"metadata"`
	Name     string      `json:"name"`
}

type TrustedContact

type TrustedContact struct {
}

type TrustedContactInfo

type TrustedContactInfo struct {
	Id           xid.ID `json:"id"`
	Name         string `json:"name"`
	Phone        string `json:"phone"`
	Relationship string `json:"relationship"`
	Verified     bool   `json:"verified"`
	VerifiedAt   Time   `json:"verifiedAt"`
	Active       bool   `json:"active"`
	Email        string `json:"email"`
}

type TrustedContactsConfig

type TrustedContactsConfig struct {
	AllowPhoneContacts     bool          `json:"allowPhoneContacts"`
	MaximumContacts        int           `json:"maximumContacts"`
	MinimumContacts        int           `json:"minimumContacts"`
	RequireVerification    bool          `json:"requireVerification"`
	RequiredToRecover      int           `json:"requiredToRecover"`
	AllowEmailContacts     bool          `json:"allowEmailContacts"`
	CooldownPeriod         time.Duration `json:"cooldownPeriod"`
	Enabled                bool          `json:"enabled"`
	MaxNotificationsPerDay int           `json:"maxNotificationsPerDay"`
	VerificationExpiry     time.Duration `json:"verificationExpiry"`
}

type TrustedDevice

type TrustedDevice struct {
	IpAddress  string      `json:"ipAddress"`
	LastUsedAt Time        `json:"lastUsedAt"`
	Metadata   interface{} `json:"metadata"`
	Name       string      `json:"name"`
	UserId     xid.ID      `json:"userId"`
	DeviceId   string      `json:"deviceId"`
	ExpiresAt  time.Time   `json:"expiresAt"`
	UserAgent  string      `json:"userAgent"`
	CreatedAt  time.Time   `json:"createdAt"`
	Id         xid.ID      `json:"id"`
}

type TrustedDevicesConfig

type TrustedDevicesConfig struct {
	Default_expiry_days  int  `json:"default_expiry_days"`
	Enabled              bool `json:"enabled"`
	Max_devices_per_user int  `json:"max_devices_per_user"`
	Max_expiry_days      int  `json:"max_expiry_days"`
}

type TwoFABackupCodesResponse

type TwoFABackupCodesResponse struct {
	Codes []string `json:"codes"`
}

type TwoFAEnableResponse

type TwoFAEnableResponse struct {
	Status   string `json:"status"`
	Totp_uri string `json:"totp_uri"`
}

type TwoFAErrorResponse

type TwoFAErrorResponse struct {
	Error string `json:"error"`
}

type TwoFARequiredResponse

type TwoFARequiredResponse struct {
	Device_id     string `json:"device_id"`
	Require_twofa bool   `json:"require_twofa"`
	User          User   `json:"user"`
}

type TwoFASendOTPResponse

type TwoFASendOTPResponse struct {
	Code   string `json:"code"`
	Status string `json:"status"`
}

type TwoFAStatusDetailResponse

type TwoFAStatusDetailResponse struct {
	Enabled bool   `json:"enabled"`
	Method  string `json:"method"`
	Trusted bool   `json:"trusted"`
}

type TwoFAStatusResponse

type TwoFAStatusResponse struct {
	Enabled bool   `json:"enabled"`
	Method  string `json:"method"`
	Trusted bool   `json:"trusted"`
}

type UnassignRoleRequest

type UnassignRoleRequest struct {
}

type UnbanUserRequest

type UnbanUserRequest struct {
	App_id               xid.ID `json:"app_id"`
	Reason               string `json:"reason"`
	User_id              xid.ID `json:"user_id"`
	User_organization_id ID     `json:"user_organization_id"`
}

type UnbanUserRequestDTO

type UnbanUserRequestDTO struct {
	Reason string `json:"reason"`
}

type UnblockUserRequest

type UnblockUserRequest struct {
}

type UnpublishContentTypeRequest

type UnpublishContentTypeRequest struct {
}

type UnpublishEntryRequest

type UnpublishEntryRequest struct {
}

type UpdateAPIKeyRequest

type UpdateAPIKeyRequest struct {
	Permissions interface{} `json:"permissions"`
	Rate_limit  *int        `json:"rate_limit"`
	Scopes      []string    `json:"scopes"`
	Allowed_ips []string    `json:"allowed_ips"`
	Description *string     `json:"description"`
	Metadata    interface{} `json:"metadata"`
	Name        *string     `json:"name"`
}

type UpdateAppRequest

type UpdateAppRequest struct {
}

type UpdateClientRequest

type UpdateClientRequest struct {
	Require_pkce               *bool    `json:"require_pkce"`
	Response_types             []string `json:"response_types"`
	Token_endpoint_auth_method string   `json:"token_endpoint_auth_method"`
	Tos_uri                    string   `json:"tos_uri"`
	Trusted_client             *bool    `json:"trusted_client"`
	Contacts                   []string `json:"contacts"`
	Grant_types                []string `json:"grant_types"`
	Logo_uri                   string   `json:"logo_uri"`
	Name                       string   `json:"name"`
	Policy_uri                 string   `json:"policy_uri"`
	Post_logout_redirect_uris  []string `json:"post_logout_redirect_uris"`
	Redirect_uris              []string `json:"redirect_uris"`
	Require_consent            *bool    `json:"require_consent"`
	Allowed_scopes             []string `json:"allowed_scopes"`
}

type UpdateClientResponse

type UpdateClientResponse struct {
	LogoURI                 string   `json:"logoURI"`
	Name                    string   `json:"name"`
	PolicyURI               string   `json:"policyURI"`
	PostLogoutRedirectURIs  []string `json:"postLogoutRedirectURIs"`
	ResponseTypes           []string `json:"responseTypes"`
	RedirectURIs            []string `json:"redirectURIs"`
	UpdatedAt               string   `json:"updatedAt"`
	ClientID                string   `json:"clientID"`
	Contacts                []string `json:"contacts"`
	IsOrgLevel              bool     `json:"isOrgLevel"`
	TosURI                  string   `json:"tosURI"`
	TrustedClient           bool     `json:"trustedClient"`
	AllowedScopes           []string `json:"allowedScopes"`
	OrganizationID          string   `json:"organizationID"`
	RequireConsent          bool     `json:"requireConsent"`
	RequirePKCE             bool     `json:"requirePKCE"`
	TokenEndpointAuthMethod string   `json:"tokenEndpointAuthMethod"`
	ApplicationType         string   `json:"applicationType"`
	CreatedAt               string   `json:"createdAt"`
	GrantTypes              []string `json:"grantTypes"`
}

type UpdateConsentRequest

type UpdateConsentRequest struct {
	Granted  *bool       `json:"granted"`
	Metadata interface{} `json:"metadata"`
	Reason   string      `json:"reason"`
}

type UpdateConsentResponse

type UpdateConsentResponse struct {
	Id string `json:"id"`
}

type UpdateContentTypeRequest

type UpdateContentTypeRequest struct {
}

type UpdateEntryRequest

type UpdateEntryRequest struct {
}

type UpdateFactorRequest

type UpdateFactorRequest struct {
	Priority *FactorPriority `json:"priority"`
	Status   *FactorStatus   `json:"status"`
	Metadata interface{}     `json:"metadata"`
	Name     *string         `json:"name"`
}

type UpdateFieldRequest

type UpdateFieldRequest struct {
}

type UpdateMemberHandlerRequest

type UpdateMemberHandlerRequest struct {
}

type UpdateMemberRequest

type UpdateMemberRequest struct {
	Role string `json:"role"`
}

type UpdateMemberRoleInput

type UpdateMemberRoleInput struct {
	AppId    string `json:"appId"`
	MemberId string `json:"memberId"`
	OrgId    string `json:"orgId"`
	Role     string `json:"role"`
}

type UpdateMemberRoleRequest

type UpdateMemberRoleRequest struct {
	Role string `json:"role"`
}

type UpdateMemberRoleResult

type UpdateMemberRoleResult struct {
	Member MemberDTO `json:"member"`
}

type UpdateNamespaceRequest

type UpdateNamespaceRequest struct {
	Name            string `json:"name"`
	Description     string `json:"description"`
	InheritPlatform *bool  `json:"inheritPlatform"`
}

type UpdateOrganizationHandlerRequest

type UpdateOrganizationHandlerRequest struct {
}

type UpdateOrganizationInput

type UpdateOrganizationInput struct {
	AppId    string      `json:"appId"`
	Metadata interface{} `json:"metadata"`
	Name     string      `json:"name"`
	OrgId    string      `json:"orgId"`
}

type UpdateOrganizationResult

type UpdateOrganizationResult struct {
	Organization OrganizationDetailDTO `json:"organization"`
}

type UpdatePasskeyRequest

type UpdatePasskeyRequest struct {
	Name string `json:"name"`
}

type UpdatePasskeyResponse

type UpdatePasskeyResponse struct {
	UpdatedAt time.Time `json:"updatedAt"`
	Name      string    `json:"name"`
	PasskeyId string    `json:"passkeyId"`
}

type UpdatePolicyRequest

type UpdatePolicyRequest struct {
	Name         string   `json:"name"`
	Priority     int      `json:"priority"`
	ResourceType string   `json:"resourceType"`
	Actions      []string `json:"actions"`
	Description  string   `json:"description"`
	Enabled      *bool    `json:"enabled"`
	Expression   string   `json:"expression"`
}

type UpdatePolicyResponse

type UpdatePolicyResponse struct {
	Id string `json:"id"`
}

type UpdatePolicy_req

type UpdatePolicy_req struct {
	Content *string `json:"content"`
	Status  *string `json:"status"`
	Title   *string `json:"title"`
	Version *string `json:"version"`
}

type UpdatePrivacySettingsRequest

type UpdatePrivacySettingsRequest struct {
	DataRetentionDays               *int     `json:"dataRetentionDays"`
	AutoDeleteAfterDays             *int     `json:"autoDeleteAfterDays"`
	CookieConsentEnabled            *bool    `json:"cookieConsentEnabled"`
	CookieConsentStyle              string   `json:"cookieConsentStyle"`
	RequireAdminApprovalForDeletion *bool    `json:"requireAdminApprovalForDeletion"`
	RequireExplicitConsent          *bool    `json:"requireExplicitConsent"`
	ConsentRequired                 *bool    `json:"consentRequired"`
	DpoEmail                        string   `json:"dpoEmail"`
	AllowDataPortability            *bool    `json:"allowDataPortability"`
	AnonymousConsentEnabled         *bool    `json:"anonymousConsentEnabled"`
	ContactEmail                    string   `json:"contactEmail"`
	ContactPhone                    string   `json:"contactPhone"`
	DataExportExpiryHours           *int     `json:"dataExportExpiryHours"`
	DeletionGracePeriodDays         *int     `json:"deletionGracePeriodDays"`
	ExportFormat                    []string `json:"exportFormat"`
	GdprMode                        *bool    `json:"gdprMode"`
	CcpaMode                        *bool    `json:"ccpaMode"`
}

type UpdatePrivacySettingsResponse

type UpdatePrivacySettingsResponse struct {
	Settings interface{} `json:"settings"`
}

type UpdateProfileRequest

type UpdateProfileRequest struct {
	Name          *string `json:"name"`
	RetentionDays *int    `json:"retentionDays"`
	Status        *string `json:"status"`
	MfaRequired   *bool   `json:"mfaRequired"`
}

type UpdateProfileResponse

type UpdateProfileResponse struct {
	Id string `json:"id"`
}

type UpdateProviderRequest

type UpdateProviderRequest struct {
}

type UpdateProvider_req

type UpdateProvider_req struct {
	Config    interface{} `json:"config"`
	IsActive  bool        `json:"isActive"`
	IsDefault bool        `json:"isDefault"`
}

type UpdateProvidersInput

type UpdateProvidersInput struct {
	EmailProvider *EmailProviderDTO `json:"emailProvider"`
	SmsProvider   *SMSProviderDTO   `json:"smsProvider"`
}

type UpdateProvidersResult

type UpdateProvidersResult struct {
	Message   string             `json:"message"`
	Providers ProvidersConfigDTO `json:"providers"`
	Success   bool               `json:"success"`
}

type UpdateRecoveryConfigRequest

type UpdateRecoveryConfigRequest struct {
	EnabledMethods       []RecoveryMethod `json:"enabledMethods"`
	MinimumStepsRequired int              `json:"minimumStepsRequired"`
	RequireAdminReview   bool             `json:"requireAdminReview"`
	RequireMultipleSteps bool             `json:"requireMultipleSteps"`
	RiskScoreThreshold   float64          `json:"riskScoreThreshold"`
}

type UpdateRecoveryConfigResponse

type UpdateRecoveryConfigResponse struct {
	Config interface{} `json:"config"`
}

type UpdateRequest

type UpdateRequest struct {
	Id      string   `json:"id"`
	Url     *string  `json:"url,omitempty"`
	Events  []string `json:"events,omitempty"`
	Enabled *bool    `json:"enabled,omitempty"`
}

type UpdateResponse

type UpdateResponse struct {
	Webhook Webhook `json:"webhook"`
}

type UpdateRoleTemplateInput

type UpdateRoleTemplateInput struct {
	AppId       string   `json:"appId"`
	Description string   `json:"description"`
	Name        string   `json:"name"`
	Permissions []string `json:"permissions"`
	TemplateId  string   `json:"templateId"`
}

type UpdateRoleTemplateResult

type UpdateRoleTemplateResult struct {
	Template RoleTemplateDTO `json:"template"`
}

type UpdateSecretInput

type UpdateSecretInput struct {
	Description  string      `json:"description"`
	SecretId     string      `json:"secretId"`
	Tags         []string    `json:"tags"`
	Value        interface{} `json:"value"`
	AppId        string      `json:"appId"`
	ChangeReason string      `json:"changeReason"`
}

type UpdateSecretOutput

type UpdateSecretOutput struct {
	Secret SecretItem `json:"secret"`
}

type UpdateSecretRequest

type UpdateSecretRequest struct {
	Tags        []string    `json:"tags"`
	Value       interface{} `json:"value"`
	Description string      `json:"description"`
	Metadata    interface{} `json:"metadata"`
}

type UpdateSettingsInput

type UpdateSettingsInput struct {
	Auth         *AuthAutoSendDTO         `json:"auth"`
	Organization *OrganizationAutoSendDTO `json:"organization"`
	Session      *SessionAutoSendDTO      `json:"session"`
	Account      *AccountAutoSendDTO      `json:"account"`
	AppName      string                   `json:"appName"`
}

type UpdateSettingsResult

type UpdateSettingsResult struct {
	Message  string                  `json:"message"`
	Settings NotificationSettingsDTO `json:"settings"`
	Success  bool                    `json:"success"`
}

type UpdateTeamHandlerRequest

type UpdateTeamHandlerRequest struct {
}

type UpdateTeamInput

type UpdateTeamInput struct {
	OrgId       string      `json:"orgId"`
	TeamId      string      `json:"teamId"`
	AppId       string      `json:"appId"`
	Description string      `json:"description"`
	Metadata    interface{} `json:"metadata"`
	Name        string      `json:"name"`
}

type UpdateTeamRequest

type UpdateTeamRequest struct {
	Description string `json:"description"`
	Name        string `json:"name"`
}

type UpdateTeamResult

type UpdateTeamResult struct {
	Team TeamDTO `json:"team"`
}

type UpdateTemplateInput

type UpdateTemplateInput struct {
	Metadata   interface{} `json:"metadata"`
	Name       *string     `json:"name"`
	Subject    *string     `json:"subject"`
	TemplateId string      `json:"templateId"`
	Variables  []string    `json:"variables"`
	Active     *bool       `json:"active"`
	Body       *string     `json:"body"`
}

type UpdateTemplateRequest

type UpdateTemplateRequest struct {
}

type UpdateTemplateResponse

type UpdateTemplateResponse struct {
	Template interface{} `json:"template"`
}

type UpdateTemplateResult

type UpdateTemplateResult struct {
	Message  string      `json:"message"`
	Success  bool        `json:"success"`
	Template TemplateDTO `json:"template"`
}

type UpdateUserRequest

type UpdateUserRequest struct {
	Name  *string `json:"name,omitempty"`
	Email *string `json:"email,omitempty"`
}

type UpdateUserResponse

type UpdateUserResponse struct {
	User User `json:"user"`
}

type UploadDocumentRequest

type UploadDocumentRequest struct {
	BackImage    string `json:"backImage"`
	DocumentType string `json:"documentType"`
	FrontImage   string `json:"frontImage"`
	Selfie       string `json:"selfie"`
	SessionId    xid.ID `json:"sessionId"`
}

type UploadDocumentResponse

type UploadDocumentResponse struct {
	DocumentId     xid.ID    `json:"documentId"`
	Message        string    `json:"message"`
	ProcessingTime string    `json:"processingTime"`
	Status         string    `json:"status"`
	UploadedAt     time.Time `json:"uploadedAt"`
}

type User

type User struct {
	Email          string  `json:"email"`
	Name           *string `json:"name,omitempty"`
	EmailVerified  bool    `json:"emailVerified"`
	CreatedAt      string  `json:"createdAt"`
	UpdatedAt      string  `json:"updatedAt"`
	OrganizationId *string `json:"organizationId,omitempty"`
	Id             string  `json:"id"`
}

User represents User account

type UserAdapter

type UserAdapter struct {
}

type UserInfoResponse

type UserInfoResponse struct {
	Picture               string `json:"picture"`
	Sub                   string `json:"sub"`
	Zoneinfo              string `json:"zoneinfo"`
	Gender                string `json:"gender"`
	Middle_name           string `json:"middle_name"`
	Phone_number_verified bool   `json:"phone_number_verified"`
	Family_name           string `json:"family_name"`
	Given_name            string `json:"given_name"`
	Nickname              string `json:"nickname"`
	Preferred_username    string `json:"preferred_username"`
	Profile               string `json:"profile"`
	Website               string `json:"website"`
	Email                 string `json:"email"`
	Locale                string `json:"locale"`
	Name                  string `json:"name"`
	Updated_at            int64  `json:"updated_at"`
	Birthdate             string `json:"birthdate"`
	Email_verified        bool   `json:"email_verified"`
	Phone_number          string `json:"phone_number"`
}

type UserServiceAdapter

type UserServiceAdapter struct {
}

type UserVerificationStatus

type UserVerificationStatus = string

Placeholder types for undefined/missing types

type UserVerificationStatusResponse

type UserVerificationStatusResponse struct {
	Status UserVerificationStatus `json:"status"`
}

type ValidateContentTypeRequest

type ValidateContentTypeRequest struct {
}

type ValidatePolicyRequest

type ValidatePolicyRequest struct {
	ResourceType string `json:"resourceType"`
	Expression   string `json:"expression"`
}

type ValidatePolicyResponse

type ValidatePolicyResponse struct {
	Valid      bool     `json:"valid"`
	Warnings   []string `json:"warnings"`
	Complexity int      `json:"complexity"`
	Error      string   `json:"error"`
	Errors     []string `json:"errors"`
	Message    string   `json:"message"`
}

type ValidateResetTokenResponse

type ValidateResetTokenResponse struct {
	Valid bool `json:"valid"`
}

type VerificationListResponse

type VerificationListResponse struct {
	Offset        int                  `json:"offset"`
	Total         int                  `json:"total"`
	Verifications IdentityVerification `json:"verifications"`
	Limit         int                  `json:"limit"`
}

type VerificationMethod

type VerificationMethod = string

Placeholder type aliases for undefined enum/custom types

type VerificationRepository

type VerificationRepository struct {
}

type VerificationRequest

type VerificationRequest struct {
	Data           interface{} `json:"data"`
	DeviceInfo     *DeviceInfo `json:"deviceInfo"`
	FactorId       xid.ID      `json:"factorId"`
	RememberDevice bool        `json:"rememberDevice"`
	ChallengeId    xid.ID      `json:"challengeId"`
	Code           string      `json:"code"`
}

type VerificationResponse

type VerificationResponse struct {
	ExpiresAt        Time   `json:"expiresAt"`
	FactorsRemaining int    `json:"factorsRemaining"`
	SessionComplete  bool   `json:"sessionComplete"`
	Success          bool   `json:"success"`
	Token            string `json:"token"`
}

type VerificationResult

type VerificationResult struct {
}

type VerificationSessionResponse

type VerificationSessionResponse struct {
	Session IdentityVerificationSession `json:"session"`
}

type VerificationsResponse

type VerificationsResponse struct {
	Count         int         `json:"count"`
	Verifications interface{} `json:"verifications"`
}

type VerifyAPIKeyRequest

type VerifyAPIKeyRequest struct {
	Key string `json:"key"`
}

type VerifyChallengeRequest

type VerifyChallengeRequest struct {
	ChallengeId    xid.ID      `json:"challengeId"`
	Code           string      `json:"code"`
	Data           interface{} `json:"data"`
	DeviceInfo     *DeviceInfo `json:"deviceInfo"`
	FactorId       xid.ID      `json:"factorId"`
	RememberDevice bool        `json:"rememberDevice"`
}

type VerifyChallengeResponse

type VerifyChallengeResponse struct {
	Success          bool   `json:"success"`
	Token            string `json:"token"`
	ExpiresAt        Time   `json:"expiresAt"`
	FactorsRemaining int    `json:"factorsRemaining"`
	SessionComplete  bool   `json:"sessionComplete"`
}

type VerifyCodeRequest

type VerifyCodeRequest struct {
	Code      string `json:"code"`
	SessionId xid.ID `json:"sessionId"`
}

type VerifyCodeResponse

type VerifyCodeResponse struct {
	AttemptsLeft int    `json:"attemptsLeft"`
	Message      string `json:"message"`
	Valid        bool   `json:"valid"`
}

type VerifyEnrolledFactorRequest

type VerifyEnrolledFactorRequest struct {
	Code string      `json:"code"`
	Data interface{} `json:"data"`
}

type VerifyImpersonationRequest

type VerifyImpersonationRequest struct {
}

type VerifyImpersonationResponse

type VerifyImpersonationResponse struct {
	Target_user_id   string `json:"target_user_id"`
	Impersonator_id  string `json:"impersonator_id"`
	Is_impersonating bool   `json:"is_impersonating"`
}

type VerifyRecoveryCodeRequest

type VerifyRecoveryCodeRequest struct {
	Code      string `json:"code"`
	SessionId xid.ID `json:"sessionId"`
}

type VerifyRecoveryCodeResponse

type VerifyRecoveryCodeResponse struct {
	Message        string `json:"message"`
	RemainingCodes int    `json:"remainingCodes"`
	Valid          bool   `json:"valid"`
}

type VerifyRequest

type VerifyRequest struct {
	Code     string `json:"code"`
	Email    string `json:"email"`
	Phone    string `json:"phone"`
	Remember bool   `json:"remember"`
}

type VerifyRequest2FA

type VerifyRequest2FA struct {
	User_id         string `json:"user_id"`
	Code            string `json:"code"`
	Device_id       string `json:"device_id"`
	Remember_device bool   `json:"remember_device"`
}

type VerifyResponse

type VerifyResponse struct {
	Success bool    `json:"success"`
	Token   string  `json:"token"`
	User    User    `json:"user"`
	Session Session `json:"session"`
}

type VerifySecurityAnswersRequest

type VerifySecurityAnswersRequest struct {
	Answers   interface{} `json:"answers"`
	SessionId xid.ID      `json:"sessionId"`
}

type VerifySecurityAnswersResponse

type VerifySecurityAnswersResponse struct {
	Valid           bool   `json:"valid"`
	AttemptsLeft    int    `json:"attemptsLeft"`
	CorrectAnswers  int    `json:"correctAnswers"`
	Message         string `json:"message"`
	RequiredAnswers int    `json:"requiredAnswers"`
}

type VerifyTokenRequest

type VerifyTokenRequest struct {
	Audience  []string `json:"audience"`
	Token     string   `json:"token"`
	TokenType string   `json:"tokenType"`
}

type VerifyTrustedContactRequest

type VerifyTrustedContactRequest struct {
	Token string `json:"token"`
}

type VerifyTrustedContactResponse

type VerifyTrustedContactResponse struct {
	ContactId  xid.ID    `json:"contactId"`
	Message    string    `json:"message"`
	Verified   bool      `json:"verified"`
	VerifiedAt time.Time `json:"verifiedAt"`
}

type VersioningConfig

type VersioningConfig struct {
	MaxVersions     int           `json:"maxVersions"`
	RetentionDays   int           `json:"retentionDays"`
	AutoCleanup     bool          `json:"autoCleanup"`
	CleanupInterval time.Duration `json:"cleanupInterval"`
}

type VideoSessionInfo

type VideoSessionInfo struct {
}

type VideoSessionResult

type VideoSessionResult struct {
}

type VideoVerificationConfig

type VideoVerificationConfig struct {
	LivenessThreshold    float64       `json:"livenessThreshold"`
	Provider             string        `json:"provider"`
	RecordSessions       bool          `json:"recordSessions"`
	RequireScheduling    bool          `json:"requireScheduling"`
	MinScheduleAdvance   time.Duration `json:"minScheduleAdvance"`
	RecordingRetention   time.Duration `json:"recordingRetention"`
	RequireAdminReview   bool          `json:"requireAdminReview"`
	RequireLivenessCheck bool          `json:"requireLivenessCheck"`
	SessionDuration      time.Duration `json:"sessionDuration"`
	Enabled              bool          `json:"enabled"`
}

type VideoVerificationSession

type VideoVerificationSession struct {
}

type WebAuthnConfig

type WebAuthnConfig struct {
	Rp_display_name         string      `json:"rp_display_name"`
	Rp_id                   string      `json:"rp_id"`
	Rp_origins              []string    `json:"rp_origins"`
	Timeout                 int         `json:"timeout"`
	Attestation_preference  string      `json:"attestation_preference"`
	Authenticator_selection interface{} `json:"authenticator_selection"`
	Enabled                 bool        `json:"enabled"`
}

type WebAuthnFactorAdapter

type WebAuthnFactorAdapter struct {
}

type WebAuthnWrapper

type WebAuthnWrapper struct {
}

type Webhook

type Webhook struct {
	OrganizationId string   `json:"organizationId"`
	Url            string   `json:"url"`
	Events         []string `json:"events"`
	Secret         string   `json:"secret"`
	Enabled        bool     `json:"enabled"`
	CreatedAt      string   `json:"createdAt"`
	Id             string   `json:"id"`
}

Webhook represents Webhook configuration

type WebhookConfig

type WebhookConfig struct {
	Enabled              bool     `json:"enabled"`
	Expiry_warning_days  int      `json:"expiry_warning_days"`
	Notify_on_created    bool     `json:"notify_on_created"`
	Notify_on_deleted    bool     `json:"notify_on_deleted"`
	Notify_on_expiring   bool     `json:"notify_on_expiring"`
	Notify_on_rate_limit bool     `json:"notify_on_rate_limit"`
	Notify_on_rotated    bool     `json:"notify_on_rotated"`
	Webhook_urls         []string `json:"webhook_urls"`
}

type WebhookPayload

type WebhookPayload struct {
}

type WebhookResponse

type WebhookResponse struct {
	Status   string `json:"status"`
	Received bool   `json:"received"`
}

type WidgetDataDTO

type WidgetDataDTO struct {
	Content      string `json:"content"`
	Icon         string `json:"icon"`
	Id           string `json:"id"`
	Order        int    `json:"order"`
	RequireAdmin bool   `json:"requireAdmin"`
	Size         int    `json:"size"`
	Title        string `json:"title"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL