Documentation
¶
Overview ¶
Package apiclient is the one HTTP client implementation for the control plane's versioned API (internal/api, mounted at /api/v1). cmd/levelrail-cli and cmd/levelrail-mcp both import this package rather than each rolling their own: they are exactly the external callers the documented wire contract in internal/api exists for (see internal/store/tokens.go's own doc comment on APIToken), so neither gets special internal access, only this same bearer-token HTTP client. Wire-shape request/response types live in types.go; this file is the Client type itself and its methods.
Index ¶
- Constants
- Variables
- func ConfigDir(prog string) (string, error)
- func DeployWindow(attempts []DeployAttemptResource, id string, now time.Time) (from, to time.Time, err error)
- func ExtractErrorMessage(data []byte) string
- func LogMaxBytesFromEnv(lookup func(string) (string, bool)) int
- func MailGroupCountLabel(g MailGroup) string
- func ParseLogTime(s string, now time.Time) (time.Time, error)
- func PatchAppMap(app map[string]any, changes []DiagnosisChange, inputs map[string]string) ([]string, error)
- func PathEscape(s string) string
- func PinProfile(prog, profile string, creds Credentials, info InstanceInfo) error
- func ResetServerPins()
- func ResolveAPIURL(flagURL string, lookupEnv func(string) (string, bool), prog, profile string) string
- func ResolveProfile(flagProfile string, lookupEnv func(string) (string, bool)) string
- func ResolveToken(flagToken string, lookupEnv func(string) (string, bool), prog, profile string) string
- func SetDebugTrace(w io.Writer)
- func SetScope(s Scope)
- func SetTrustHook(fn func(TrustRequest) error)
- func SetWarnWriter(w io.Writer)
- func ShortInstanceID(id string) string
- func TraceRequest(method, rawURL, status string, elapsed time.Duration, reqErr error)
- func WithAgentClient(ctx context.Context, name, version string) context.Context
- func WithIdempotencyKey(ctx context.Context, key string) context.Context
- func WriteContext(prog, profile string, s Scope) error
- func WriteCredentialsFile(prog, profile string, creds Credentials) error
- type ACMEFailure
- type AIAssistantSettingsResource
- type AIChatMessageResource
- type AIChatSSEEvent
- type AIChatSessionCreatedResource
- type AIChatSessionResource
- type AIChatSessionSummaryResource
- type AIChatToolCallResource
- type AIChoiceRequest
- type AIControlResource
- type AILimits
- type AIModelRef
- type AIModelResource
- type AIProviderResource
- type AIProviderTestResource
- type AIUsageDayResource
- type AIUsageResource
- type APIError
- type AbuseClientImpact
- type AbuseCondition
- type AbuseCounters
- type AbuseDryRun
- type AbuseDryRunRequest
- type AbuseLimits
- type AbusePolicy
- type AbuseReasonCount
- type AbuseReasonTotal
- type AbuseSuggestion
- type AcceptTeamInviteRequest
- type AccessOptions
- type AccessRecord
- type AccessReviewDetail
- type AccessReviewItem
- type AccessReviewResource
- type AccountExport
- type ActivityActor
- type ActivityEvent
- type ActivityObject
- type ActivityPage
- type AdvisorApplyResult
- type AdvisorFinding
- type AdvisorFindingQuery
- type AdvisorFindings
- type AdvisorSettings
- type AdvisorSummary
- type AgentVersionChange
- type AlertHistoryEntry
- type AlertHistoryQuery
- type AlertLogRule
- type AlertRuleResource
- type AlertSLOConfig
- type AlertTemplateProfile
- type AlertTemplateRule
- type AliasesRequest
- type AnalyzeBuild
- type AnalyzeBuildSuggestion
- type AnalyzeDatabase
- type AnalyzeEnvKey
- type AnalyzeText
- type AppAbuse
- type AppAutoscale
- type AppAutoscaleHistory
- type AppAutoscaleUpdate
- type AppBindMountResource
- type AppBranchEnvOverride
- type AppBudget
- type AppBudgetHistory
- type AppBudgetUpdate
- type AppBudgets
- type AppBuildLimits
- type AppCacheDomain
- type AppCachePurgeRequest
- type AppCachePurgeResource
- type AppCacheResource
- type AppConnectionResource
- type AppContextConfig
- type AppDatabaseResource
- type AppEgressAllow
- type AppEgressPolicyResource
- type AppEnvironmentDomains
- type AppExposureChange
- type AppExposureCheck
- type AppExposurePlan
- type AppExposureProbe
- type AppExposureRequest
- type AppExposureResource
- type AppExposureURL
- type AppGitHubActionsResource
- type AppGroupResource
- type AppHealthResource
- type AppHealthScoreCategory
- type AppHealthScoreResource
- type AppHookRunsResource
- type AppImportChange
- type AppImportCheck
- type AppImportDatabase
- type AppImportEntry
- type AppImportEnvCounts
- type AppImportFinding
- type AppImportImage
- type AppImportImages
- type AppImportImagesTransfer
- type AppImportItem
- type AppImportItemsRequest
- type AppImportMapping
- type AppImportPlanUpdate
- type AppImportPreflight
- type AppImportRequest
- type AppImportSSH
- type AppImportSSHHostKey
- type AppImportSSHOverview
- type AppImportSSHProbe
- type AppImportSSHResult
- type AppImportView
- type AppImportVolume
- type AppImportVolumeCopy
- type AppImportVolumeCopyResult
- type AppIngressLimits
- type AppIntegrationResource
- type AppKeyStatus
- type AppListEntry
- type AppListQuery
- type AppMaintenanceDomain
- type AppMaintenanceResource
- type AppMetricsResource
- type AppMetricsSummary
- type AppPortHolder
- type AppPreviewEnvOverride
- type AppRequestsResource
- type AppResource
- type AppResourceUsageResource
- type AppScheduleHistoryEntry
- type AppScheduleResource
- type AppSleepResource
- type AppStatusEntry
- type AppStatusSummary
- type AppStorageResource
- type AppStreamResource
- type AppTrafficResource
- type AppURLAddress
- type AppURLs
- type AppVaultEnvRef
- type AppVolumeMoveResource
- type AppVolumeMoveStepResource
- type AppVolumeResource
- type AppWatchResource
- type ApplyAlertTemplateResult
- type ApplyPendingResult
- type ApplyPolicyTemplateAttach
- type ApplyPolicyTemplateRequest
- type ApplyPolicyTemplateResponse
- type ApprovePreviewResult
- type AppsPage
- type AppsSummary
- type ArchiveBundle
- type ArchiveList
- type ArchivePolicy
- type ArchiveRestoreResult
- type ArchiveRows
- type ArchiveRunResult
- type ArchiveVerifyResult
- type AttachAppIntegrationRequest
- type AttachAppTagRequest
- type AttachPolicyRequest
- type AttentionFeedItem
- type AuditChainProblem
- type AuditChainReport
- type AuditLogEntryResource
- type AuthEngineStatusResource
- type AuthGateEvent
- type AuthGateEventsResponse
- type AuthGateRule
- type AuthGateSessionsRevoked
- type AutoRollbackSLOBurnSettingResource
- type AutoRollbackSettingResource
- type AutomationRun
- type BackupCoverageResponse
- type BackupDefaults
- type BackupDrillResource
- type BackupHealthResponse
- type BackupHistoryResource
- type BackupScheduleResource
- type BackupSummaryResource
- type BackupTargetEncryptionResource
- type BackupTargetResource
- type BackupVerificationResource
- type BaseBackupHistoryResource
- type BaseDomainBackfill
- type BaseDomainBackfillItem
- type BenchmarkList
- type BenchmarkRun
- type BenchmarkRunSummary
- type BetaFeature
- type BoundEnvEntry
- type BranchDeploy
- type BranchDeploySettings
- type BranchDeploys
- type BucketAppRef
- type BucketObject
- type BucketObjects
- type BucketPresign
- type BucketSweepResult
- type BucketUsage
- type BuildCacheClearResult
- type BuildCachePruneRequest
- type BuildCachePruneResource
- type BuildCacheRecord
- type BuildCacheRequest
- type BuildCacheResource
- type BuildCacheSetting
- type BuildCacheStats
- type BuildCounts
- type BuildHint
- type BuildHookResource
- type BuildLimitOverrides
- type BuildLimitValues
- type BuildLimits
- type BuildLimitsRequest
- type BuildListResource
- type BuildNodeLoad
- type BuildResource
- type BuildRun
- type BuildSpeed
- type BuildSpeedFinding
- type BuildStats
- type BuildTrend
- type BuildTriggerRequest
- type BuildTriggerRequestBuild
- type BuildTriggerResponse
- type BulkAppResult
- type BulkAppsRequest
- type BulkAppsResponse
- type CDNCache
- type CDNNode
- type CDNOverview
- type CIToken
- type CITrust
- type CITrustRequest
- type CIWorkflow
- type CLIPairRequest
- type CLIPairResponse
- type CPHealth
- type CPHealthBreaker
- type CPHealthFinding
- type CPHealthLoop
- type CPUBounds
- type CPUFit
- type CPUFitReport
- type CacheBucket
- type CacheLimits
- type CacheNumbers
- type CachePolicyResource
- type CachePresetResource
- type CachePurgeRecord
- type CachePurgesResource
- type CacheStats
- type CanaryOutcome
- type CanaryProgress
- type CanaryResource
- type CanaryStartRequest
- type CancelSupersededResource
- type CanonicalRequest
- type CanonicalState
- type CapacityForecastMetric
- type CascadeDeleteFailure
- type CascadeDeleteResult
- type CertExpiryPayload
- type CertPreflight
- type CertPreflightItem
- type CertRenewal
- type CertificateResource
- type ChangelogEntryResource
- type ChangelogResource
- type ChecklistAction
- type ChecklistEvent
- type ChecklistEvidence
- type ChecklistFirewallFix
- type ChecklistProvider
- type ChecklistStep
- type ClaimOrphanedContainerRequest
- type CleanupImpact
- type CleanupListResource
- type CleanupOrphanedVolumesRequest
- type CleanupOrphanedVolumesResult
- type CleanupRunResource
- type CleanupRunResult
- type CleanupRunsPage
- type CleanupRunsQuery
- type CleanupScheduler
- type CleanupTargetResource
- type CleanupUsage
- type Client
- func (c *Client) AbortCanary(ctx context.Context, appName string) (CanaryResource, error)
- func (c *Client) AcceptTeamInvite(ctx context.Context, req AcceptTeamInviteRequest) error
- func (c *Client) AccountExportStatus(ctx context.Context, id string) (AccountExport, error)
- func (c *Client) AckControlPlaneEscrow(ctx context.Context) (ControlPlaneDR, error)
- func (c *Client) AckUpgrade(ctx context.Context, id string) (UpgradeHistoryItem, error)
- func (c *Client) AddMarketplaceSource(ctx context.Context, name, url, rootKey string) (MarketplaceSource, error)
- func (c *Client) AddPluginKey(ctx context.Context, name, publicKey string) (PluginKey, error)
- func (c *Client) AdoptExternalDatabase(ctx context.Context, req ExternalDatabaseRequest) (ExternalDatabase, error)
- func (c *Client) AllowFirewallEdgeIP(ctx context.Context, e FirewallEdgeIPEntry) (FirewallEdgeRule, error)
- func (c *Client) AllowSecretFingerprint(ctx context.Context, name, fingerprint, reason string) (SecretScanAllowEntry, error)
- func (c *Client) AnalyzeGitSource(ctx context.Context, req ImportAnalyzeRequest) (ImportAnalysis, error)
- func (c *Client) AnalyzeIAM(ctx context.Context) (IAMAnalysis, error)
- func (c *Client) AnalyzeImport(ctx context.Context, req ImportAnalyzeRequest) (ImportAnalysis, error)
- func (c *Client) AppImportCutoverPlan(ctx context.Context, session, item string) (ImportCutoverPlan, error)
- func (c *Client) AppImportCutoverRun(ctx context.Context, session, item, run string) (ImportCutoverRun, error)
- func (c *Client) AppImportCutoverRuns(ctx context.Context, session, item string) ([]ImportCutoverRun, error)
- func (c *Client) AppImportExitReport(ctx context.Context, id string) (coolifyexit.Report, error)
- func (c *Client) AppImportImages(ctx context.Context, id string) (AppImportImages, error)
- func (c *Client) AppImportImagesStatus(ctx context.Context, id string) (AppImportImages, error)
- func (c *Client) AppImportReceipt(ctx context.Context, id string) (json.RawMessage, error)
- func (c *Client) AppImportVolumeCopyStatus(ctx context.Context, id string) (AppImportVolumeCopy, error)
- func (c *Client) ApplyAdvisorFinding(ctx context.Context, id string, confirm bool) (AdvisorApplyResult, error)
- func (c *Client) ApplyAlertTemplate(ctx context.Context, name, profile, channelID string) (ApplyAlertTemplateResult, error)
- func (c *Client) ApplyAppCachePreset(ctx context.Context, name, domain string) (CachePresetResource, error)
- func (c *Client) ApplyDNSTemplate(ctx context.Context, provider, zone, id string, params map[string]string, ...) (DNSImportResult, error)
- func (c *Client) ApplyDatabaseRules(ctx context.Context, name string, req DatabaseRulesRequest) (DatabaseRulesPlan, error)
- func (c *Client) ApplyDetectedProxy(ctx context.Context) (EdgeSettings, error)
- func (c *Client) ApplyDiagnosisFix(ctx context.Context, name string, fix DiagnosisFix, inputs map[string]string, ...) ([]string, error)
- func (c *Client) ApplyDoctorAction(ctx context.Context, a DoctorAction) error
- func (c *Client) ApplyExposureRestriction(ctx context.Context, req ExposureRestrictRequest) (ExposurePlan, error)
- func (c *Client) ApplyFix(ctx context.Context, id string, params map[string]string) (FixResult, error)
- func (c *Client) ApplyIaC(ctx context.Context, req IaCRequest) (iac.ApplyResult, error)
- func (c *Client) ApplyImportRepo(ctx context.Context, req ImportRepoApplyRequest) (ImportRepoApplyResponse, error)
- func (c *Client) ApplyMigrationSession(ctx context.Context, id, password string) (HubSession, error)
- func (c *Client) ApplyPendingChanges(ctx context.Context, name string) (ApplyPendingResult, error)
- func (c *Client) ApplyPipelineRunFix(ctx context.Context, app, runID, kind, job string, rerun bool) (PipelineFixResult, error)
- func (c *Client) ApplyPlatformImport(ctx context.Context, req PlatformImportRequest) (PlatformImportReport, error)
- func (c *Client) ApplyPolicyTemplate(ctx context.Context, id string, req ApplyPolicyTemplateRequest) (ApplyPolicyTemplateResponse, error)
- func (c *Client) ApplyPrivateNetworks(ctx context.Context) (PrivateNetworkChange, error)
- func (c *Client) ApplyProxyIntegration(ctx context.Context) (ProxyIntegration, error)
- func (c *Client) ApplyReachFix(ctx context.Context, fix ReachFix) error
- func (c *Client) ApplyRecommendedShield(ctx context.Context, app string, dryRun, blockBots bool) (ShieldRecommendedResource, error)
- func (c *Client) ApplyRuntimeSettings(ctx context.Context) (map[string]any, error)
- func (c *Client) ApproveDeployApproval(ctx context.Context, id string) (DeployApprovalDecisionResult, error)
- func (c *Client) ApprovePlugin(ctx context.Context, name string, abilities []string) (Plugin, error)
- func (c *Client) ApprovePreviewEnvironment(ctx context.Context, appName string, prNumber int) (ApprovePreviewResult, error)
- func (c *Client) ApprovePreviewEnvironmentShared(ctx context.Context, appName string, prNumber int, shareSecrets bool) (ApprovePreviewResult, error)
- func (c *Client) ArchiveInbox(ctx context.Context, ids []string, restore bool) error
- func (c *Client) AttachAppIntegration(ctx context.Context, name, integrationKey string, fields map[string]string) (AppIntegrationResource, error)
- func (c *Client) AttachAppTag(ctx context.Context, name, tagName string) (TagResource, error)
- func (c *Client) AttachPolicy(ctx context.Context, id string, req AttachPolicyRequest) error
- func (c *Client) BackfillBaseDomain(ctx context.Context, confirm bool) (BaseDomainBackfill, error)
- func (c *Client) BackupCoverage(ctx context.Context) (BackupCoverageResponse, error)
- func (c *Client) BackupHealth(ctx context.Context) (BackupHealthResponse, error)
- func (c *Client) BaseURL() string
- func (c *Client) BenchmarkModel(ctx context.Context, name string) (ModelBenchmarkResult, error)
- func (c *Client) BindAppBucket(ctx context.Context, app, id, envPrefix string) (StorageBucket, error)
- func (c *Client) BlockFirewallEdgeIP(ctx context.Context, e FirewallEdgeIPEntry, force bool) (FirewallEdgeRule, error)
- func (c *Client) BrandShortName(ctx context.Context) (string, error)
- func (c *Client) BrowseArchive(ctx context.Context, id, table string, offset, limit int) (ArchiveRows, error)
- func (c *Client) BucketUsage(ctx context.Context, id string) (BucketUsage, error)
- func (c *Client) BuildControlPlaneEscrow(ctx context.Context, recipients []string, upload bool) (ControlPlaneEscrowBundle, error)
- func (c *Client) BulkApps(ctx context.Context, req BulkAppsRequest) (BulkAppsResponse, error)
- func (c *Client) BulkTagResources(ctx context.Context, req ConsoleBulkTagRequest) (ConsoleBulkTagResponse, error)
- func (c *Client) CancelAppImportImages(ctx context.Context, id string) (AppImportImages, error)
- func (c *Client) CancelBuild(ctx context.Context, app, id string) error
- func (c *Client) CancelDeploy(ctx context.Context, appName, deployID string) (DeployAttemptResource, error)
- func (c *Client) CancelIntegrityRestore(ctx context.Context) error
- func (c *Client) CancelPipelineRun(ctx context.Context, app, id string) error
- func (c *Client) CancelUpgradeSchedule(ctx context.Context) (UpgradeSchedule, error)
- func (c *Client) CapturePreview(ctx context.Context, name string) (PreviewStatus, error)
- func (c *Client) CertPreflight(ctx context.Context, domain, email string, staging bool) (CertPreflight, error)
- func (c *Client) CheckAppExposure(ctx context.Context, name string) (AppExposureCheck, error)
- func (c *Client) CheckCPUModelFit(ctx context.Context, req ModelFitRequest) (CPUFitReport, error)
- func (c *Client) CheckDNS(ctx context.Context, name, typ, zone string) (DNSPropagation, error)
- func (c *Client) CheckDeployPolicy(ctx context.Context, req PolicyCheckRequest) (PolicyCheckResult, error)
- func (c *Client) CheckDomain(ctx context.Context, name, domain string) (DomainCheckResource, error)
- func (c *Client) CheckEmailDomain(ctx context.Context, domain string) (EmailDomainCheck, error)
- func (c *Client) CheckEnv(ctx context.Context, name string) (EnvCheckResource, error)
- func (c *Client) CheckImageAutoUpdate(ctx context.Context, appName string) (ImageAutoUpdateResource, error)
- func (c *Client) CheckIntegrity(ctx context.Context, full bool) (IntegrityStatus, error)
- func (c *Client) CheckLoadBalancer(ctx context.Context, name string) (LoadBalancerCheck, error)
- func (c *Client) CheckModelFit(ctx context.Context, req ModelFitRequest) (ModelFitReport, error)
- func (c *Client) ClaimOrphanedContainer(ctx context.Context, name string, req ClaimOrphanedContainerRequest) (AppResource, error)
- func (c *Client) CleanupNode(ctx context.Context, id string, dryRun bool) (NodeCleanupResult, error)
- func (c *Client) CleanupOrphanedVolumes(ctx context.Context, names []string) (CleanupOrphanedVolumesResult, error)
- func (c *Client) CleanupTokens(ctx context.Context, olderThanDays int) (TokenCleanupResult, error)
- func (c *Client) ClearAppAutoscale(ctx context.Context, app string) error
- func (c *Client) ClearAppBudget(ctx context.Context, app string) error
- func (c *Client) ClearAppContext(ctx context.Context, name, contextName string) error
- func (c *Client) ClearAppDatabaseAttachment(ctx context.Context, name string) error
- func (c *Client) ClearAppEgressPolicy(ctx context.Context, name string) error
- func (c *Client) ClearAppHealth(ctx context.Context, name string) error
- func (c *Client) ClearAppMaintenance(ctx context.Context, name string) (AppMaintenanceResource, error)
- func (c *Client) ClearAppPreviewEnvOverride(ctx context.Context, name, key string) error
- func (c *Client) ClearAppStorage(ctx context.Context, name string) error
- func (c *Client) ClearAppVaultEnv(ctx context.Context, name, key string) error
- func (c *Client) ClearBackupSchedule(ctx context.Context, name string) error
- func (c *Client) ClearBuildCache(ctx context.Context, app string) (BuildCacheClearResult, error)
- func (c *Client) ClearChannelQuietHours(ctx context.Context, id string) error
- func (c *Client) ClearDatabasePublicAccess(ctx context.Context, name string) error
- func (c *Client) ClearDomainAuthGate(ctx context.Context, name, domain string) (DomainAuthGateResource, error)
- func (c *Client) ClearDomainBasicAuth(ctx context.Context, name, domain string) (DomainBasicAuthResource, error)
- func (c *Client) ClearDomainCache(ctx context.Context, name, domain string) (CachePolicyResource, error)
- func (c *Client) ClearDomainErrorPage(ctx context.Context, name, domain string, statusCode int) (DomainErrorPagesResource, error)
- func (c *Client) ClearDomainErrorPages(ctx context.Context, name, domain string) (DomainErrorPagesResource, error)
- func (c *Client) ClearDomainForwarders(ctx context.Context, name, domain string) (ForwardersPolicyResource, error)
- func (c *Client) ClearDomainGeo(ctx context.Context, name, domain string) (GeoPolicyResource, error)
- func (c *Client) ClearDomainHeaders(ctx context.Context, name, domain string) (HeadersPolicyResource, error)
- func (c *Client) ClearDomainMaintenance(ctx context.Context, name, domain string) (DomainMaintenanceResource, error)
- func (c *Client) ClearDomainRedirect(ctx context.Context, name, domain string) (DomainRedirectResource, error)
- func (c *Client) ClearDomainRedirectSettings(ctx context.Context, name, domain string) (DomainRedirectsResource, error)
- func (c *Client) ClearDomainShield(ctx context.Context, name, domain string) (ShieldPolicyResource, error)
- func (c *Client) ClearDomainTLSCert(ctx context.Context, name, domain string) (DomainTLSCertResource, error)
- func (c *Client) ClearDomainWAF(ctx context.Context, name, domain string) (DomainWAFResource, error)
- func (c *Client) ClearInbox(ctx context.Context, req InboxClearRequest) (InboxClearResult, error)
- func (c *Client) ClearLogDrain(ctx context.Context, name string) error
- func (c *Client) ClearQuota(ctx context.Context, scope, id string) (QuotaResource, error)
- func (c *Client) ClearSessionPolicy(ctx context.Context, teamID string) error
- func (c *Client) ClearStorageDefault(ctx context.Context, class string) error
- func (c *Client) ClearVolumeBackupSchedule(ctx context.Context, name, volume string) error
- func (c *Client) CloneApp(ctx context.Context, name, newName string) (AppResource, error)
- func (c *Client) CloneAppWith(ctx context.Context, name string, req CloneAppRequest) (AppResource, error)
- func (c *Client) CloneEnvironment(ctx context.Context, id string, req EnvironmentCloneRequest) (EnvironmentCloneResultResource, error)
- func (c *Client) CompareBenchmarks(ctx context.Context, base, head string) (benchreport.Comparison, error)
- func (c *Client) CompareDeployEventTimelines(ctx context.Context, id, other string) (DeployEventComparison, error)
- func (c *Client) CompareDeploys(ctx context.Context, name, from, to string) (DeployCompareResource, error)
- func (c *Client) CompareEnvironmentEnv(ctx context.Context, projectID, a, b string) (EnvironmentCompareResource, error)
- func (c *Client) CompleteAccessReview(ctx context.Context, id string) (CompleteAccessReviewResult, error)
- func (c *Client) ComposeDown(ctx context.Context, name string, removeVolumes bool) (ComposeDownResult, error)
- func (c *Client) ConfirmAppImportCutoverDNS(ctx context.Context, session, item, run string) (ImportCutoverRun, error)
- func (c *Client) ConnectAppImportSession(ctx context.Context, id string, req AppImportRequest) (AppImportView, error)
- func (c *Client) ConnectDatabaseApp(ctx context.Context, database, app, envVar, field string) (AppConnectionResource, error)
- func (c *Client) ConnectExternalDatabase(ctx context.Context, req ExternalDatabaseRequest) (ExternalDatabase, error)
- func (c *Client) ConvertEnvToSecret(ctx context.Context, app, key string) error
- func (c *Client) CoolifyExitReport(ctx context.Context, req PlatformImportRequest) (coolifyexit.Report, error)
- func (c *Client) CordonNode(ctx context.Context, id string) (NodeResource, error)
- func (c *Client) CreateAIChatSession(ctx context.Context) (AIChatSessionCreatedResource, error)
- func (c *Client) CreateAccessReview(ctx context.Context, req CreateAccessReviewRequest) (AccessReviewResource, error)
- func (c *Client) CreateAlertRule(ctx context.Context, name string, req CreateAlertRuleRequest) (AlertRuleResource, error)
- func (c *Client) CreateAlertSilence(ctx context.Context, req CreateSilenceRequest) (SilenceResource, error)
- func (c *Client) CreateApp(ctx context.Context, req AppResource) (AppResource, error)
- func (c *Client) CreateAppConnection(ctx context.Context, name string, req CreateAppConnectionRequest) (AppConnectionResource, error)
- func (c *Client) CreateAppImportSession(ctx context.Context, req AppImportRequest) (AppImportView, error)
- func (c *Client) CreateAppStream(ctx context.Context, name string, req CreateAppStreamRequest) (AppStreamResource, error)
- func (c *Client) CreateArchive(ctx context.Context, kind string, olderThanDays int) (ArchiveRunResult, error)
- func (c *Client) CreateBackupTarget(ctx context.Context, req CreateBackupTargetRequest) (BackupTargetResource, error)
- func (c *Client) CreateBuildHook(ctx context.Context, appName, name, branch string) (BuildHookResource, error)
- func (c *Client) CreateCITrust(ctx context.Context, name string, req CITrustRequest) (CITrust, error)
- func (c *Client) CreateControlPlaneBackup(ctx context.Context) (ControlPlaneBackup, error)
- func (c *Client) CreateCostBudget(ctx context.Context, body map[string]any) (costbudget.Budget, error)
- func (c *Client) CreateDNSHealthCheck(ctx context.Context, hc DNSHealthCheck) (DNSHealthCheck, error)
- func (c *Client) CreateDNSRecord(ctx context.Context, name, domain string, record DNSRecordResource) (DNSRecordsResponse, error)
- func (c *Client) CreateDNSZone(ctx context.Context, provider, name, accountID string) (DNSZone, error)
- func (c *Client) CreateDNSZoneRecord(ctx context.Context, provider, zone string, rs DNSRecordSet) (DNSRecordWrite, error)
- func (c *Client) CreateDashboard(ctx context.Context, in DashboardWrite) (DashboardResource, error)
- func (c *Client) CreateDatabase(ctx context.Context, req DatabaseResource) (DatabaseResource, error)
- func (c *Client) CreateDatabaseUser(ctx context.Context, name string, req DatabaseUserCreateRequest) (DatabaseUserCreated, error)
- func (c *Client) CreateDeployNotifyTarget(ctx context.Context, name string, req CreateDeployNotifyTargetRequest) (DeployNotifyTargetResource, error)
- func (c *Client) CreateEmailProvider(ctx context.Context, req EmailProvider) (EmailProvider, error)
- func (c *Client) CreateEnvironment(ctx context.Context, projectID string, req CreateEnvironmentRequest) (EnvironmentResource, error)
- func (c *Client) CreateEventWebhook(ctx context.Context, req CreateEventWebhookRequest) (EventWebhookResource, error)
- func (c *Client) CreateEvidencePack(ctx context.Context, from, to string) (EvidencePackResource, error)
- func (c *Client) CreateExportDestination(ctx context.Context, req CreateExportDestinationRequest) (ExportDestinationResource, error)
- func (c *Client) CreateFeatureFlag(ctx context.Context, name string, req FeatureFlagRequest) (FeatureFlagResource, error)
- func (c *Client) CreateFirewallEdgeRule(ctx context.Context, r edgefw.Rule, force bool) (FirewallEdgeRule, error)
- func (c *Client) CreateFirewallRule(ctx context.Context, req CreateFirewallRuleRequest) (FirewallRuleResource, error)
- func (c *Client) CreateForm(ctx context.Context, app string, req FormRequest) (Form, error)
- func (c *Client) CreateGitConnection(ctx context.Context, req CreateGitConnectionRequest) (GitProviderConnectionResource, error)
- func (c *Client) CreateGlobalEnvironment(ctx context.Context, req CreateGlobalEnvironmentRequest) (EnvironmentResource, error)
- func (c *Client) CreateInvite(ctx context.Context, req CreateInviteRequest) (CreateInviteResponse, error)
- func (c *Client) CreateIssueSilence(ctx context.Context, req CreateIssueSilenceRequest) (IssueSilenceResource, error)
- func (c *Client) CreateJob(ctx context.Context, app string, req ScheduledTaskRequest) (ScheduledTaskResource, error)
- func (c *Client) CreateMailBroadcast(ctx context.Context, req MailBroadcastRequest) (MailBroadcast, error)
- func (c *Client) CreateMailGroup(ctx context.Context, name, description string, rules MailRules) (MailGroup, error)
- func (c *Client) CreateMaintenanceWindow(ctx context.Context, req MaintenanceWindowResource) (MaintenanceWindowResource, error)
- func (c *Client) CreateMigrationAgentSession(ctx context.Context, label, addr string) (MigrationAgentCreated, error)
- func (c *Client) CreateMigrationSession(ctx context.Context, src HubSource) (HubSession, error)
- func (c *Client) CreateMobilePairing(ctx context.Context, proof *StepUpProof) (MobilePairingCode, error)
- func (c *Client) CreateModel(ctx context.Context, req CreateModelRequest) (CreateModelResponse, error)
- func (c *Client) CreateModelDetail(ctx context.Context, req CreateModelRequest) (CreateModelDetailResponse, error)
- func (c *Client) CreateModelKey(ctx context.Context, name string, req CreateModelKeyRequest) (CreatedModelKeyResource, error)
- func (c *Client) CreateNetworkShare(ctx context.Context, req CreateNetworkShareRequest) (NetworkShareResource, error)
- func (c *Client) CreateNodeJoinToken(ctx context.Context) (CreateNodeJoinTokenResponse, error)
- func (c *Client) CreateNodeJoinTokenFor(ctx context.Context, req CreateNodeJoinTokenRequest) (CreateNodeJoinTokenResponse, error)
- func (c *Client) CreateNodeProvision(ctx context.Context, req CreateNodeProvisionRequest) (NodeProvisionResource, error)
- func (c *Client) CreateNodeReenrollToken(ctx context.Context, id string) (NodeReenrollTokenResponse, error)
- func (c *Client) CreateNotificationChannel(ctx context.Context, req CreateNotificationChannelRequest) (NotificationChannelResource, error)
- func (c *Client) CreateOrganization(ctx context.Context, req CreateOrganizationRequest) (OrganizationResource, error)
- func (c *Client) CreatePackageRegistry(ctx context.Context, req CreatePackageRegistryRequest) (PackageRegistryResource, error)
- func (c *Client) CreatePipeline(ctx context.Context, app string, req PipelineSaveRequest) (PipelineResource, error)
- func (c *Client) CreatePolicy(ctx context.Context, req PolicyRequest) (PolicyResource, error)
- func (c *Client) CreatePrivateNetwork(ctx context.Context, req PrivateNetworkRequest) (PrivateNetworkChange, error)
- func (c *Client) CreatePrivateNetworkRule(ctx context.Context, req PrivateNetworkRuleRequest) (PrivateNetworkChange, error)
- func (c *Client) CreateProject(ctx context.Context, req CreateProjectRequest) (ProjectResource, error)
- func (c *Client) CreateRegistryCredential(ctx context.Context, req CreateRegistryCredentialRequest) (RegistryCredentialResource, error)
- func (c *Client) CreateRole(ctx context.Context, req RoleRequest) (RoleResource, error)
- func (c *Client) CreateSAMLConnection(ctx context.Context, req SAMLConnectionRequest) (SAMLConnection, error)
- func (c *Client) CreateSCIMToken(ctx context.Context, name string) (SCIMTokenCreated, error)
- func (c *Client) CreateSSHNodeProvision(ctx context.Context, req CreateSSHNodeProvisionRequest) (SSHNodeProvisionResource, error)
- func (c *Client) CreateSavedLogQuery(ctx context.Context, req SavedLogQueryRequest) (SavedLogQuery, error)
- func (c *Client) CreateScheduledMaintenance(ctx context.Context, req ScheduledMaintenanceRequest) (ScheduledMaintenanceResource, error)
- func (c *Client) CreateScheduledTask(ctx context.Context, name string, req ScheduledTaskRequest) (ScheduledTaskResource, error)
- func (c *Client) CreateStandaloneDomain(ctx context.Context, req StandaloneDomainRequest) (StandaloneDomain, error)
- func (c *Client) CreateStatusComponent(ctx context.Context, comp StatusComponent) (StatusComponent, error)
- func (c *Client) CreateStatusIncident(ctx context.Context, inc StatusIncident) (StatusIncident, error)
- func (c *Client) CreateStorageBucket(ctx context.Context, req CreateStorageBucketRequest) (StorageBucket, error)
- func (c *Client) CreateStorageDestination(ctx context.Context, req StorageDestinationRequest) (StorageDestination, error)
- func (c *Client) CreateTag(ctx context.Context, name string) (TagResource, error)
- func (c *Client) CreateTeam(ctx context.Context, name string) (TeamResource, error)
- func (c *Client) CreateTeamInvite(ctx context.Context, id string, req CreateTeamInviteRequest) (TeamInviteResource, error)
- func (c *Client) CreateTrafficExportSink(ctx context.Context, req TrafficExportSink) (TrafficExportSink, error)
- func (c *Client) CreateUpgradeSchedule(ctx context.Context, req UpgradeScheduleRequest) (UpgradeSchedule, error)
- func (c *Client) CreateUser(ctx context.Context, req CreateUserRequest) (UserResource, error)
- func (c *Client) CutoverReport(ctx context.Context, app, targetIP string, verify bool) (CutoverReport, error)
- func (c *Client) DNSZone(ctx context.Context, domain string) (DNSZoneResult, error)
- func (c *Client) DNSZoneDelegation(ctx context.Context, provider, zone string) (DNSDelegation, error)
- func (c *Client) DNSZoneNameServers(ctx context.Context, provider, zone string) ([]string, error)
- func (c *Client) DashboardTemplates(ctx context.Context) ([]DashboardTemplate, error)
- func (c *Client) DatabaseCatalogStatus(ctx context.Context) (DBCatalogStatus, error)
- func (c *Client) DatabaseUpgradeSummary(ctx context.Context) (DBUpgradeSummary, error)
- func (c *Client) DatabaseVersions(ctx context.Context, engine string) (DBVersions, error)
- func (c *Client) DecideAccessReviewItem(ctx context.Context, id, item, decision string) error
- func (c *Client) DecideLoginApproval(ctx context.Context, id string, approve bool, match int) error
- func (c *Client) DecidePipelineApproval(ctx context.Context, app, runID string, approvalID int64, ...) error
- func (c *Client) DecidePipelineRunHold(ctx context.Context, app, runID, decision string) error
- func (c *Client) DeleteAIChatSession(ctx context.Context, id string) error
- func (c *Client) DeleteAIProvider(ctx context.Context, id string) (AIProviderResource, error)
- func (c *Client) DeleteAlertRule(ctx context.Context, name, id string) error
- func (c *Client) DeleteApp(ctx context.Context, name string) error
- func (c *Client) DeleteAppAndData(ctx context.Context, name string) (DeleteAppResult, error)
- func (c *Client) DeleteAppBranchEnv(ctx context.Context, name, id string) error
- func (c *Client) DeleteAppConnection(ctx context.Context, name, envVar string) error
- func (c *Client) DeleteAppResult(ctx context.Context, name string) (DeleteAppResult, error)
- func (c *Client) DeleteAppStream(ctx context.Context, name, id string) error
- func (c *Client) DeleteArchive(ctx context.Context, id string) error
- func (c *Client) DeleteBackup(ctx context.Context, name, historyID string) error
- func (c *Client) DeleteBackupTarget(ctx context.Context, id string) error
- func (c *Client) DeleteBenchmark(ctx context.Context, id string) error
- func (c *Client) DeleteBranchDeploy(ctx context.Context, name, slug string) error
- func (c *Client) DeleteBucketObject(ctx context.Context, id, key string) error
- func (c *Client) DeleteBuildCache(ctx context.Context, app string) error
- func (c *Client) DeleteCITrust(ctx context.Context, name, id string) error
- func (c *Client) DeleteConsoleView(ctx context.Context, id string) error
- func (c *Client) DeleteControlPlaneBackup(ctx context.Context, name string) error
- func (c *Client) DeleteCostBudget(ctx context.Context, id string) error
- func (c *Client) DeleteCustomTemplate(ctx context.Context, id string) error
- func (c *Client) DeleteDNSHealthCheck(ctx context.Context, id string) error
- func (c *Client) DeleteDNSRecord(ctx context.Context, name, domain string, record DNSRecordResource) (DNSRecordsResponse, error)
- func (c *Client) DeleteDNSZone(ctx context.Context, provider, zone, confirm string, force bool) error
- func (c *Client) DeleteDNSZoneRecord(ctx context.Context, provider, zone string, k DNSRecordKey) error
- func (c *Client) DeleteDashboard(ctx context.Context, id string) error
- func (c *Client) DeleteDatabase(ctx context.Context, name string, force bool) error
- func (c *Client) DeleteDatabaseAndData(ctx context.Context, name string, force bool) error
- func (c *Client) DeleteDatabaseUser(ctx context.Context, name, role string) error
- func (c *Client) DeleteDeployNotifyTarget(ctx context.Context, name, id string) error
- func (c *Client) DeleteDeployPolicy(ctx context.Context, scope, id string) error
- func (c *Client) DeleteEmailProvider(ctx context.Context, id string) error
- func (c *Client) DeleteEnvironment(ctx context.Context, id string) error
- func (c *Client) DeleteEnvironmentCascade(ctx context.Context, id string) (CascadeDeleteResult, error)
- func (c *Client) DeleteEnvironmentMoveTo(ctx context.Context, id, moveTo string) error
- func (c *Client) DeleteEventWebhook(ctx context.Context, id string) error
- func (c *Client) DeleteExportDestination(ctx context.Context, id string) error
- func (c *Client) DeleteExternalDatabase(ctx context.Context, name string, force bool) error
- func (c *Client) DeleteFeatureFlag(ctx context.Context, name, id string) error
- func (c *Client) DeleteFirewallEdgeRule(ctx context.Context, id string) error
- func (c *Client) DeleteFirewallRule(ctx context.Context, id string) error
- func (c *Client) DeleteForm(ctx context.Context, app, form string) error
- func (c *Client) DeleteFormSubmission(ctx context.Context, app, form string, id int64) error
- func (c *Client) DeleteFunctionInvocation(ctx context.Context, id string) error
- func (c *Client) DeleteFunctionKV(ctx context.Context, name, key string) error
- func (c *Client) DeleteFunctionRoutes(ctx context.Context, name, domain, path string) error
- func (c *Client) DeleteFunctionWebhook(ctx context.Context, name string) error
- func (c *Client) DeleteGitHubAppInstallation(ctx context.Context, id int64) error
- func (c *Client) DeleteGitRemote(ctx context.Context, name string) error
- func (c *Client) DeleteGitSource(ctx context.Context, name string) error
- func (c *Client) DeleteInbox(ctx context.Context, ids []string, restore bool) error
- func (c *Client) DeleteIssueSilence(ctx context.Context, id string) error
- func (c *Client) DeleteJob(ctx context.Context, app, id string) error
- func (c *Client) DeleteLoadBalancer(ctx context.Context, name string) error
- func (c *Client) DeleteLogArchivePolicy(ctx context.Context, app string) error
- func (c *Client) DeleteLogBudget(ctx context.Context, app string) error
- func (c *Client) DeleteLogPipeline(ctx context.Context, app string) error
- func (c *Client) DeleteMailGroup(ctx context.Context, id string) error
- func (c *Client) DeleteMaintenanceWindow(ctx context.Context, id string) error
- func (c *Client) DeleteModel(ctx context.Context, name string) error
- func (c *Client) DeleteNetworkShare(ctx context.Context, id string) error
- func (c *Client) DeleteNode(ctx context.Context, id string) error
- func (c *Client) DeleteNotificationChannel(ctx context.Context, id string) error
- func (c *Client) DeleteOrganization(ctx context.Context, id string) error
- func (c *Client) DeleteOrganizationCascade(ctx context.Context, id string) (CascadeDeleteResult, error)
- func (c *Client) DeletePRPreviewEnv(ctx context.Context, name string, pr int, id string) error
- func (c *Client) DeletePackageRegistry(ctx context.Context, id string) error
- func (c *Client) DeletePipeline(ctx context.Context, app, name string) error
- func (c *Client) DeletePipelineWebhook(ctx context.Context, app, name string) error
- func (c *Client) DeletePolicy(ctx context.Context, id string) error
- func (c *Client) DeletePrivateNetwork(ctx context.Context, id string) (PrivateNetworkChange, error)
- func (c *Client) DeletePrivateNetworkRule(ctx context.Context, id string) (PrivateNetworkChange, error)
- func (c *Client) DeleteProject(ctx context.Context, id string) error
- func (c *Client) DeleteProjectCascade(ctx context.Context, id string) (CascadeDeleteResult, error)
- func (c *Client) DeletePushSubscription(ctx context.Context, id string) error
- func (c *Client) DeleteRegistryCredential(ctx context.Context, id string) error
- func (c *Client) DeleteRole(ctx context.Context, id string) error
- func (c *Client) DeleteRuntimeSetting(ctx context.Context, key string) (RuntimeSettingResource, error)
- func (c *Client) DeleteSAMLConnection(ctx context.Context, id string) error
- func (c *Client) DeleteSavedLogQuery(ctx context.Context, id string) error
- func (c *Client) DeleteSavedSearch(ctx context.Context, id string) error
- func (c *Client) DeleteScheduledMaintenance(ctx context.Context, id string) error
- func (c *Client) DeleteScheduledTask(ctx context.Context, name, id string) error
- func (c *Client) DeleteSecret(ctx context.Context, name, key string, force bool) error
- func (c *Client) DeleteSecretRotation(ctx context.Context, name, key string) error
- func (c *Client) DeleteSharedEnvSecret(ctx context.Context, scope, id, key string) error
- func (c *Client) DeleteStandaloneDomain(ctx context.Context, domain string) error
- func (c *Client) DeleteStaticSite(ctx context.Context, name string) error
- func (c *Client) DeleteStatusComponent(ctx context.Context, id string) error
- func (c *Client) DeleteStatusIncident(ctx context.Context, id string) error
- func (c *Client) DeleteStorageBucket(ctx context.Context, id string, purge bool) error
- func (c *Client) DeleteStorageDestination(ctx context.Context, id string) error
- func (c *Client) DeleteTag(ctx context.Context, id string) error
- func (c *Client) DeleteTeam(ctx context.Context, id string) error
- func (c *Client) DeleteTrafficExportSink(ctx context.Context, id string) error
- func (c *Client) DeleteUsageBudget(ctx context.Context, id string) error
- func (c *Client) DeleteUser(ctx context.Context, id string) error
- func (c *Client) DeleteVolumeBackup(ctx context.Context, name, volume, historyID string) error
- func (c *Client) DeployApp(ctx context.Context, name, image string, confirm bool) (DeployTriggerResult, error)
- func (c *Client) DeployAppWith(ctx context.Context, name string, req DeployTriggerRequest) (DeployTriggerResult, error)
- func (c *Client) DeployCompose(ctx context.Context, name string, composeYAML []byte) (ComposeDeployResult, error)
- func (c *Client) DeployComposeFromTemplate(ctx context.Context, name string, composeYAML []byte, templateID string) (ComposeDeployResult, error)
- func (c *Client) DeployComposeStack(ctx context.Context, name string, composeYAML []byte, profiles []string) (ComposeStackDeploy, error)
- func (c *Client) DeployEventTimeline(ctx context.Context, id string) (DeployEventTimeline, error)
- func (c *Client) DeployFromCache(ctx context.Context, name string, req DeployFromCacheRequest) (BuildTriggerResponse, error)
- func (c *Client) DeploySpec(ctx context.Context, name string, req DeploySpecRequest) (DeploySpecResult, error)
- func (c *Client) DeployTimeline(ctx context.Context, q url.Values) (TimelinePage, error)
- func (c *Client) DetachAppIntegration(ctx context.Context, name, id string) error
- func (c *Client) DetachAppTag(ctx context.Context, name, tagID string) error
- func (c *Client) DetachPolicy(ctx context.Context, id, principalType, principalID string) error
- func (c *Client) DetectFramework(ctx context.Context, repoURL, ref string) (DetectFrameworkResource, error)
- func (c *Client) DetectGitSourceBuild(ctx context.Context, name, branch string) (GitBuildDetection, error)
- func (c *Client) DiagnoseApp(ctx context.Context, name, deployID string) (DiagnosisResource, error)
- func (c *Client) DiagnoseStuck(ctx context.Context, kind, name string) (StuckReport, error)
- func (c *Client) DialDatabaseTunnel(ctx context.Context, name string) (net.Conn, error)
- func (c *Client) DisableErrorTracking(ctx context.Context, app string) error
- func (c *Client) DisablePITR(ctx context.Context, name string) error
- func (c *Client) DisablePlugin(ctx context.Context, name string) (Plugin, error)
- func (c *Client) DisableRegistry(ctx context.Context) (RegistrySettingsResource, error)
- func (c *Client) DisableTracing(ctx context.Context, app string) error
- func (c *Client) DiscardMajorUpgradeSnapshot(ctx context.Context, name, id string) error
- func (c *Client) DisconnectCloudflareDNS(ctx context.Context) (CloudflareDNSResource, error)
- func (c *Client) DisconnectCloudflareTunnel(ctx context.Context) (CloudflareTunnelResource, error)
- func (c *Client) DisconnectGitConnection(ctx context.Context, id string) (GitDisconnectResource, error)
- func (c *Client) DisconnectGitHubApp(ctx context.Context) error
- func (c *Client) DisconnectGoogleCloudDNS(ctx context.Context) (GoogleCloudDNSResource, error)
- func (c *Client) DisconnectNodeProvider(ctx context.Context, provider string) error
- func (c *Client) DisconnectRoute53DNS(ctx context.Context) (Route53DNSResource, error)
- func (c *Client) DisconnectVault(ctx context.Context) (VaultSettingsResource, error)
- func (c *Client) DiscoverAppHealth(ctx context.Context, name string) (HealthDiscoveryResponse, error)
- func (c *Client) DiscoverMigrationAgent(ctx context.Context, id string) (MigrationAgentInventory, error)
- func (c *Client) DiscoverPlatformImport(ctx context.Context, req PlatformImportRequest) (PlatformImportReport, error)
- func (c *Client) DomainActivity(ctx context.Context, domain string, limit int, before, actions string) (ActivityPage, error)
- func (c *Client) DomainCertStatus(ctx context.Context, domain string) (DomainCertStatus, error)
- func (c *Client) DomainDiagnose(ctx context.Context, domain string) (DomainDoctorReport, error)
- func (c *Client) DomainDoctor(ctx context.Context, app, domain string) (DomainDoctorReport, error)
- func (c *Client) DownloadAccountExport(ctx context.Context, id string) ([]byte, error)
- func (c *Client) DownloadArchive(ctx context.Context, id string) ([]byte, error)
- func (c *Client) DownloadAuditLogCSV(ctx context.Context, opts ListAuditLogOptions) ([]byte, error)
- func (c *Client) DownloadBackup(ctx context.Context, name, historyID string) ([]byte, error)
- func (c *Client) DownloadBucketObject(ctx context.Context, id, key string) ([]byte, error)
- func (c *Client) DownloadControlPlaneBackup(ctx context.Context, name string) ([]byte, error)
- func (c *Client) DownloadDeployLog(ctx context.Context, name, deployID string) ([]byte, error)
- func (c *Client) DownloadEvidencePack(ctx context.Context, id string, w io.Writer) error
- func (c *Client) DownloadLogArchiveObject(ctx context.Context, targetID, key string) ([]byte, error)
- func (c *Client) DownloadPipelineArtifact(ctx context.Context, app, runID, artifactID string, w io.Writer) (int64, string, error)
- func (c *Client) DownloadSBOM(ctx context.Context, name, id string) ([]byte, error)
- func (c *Client) DownloadUsageReportCSV(ctx context.Context, q UsageReportQuery) ([]byte, error)
- func (c *Client) DownloadVolumeBackup(ctx context.Context, name, volume, historyID string) ([]byte, error)
- func (c *Client) DrainNode(ctx context.Context, id, targetNodeID string) (DrainNodeResponse, error)
- func (c *Client) DrillNodeCert(ctx context.Context, id string) (NodeCertDrill, error)
- func (c *Client) DryRunAppAbuse(ctx context.Context, app string, req AbuseDryRunRequest) (AbuseDryRun, error)
- func (c *Client) DryRunAppBudget(ctx context.Context, app string) (SpendDryRun, error)
- func (c *Client) DryRunCostBudget(ctx context.Context, id string) (SpendDryRun, error)
- func (c *Client) EditAppDomains(ctx context.Context, name string, req EditDomainsRequest) (EditDomainsResult, error)
- func (c *Client) EffectiveSessionPolicy(ctx context.Context) (EffectiveSessionPolicy, error)
- func (c *Client) EnableAppSleep(ctx context.Context, appName string, idleMinutes int, opts SleepEnableOptions) (AppSleepResource, error)
- func (c *Client) EnableErrorTracking(ctx context.Context, app string) (ErrorTrackingResource, error)
- func (c *Client) EnableHTTPS(ctx context.Context, req EnableHTTPSRequest) (HTTPSStatusResource, error)
- func (c *Client) EnablePITR(ctx context.Context, name string) error
- func (c *Client) EnablePlugin(ctx context.Context, name string) (Plugin, error)
- func (c *Client) EnableTracing(ctx context.Context, app string) (TracingResource, error)
- func (c *Client) EnqueueFunctionCall(ctx context.Context, name, method, path, body string) (QueuedFunctionCall, error)
- func (c *Client) EvaluateFeatureFlag(ctx context.Context, key, identifier string) (EvaluateFlagResource, error)
- func (c *Client) EvaluateOAuthSSO(ctx context.Context, provider string, req OAuthSSOEvaluateRequest) (OAuthSSOEvaluation, error)
- func (c *Client) ExchangeCIToken(ctx context.Context, app, idToken string) (CIToken, error)
- func (c *Client) ExecApp(ctx context.Context, name string, req ExecRequest) (ExecResponse, error)
- func (c *Client) ExpireAlertSilence(ctx context.Context, id string) (SilenceResource, error)
- func (c *Client) ExplainDatabaseQuery(ctx context.Context, name string, req DatabaseQueryRequest) (DatabaseQueryResult, error)
- func (c *Client) ExploreCosts(ctx context.Context, q CostExploreQuery) (CostExploration, error)
- func (c *Client) ExportAuditLog(ctx context.Context, from, to, format string) ([]byte, error)
- func (c *Client) ExportDNSZoneRecords(ctx context.Context, provider, zone, format string) ([]byte, error)
- func (c *Client) ExportDashboard(ctx context.Context, id string) (json.RawMessage, error)
- func (c *Client) ExportEnv(ctx context.Context, app, format, values string) ([]byte, error)
- func (c *Client) ExportEnvRevealed(ctx context.Context, app, format string, proof *StepUpProof) ([]byte, error)
- func (c *Client) ExportFormSubmissions(ctx context.Context, app, form string, f FormSubmissionFilter) ([]byte, error)
- func (c *Client) ExportIaC(ctx context.Context, project, app string, includeEnvValues bool) (iac.ExportResult, error)
- func (c *Client) ExportLoadBalancer(ctx context.Context, name, format string) (LoadBalancerArtifact, error)
- func (c *Client) ExtendPreviewEnvironment(ctx context.Context, appName string, prNumber, hours int) (PreviewEnvironmentResource, error)
- func (c *Client) FirewallEdgeAudit(ctx context.Context, limit int) ([]FirewallEdgeAuditEntry, error)
- func (c *Client) FirewallEdgeSettings(ctx context.Context) (FirewallEdgeSettings, error)
- func (c *Client) FirewallEdgeStatus(ctx context.Context, scope, rng string) (FirewallEdgeStatus, error)
- func (c *Client) FirewallEdgeTraffic(ctx context.Context, scope string) (FirewallEdgeTraffic, error)
- func (c *Client) FixCPHealth(ctx context.Context, fix string) (CPHealth, error)
- func (c *Client) FixEnv(ctx context.Context, name, kind, key string) (EnvCheckResource, error)
- func (c *Client) FixResilienceSnapshot(ctx context.Context) (OutageReport, error)
- func (c *Client) FreeDiskSpace(ctx context.Context) (FreeSpaceResult, error)
- func (c *Client) GeoIPLookup(ctx context.Context, ip string) (GeoIPLookupResource, error)
- func (c *Client) GetAIAssistantSettings(ctx context.Context) (AIAssistantSettingsResource, error)
- func (c *Client) GetAIChatSession(ctx context.Context, id string) (AIChatSessionResource, error)
- func (c *Client) GetAIControl(ctx context.Context) (AIControlResource, error)
- func (c *Client) GetAIUsage(ctx context.Context, days int) (AIUsageResource, error)
- func (c *Client) GetAccessReview(ctx context.Context, id string) (AccessReviewDetail, error)
- func (c *Client) GetAdvisorSummary(ctx context.Context) (AdvisorSummary, error)
- func (c *Client) GetApp(ctx context.Context, name string) (AppResource, error)
- func (c *Client) GetAppAbuse(ctx context.Context, app string) (AppAbuse, error)
- func (c *Client) GetAppAutoscale(ctx context.Context, app string) (AppAutoscale, error)
- func (c *Client) GetAppAutoscaleHistory(ctx context.Context, app string) (AppAutoscaleHistory, error)
- func (c *Client) GetAppBudget(ctx context.Context, app string) (AppBudget, error)
- func (c *Client) GetAppBudgetHistory(ctx context.Context, app string) (AppBudgetHistory, error)
- func (c *Client) GetAppBuildLimits(ctx context.Context, app string) (AppBuildLimits, error)
- func (c *Client) GetAppCache(ctx context.Context, name string) (AppCacheResource, error)
- func (c *Client) GetAppChanges(ctx context.Context, name string, until time.Time, window string) (*RecentChangesResource, error)
- func (c *Client) GetAppCostEstimate(ctx context.Context, name string) (CostEstimateResource, error)
- func (c *Client) GetAppEgressPolicy(ctx context.Context, name string) (AppEgressPolicyResource, error)
- func (c *Client) GetAppEnvironmentDomains(ctx context.Context, name string) (AppEnvironmentDomains, error)
- func (c *Client) GetAppExposure(ctx context.Context, name string) (AppExposureResource, error)
- func (c *Client) GetAppGitHubActions(ctx context.Context, name string) (AppGitHubActionsResource, error)
- func (c *Client) GetAppGroup(ctx context.Context, name string) (AppGroupResource, error)
- func (c *Client) GetAppHealth(ctx context.Context, name string) (AppHealthResource, error)
- func (c *Client) GetAppHealthScore(ctx context.Context, name string) (AppHealthScoreResource, error)
- func (c *Client) GetAppHookRuns(ctx context.Context, name string) (AppHookRunsResource, error)
- func (c *Client) GetAppImportSession(ctx context.Context, id string) (AppImportView, error)
- func (c *Client) GetAppIngressLimits(ctx context.Context, app string) (AppIngressLimits, error)
- func (c *Client) GetAppMaintenance(ctx context.Context, name string) (AppMaintenanceResource, error)
- func (c *Client) GetAppNetwork(ctx context.Context, name string) (NetworkResource, error)
- func (c *Client) GetAppResourceRecommendation(ctx context.Context, name string) (ResourceRecommendationResource, error)
- func (c *Client) GetAppSchedule(ctx context.Context, name string) (AppScheduleResource, error)
- func (c *Client) GetAppSleep(ctx context.Context, appName string) (AppSleepResource, error)
- func (c *Client) GetAppTimeline(ctx context.Context, name string, limit int, before string) (TimelineResponse, error)
- func (c *Client) GetAppTraffic(ctx context.Context, name, window string) (AppTrafficResource, error)
- func (c *Client) GetAppURLs(ctx context.Context, app string) (AppURLs, error)
- func (c *Client) GetAppVolumeMove(ctx context.Context, name, id string) (AppVolumeMoveResource, error)
- func (c *Client) GetAppWatch(ctx context.Context, appName string) (AppWatchResource, error)
- func (c *Client) GetAppsSummary(ctx context.Context, q AppListQuery) (AppsSummary, error)
- func (c *Client) GetArchivePolicy(ctx context.Context) (ArchivePolicy, error)
- func (c *Client) GetAttentionFeed(ctx context.Context) ([]AttentionFeedItem, error)
- func (c *Client) GetAuthEngineStatus(ctx context.Context) (AuthEngineStatusResource, error)
- func (c *Client) GetAutoRollback(ctx context.Context, appName string) (AutoRollbackSettingResource, error)
- func (c *Client) GetAutoRollbackSLOBurn(ctx context.Context, appName string) (AutoRollbackSLOBurnSettingResource, error)
- func (c *Client) GetBackupDrill(ctx context.Context, id string) (BackupDrillResource, error)
- func (c *Client) GetBackupTarget(ctx context.Context, id string) (BackupTargetResource, error)
- func (c *Client) GetBackupTargetEncryption(ctx context.Context, id string) (BackupTargetEncryptionResource, error)
- func (c *Client) GetBenchmark(ctx context.Context, id string) (BenchmarkRun, error)
- func (c *Client) GetBuild(ctx context.Context, id string) (BuildResource, error)
- func (c *Client) GetBuildCache(ctx context.Context, node string) (BuildCacheResource, error)
- func (c *Client) GetBuildCacheStats(ctx context.Context, app string) (BuildCacheStats, error)
- func (c *Client) GetBuildLimits(ctx context.Context) (BuildLimits, error)
- func (c *Client) GetBuildSpeed(ctx context.Context, app string) (BuildSpeed, error)
- func (c *Client) GetBuildStats(ctx context.Context, app string, limit int) (BuildStats, error)
- func (c *Client) GetCDNOverview(ctx context.Context, window string) (CDNOverview, error)
- func (c *Client) GetCIWorkflow(ctx context.Context, name string) (CIWorkflow, error)
- func (c *Client) GetCPHealth(ctx context.Context) (CPHealth, error)
- func (c *Client) GetCanary(ctx context.Context, appName string) (CanaryResource, error)
- func (c *Client) GetCancelSuperseded(ctx context.Context, appName string) (CancelSupersededResource, error)
- func (c *Client) GetCertificate(ctx context.Context, domain string, req GetCertRequest) (DomainCertStatus, error)
- func (c *Client) GetChangelog(ctx context.Context, limit int) (ChangelogResource, error)
- func (c *Client) GetChannelQuietHours(ctx context.Context, id string) (QuietHoursResource, error)
- func (c *Client) GetCleanup(ctx context.Context) (CleanupListResource, error)
- func (c *Client) GetCloudflareDNS(ctx context.Context) (CloudflareDNSResource, error)
- func (c *Client) GetCloudflareTunnel(ctx context.Context) (CloudflareTunnelResource, error)
- func (c *Client) GetCodeLoginSettings(ctx context.Context) (CodeLoginSettings, error)
- func (c *Client) GetComposeRevision(ctx context.Context, name string, revision int) (ComposeRevision, error)
- func (c *Client) GetComposeStack(ctx context.Context, name string) (ComposeStack, error)
- func (c *Client) GetControlPlaneDR(ctx context.Context) (ControlPlaneDR, error)
- func (c *Client) GetControlPlaneRestorePlan(ctx context.Context) (ControlPlaneRestorePlan, error)
- func (c *Client) GetDNSProvider(ctx context.Context, app string) (DNSProviderState, error)
- func (c *Client) GetDNSProviderPlugin(ctx context.Context) (DNSProviderPlugin, error)
- func (c *Client) GetDashboard(ctx context.Context, id string) (DashboardResource, error)
- func (c *Client) GetDashboardURL(ctx context.Context) (DashboardURLResource, error)
- func (c *Client) GetDatabase(ctx context.Context, name string) (DatabaseResource, error)
- func (c *Client) GetDatabaseDataCopy(ctx context.Context, name string) (DataCopyStatus, error)
- func (c *Client) GetDatabaseNetwork(ctx context.Context, name string) (DatabaseNetwork, error)
- func (c *Client) GetDatabasePasswordRotation(ctx context.Context, name string) (DatabasePasswordRotation, error)
- func (c *Client) GetDatabaseProvision(ctx context.Context, name string) (ProvisionAttemptResource, error)
- func (c *Client) GetDatabaseResourceRecommendation(ctx context.Context, name string) (ResourceRecommendationResource, error)
- func (c *Client) GetDatabaseSchema(ctx context.Context, name string) (DatabaseSchemaResource, error)
- func (c *Client) GetDatabaseStatus(ctx context.Context, name string) ([]ConditionResource, error)
- func (c *Client) GetDatabaseUpgrades(ctx context.Context, name string) (DBUpgradesResource, error)
- func (c *Client) GetDatabaseWho(ctx context.Context, name string) (DatabaseWho, error)
- func (c *Client) GetDeploy(ctx context.Context, name, deployID string) (DeployAttemptResource, error)
- func (c *Client) GetDeployApproval(ctx context.Context, id string) (DeployApprovalResource, error)
- func (c *Client) GetDeployFreeze(ctx context.Context, name string) (DeployFreezeResource, error)
- func (c *Client) GetDeployGate(ctx context.Context, appName, deployID string) (DeployGateResource, error)
- func (c *Client) GetDeploySafety(ctx context.Context, appName string) (DeploySafetyResource, error)
- func (c *Client) GetDeployStatus(ctx context.Context, name string) ([]ConditionResource, error)
- func (c *Client) GetDeploymentSecretScan(ctx context.Context, name, id string) (SecretScanRun, error)
- func (c *Client) GetDeploymentsSummary(ctx context.Context, window string) (DeploymentSummary, error)
- func (c *Client) GetDiskResilience(ctx context.Context) (DiskResilience, error)
- func (c *Client) GetDockerGuard(ctx context.Context) (DockerGuardResource, error)
- func (c *Client) GetDockerHealth(ctx context.Context) (DockerHealthResource, error)
- func (c *Client) GetDomainAuthGate(ctx context.Context, name, domain string) (DomainAuthGateResource, error)
- func (c *Client) GetDomainAutomation(ctx context.Context) (DomainAutomationResource, error)
- func (c *Client) GetDomainBasicAuth(ctx context.Context, name, domain string) (DomainBasicAuthResource, error)
- func (c *Client) GetDomainCache(ctx context.Context, name, domain string) (CachePolicyResource, error)
- func (c *Client) GetDomainCacheStats(ctx context.Context, name, domain string) (CacheStats, error)
- func (c *Client) GetDomainErrorPages(ctx context.Context, name, domain string) (DomainErrorPagesResource, error)
- func (c *Client) GetDomainForwarders(ctx context.Context, name, domain string) (ForwardersPolicyResource, error)
- func (c *Client) GetDomainGeo(ctx context.Context, name, domain string) (GeoPolicyResource, error)
- func (c *Client) GetDomainHeaders(ctx context.Context, name, domain string) (HeadersPolicyResource, error)
- func (c *Client) GetDomainMaintenance(ctx context.Context, name, domain string) (DomainMaintenanceResource, error)
- func (c *Client) GetDomainPolicies(ctx context.Context, name, domain string) (DomainPoliciesResource, error)
- func (c *Client) GetDomainPorts(ctx context.Context, name, domain string) (DomainPortsResource, error)
- func (c *Client) GetDomainRedirect(ctx context.Context, name, domain string) (DomainRedirectResource, error)
- func (c *Client) GetDomainRedirects(ctx context.Context, name, domain string) (DomainRedirectsResource, error)
- func (c *Client) GetDomainSearchVisibility(ctx context.Context, name, domain string) (DomainSearchVisibilityResource, error)
- func (c *Client) GetDomainShield(ctx context.Context, name, domain string) (ShieldPolicyResource, error)
- func (c *Client) GetDomainTLSCert(ctx context.Context, name, domain string) (DomainTLSCertResource, error)
- func (c *Client) GetDomainWAF(ctx context.Context, name, domain string) (DomainWAFResource, error)
- func (c *Client) GetEdgeSettings(ctx context.Context) (EdgeSettings, error)
- func (c *Client) GetEffectiveConfig(ctx context.Context, name, contextName, branch string) (EffectiveConfig, error)
- func (c *Client) GetEmailBranding(ctx context.Context) (EmailBranding, error)
- func (c *Client) GetEmailProvider(ctx context.Context, id string) (EmailProvider, error)
- func (c *Client) GetEmailSettings(ctx context.Context) (EmailSettingsResource, error)
- func (c *Client) GetEmailStatus(ctx context.Context) (EmailStatus, error)
- func (c *Client) GetEncryptionKeys(ctx context.Context) (EncryptionKeysStatus, error)
- func (c *Client) GetEnvSettings(ctx context.Context, app string) (EnvSettings, error)
- func (c *Client) GetEnvironmentEnv(ctx context.Context, id string) (map[string]string, error)
- func (c *Client) GetError(ctx context.Context, app, fingerprint string) (ErrorIssueDetail, error)
- func (c *Client) GetErrorTracking(ctx context.Context, app string) (ErrorTrackingResource, error)
- func (c *Client) GetEvidencePack(ctx context.Context, id string) (EvidencePackResource, error)
- func (c *Client) GetExecAccess(ctx context.Context, appName string) (ExecAccessResource, error)
- func (c *Client) GetExportDestination(ctx context.Context, id string) (ExportDestinationResource, error)
- func (c *Client) GetExposure(ctx context.Context, node string, probe bool) (ExposureReport, error)
- func (c *Client) GetFailureContext(ctx context.Context, name string) (FailureContextResource, error)
- func (c *Client) GetFeatureFlag(ctx context.Context, name, id string) (FeatureFlagResource, error)
- func (c *Client) GetFleetResourceUsage(ctx context.Context) (FleetResourceUsageResource, error)
- func (c *Client) GetFormFields(ctx context.Context, app, form string) (json.RawMessage, error)
- func (c *Client) GetFramework(ctx context.Context, id string) (frameworks.Preset, error)
- func (c *Client) GetFrameworkDockerfile(ctx context.Context, id string) (string, error)
- func (c *Client) GetFunctionKV(ctx context.Context, name, key string) (FunctionKVValue, error)
- func (c *Client) GetFunctionSettings(ctx context.Context, name string) (FunctionSettings, error)
- func (c *Client) GetFunctionTriggers(ctx context.Context, name string) (FunctionTriggers, error)
- func (c *Client) GetGitHubAppStatus(ctx context.Context) (GitHubAppStatusResource, error)
- func (c *Client) GetGitRemote(ctx context.Context, name string) (GitRemote, error)
- func (c *Client) GetGitSource(ctx context.Context, name string) (GitSourceResource, error)
- func (c *Client) GetGlobalDeployFreeze(ctx context.Context) (DeployFreezeResource, error)
- func (c *Client) GetGoLive(ctx context.Context, app, domain string) (GoLiveResult, error)
- func (c *Client) GetGoogleCloudDNS(ctx context.Context) (GoogleCloudDNSResource, error)
- func (c *Client) GetHSTS(ctx context.Context) (HSTSStatus, error)
- func (c *Client) GetHTTPSStatus(ctx context.Context) (HTTPSStatusResource, error)
- func (c *Client) GetIdleFootprint(ctx context.Context) (footprint.Assessment, error)
- func (c *Client) GetImageAutoUpdate(ctx context.Context, appName string) (ImageAutoUpdateResource, error)
- func (c *Client) GetImageLayers(ctx context.Context, node, id string) (ImageLayersResource, error)
- func (c *Client) GetImageStatus(ctx context.Context, appName string) (ImageStatusResource, error)
- func (c *Client) GetInboxPrefs(ctx context.Context) (InboxPrefs, error)
- func (c *Client) GetInboxState(ctx context.Context) (InboxState, error)
- func (c *Client) GetIngressConnectivity(ctx context.Context) (IngressConnectivity, error)
- func (c *Client) GetIngressSettings(ctx context.Context) (IngressSettingsResource, error)
- func (c *Client) GetIntegrity(ctx context.Context) (Integrity, error)
- func (c *Client) GetJanitor(ctx context.Context) (JanitorStatus, error)
- func (c *Client) GetJob(ctx context.Context, app, id string) (ScheduledTaskResource, error)
- func (c *Client) GetJobRun(ctx context.Context, app, id, runID string) (JobRunResource, error)
- func (c *Client) GetLoadBalancer(ctx context.Context, name string) (LoadBalancerResource, error)
- func (c *Client) GetLoadBalancerHistory(ctx context.Context, name string, limit int) (LoadBalancerHistory, error)
- func (c *Client) GetLoadBalancerStatus(ctx context.Context, name string) (LoadBalancerStatus, error)
- func (c *Client) GetLocalModelCatalog(ctx context.Context, nodeID string) (LocalModelCatalog, error)
- func (c *Client) GetLogBudget(ctx context.Context, app string) (LogBudget, error)
- func (c *Client) GetLogDrain(ctx context.Context, name string) (LogDrainResource, error)
- func (c *Client) GetLogPipeline(ctx context.Context, app string) (LogPipeline, error)
- func (c *Client) GetLogSignatures(ctx context.Context, app string, s LogSignatureQuery) (LogSignatures, error)
- func (c *Client) GetLogUsage(ctx context.Context) (LogUsage, error)
- func (c *Client) GetMailBroadcast(ctx context.Context, id string) (MailBroadcast, error)
- func (c *Client) GetMailGroup(ctx context.Context, id string) (MailGroupDetail, error)
- func (c *Client) GetMailTemplate(ctx context.Context, key string) (MailTemplate, error)
- func (c *Client) GetMeshConnectivity(ctx context.Context) (MeshConnectivity, error)
- func (c *Client) GetMeshSettings(ctx context.Context) (MeshSettings, error)
- func (c *Client) GetMeshStatus(ctx context.Context) (MeshStatusResource, error)
- func (c *Client) GetMigrationAgentSession(ctx context.Context, id string) (MigrationAgentDetail, error)
- func (c *Client) GetMigrationChecklist(ctx context.Context, app string) (MigrationChecklist, error)
- func (c *Client) GetMigrationSession(ctx context.Context, id string) (HubSession, error)
- func (c *Client) GetModel(ctx context.Context, name string) (ModelResource, error)
- func (c *Client) GetModelDetail(ctx context.Context, name string) (ModelDetail, error)
- func (c *Client) GetModelEngineMetrics(ctx context.Context, name string, since time.Duration) (EngineMetricsReport, error)
- func (c *Client) GetModelFit(ctx context.Context, name string) (ModelFitReport, error)
- func (c *Client) GetModelUsage(ctx context.Context, name string, since time.Duration) (ModelUsageReport, error)
- func (c *Client) GetNetworkProxyStatus(ctx context.Context) (NetworkProxyResource, error)
- func (c *Client) GetNetworkShare(ctx context.Context, id string) (NetworkShareResource, error)
- func (c *Client) GetNetworkTopology(ctx context.Context) (NetworkTopologyResource, error)
- func (c *Client) GetNode(ctx context.Context, id string) (NodeResource, error)
- func (c *Client) GetNodeAllocations(ctx context.Context) (NodeAllocations, error)
- func (c *Client) GetNodeCapacity(ctx context.Context, id string) (NodeCapacityResource, error)
- func (c *Client) GetNodeCapacityForecast(ctx context.Context, id string) (NodeCapacityForecastResource, error)
- func (c *Client) GetNodeDomains(ctx context.Context) (NodeDomains, error)
- func (c *Client) GetNodeDrain(ctx context.Context, id string) (NodeDrainResource, error)
- func (c *Client) GetNodeFailure(ctx context.Context, id string) (NodeFailureStatus, error)
- func (c *Client) GetNodeHealth(ctx context.Context, id string) ([]ConditionResource, error)
- func (c *Client) GetNodeLabels(ctx context.Context, id string) (NodeLabels, error)
- func (c *Client) GetNodeMove(ctx context.Context, id string) (NodeMoveResource, error)
- func (c *Client) GetNodeOnboarding(ctx context.Context, id string) (NodeOnboarding, error)
- func (c *Client) GetNodePatchStatus(ctx context.Context, id string) (NodePatchStatusResource, error)
- func (c *Client) GetNodeProvision(ctx context.Context, id string) (NodeProvisionResource, error)
- func (c *Client) GetNodeTrust(ctx context.Context, id string) (NodeTrust, error)
- func (c *Client) GetOAuthSSOPolicy(ctx context.Context, provider string) (OAuthSSOPolicy, error)
- func (c *Client) GetOAuthSettings(ctx context.Context) ([]OAuthProviderSettingsResource, error)
- func (c *Client) GetOnboardingState(ctx context.Context) (OnboardingStateResource, error)
- func (c *Client) GetOpenAPISpec(ctx context.Context) (OpenAPISpecResource, error)
- func (c *Client) GetOrganization(ctx context.Context, id string) (OrganizationResource, error)
- func (c *Client) GetOrganizationEnv(ctx context.Context, id string) (map[string]string, error)
- func (c *Client) GetPITRStatus(ctx context.Context, name string) (PITRStatusResource, error)
- func (c *Client) GetPendingChanges(ctx context.Context, name string) (PendingChanges, error)
- func (c *Client) GetPipeline(ctx context.Context, app, name string) (PipelineResource, error)
- func (c *Client) GetPipelineInsights(ctx context.Context, app, name string) (PipelineInsights, error)
- func (c *Client) GetPipelineOIDCInfo(ctx context.Context) (PipelineOIDCResource, error)
- func (c *Client) GetPipelineRun(ctx context.Context, app, id string) (PipelineRunResource, error)
- func (c *Client) GetPipelineSync(ctx context.Context, app string) (PipelineSyncStatus, error)
- func (c *Client) GetPipelineWebhook(ctx context.Context, app, name string) (PipelineWebhook, error)
- func (c *Client) GetPlacement(ctx context.Context, kind, name string) (PlacementResource, error)
- func (c *Client) GetPlacementDecision(ctx context.Context, kind, name string) (PlacementDecisionView, error)
- func (c *Client) GetPlatformUpgradePolicy(ctx context.Context) (DBUpgradePolicy, error)
- func (c *Client) GetPlugin(ctx context.Context, name string) (Plugin, error)
- func (c *Client) GetPolicy(ctx context.Context, id string) (PolicyResource, error)
- func (c *Client) GetPreferences(ctx context.Context) (Preferences, error)
- func (c *Client) GetPreview(ctx context.Context, name string) (PreviewStatus, error)
- func (c *Client) GetPreviewPolicy(ctx context.Context, appName string) (PreviewPolicyResource, error)
- func (c *Client) GetPrivateNetworkMap(ctx context.Context) (PrivateNetworkMap, error)
- func (c *Client) GetProject(ctx context.Context, id string) (ProjectResource, error)
- func (c *Client) GetProjectEnv(ctx context.Context, id string) (map[string]string, error)
- func (c *Client) GetProjectTopology(ctx context.Context, id string) (ProjectTopologyResource, error)
- func (c *Client) GetProxyIntegration(ctx context.Context) (ProxyIntegration, error)
- func (c *Client) GetPublishLock(ctx context.Context, appName string) (PublishLockResource, error)
- func (c *Client) GetQuota(ctx context.Context, scope, id string) (QuotaResource, error)
- func (c *Client) GetRegistryCredential(ctx context.Context, id string) (RegistryCredentialResource, error)
- func (c *Client) GetRegistryCredentialUsage(ctx context.Context, id string) (RegistryCredentialUsage, error)
- func (c *Client) GetRegistrySettings(ctx context.Context) (RegistrySettingsResource, error)
- func (c *Client) GetReleaseHistory(ctx context.Context, channel string) (ReleaseHistory, error)
- func (c *Client) GetResilience(ctx context.Context) (OutageReport, error)
- func (c *Client) GetResilienceReport(ctx context.Context) (ResilienceReport, error)
- func (c *Client) GetReverseProxyGuide(ctx context.Context, domain, proxy, app string, verify bool) (ReverseProxyGuide, error)
- func (c *Client) GetRollbackPlan(ctx context.Context, version string) (RollbackPlan, error)
- func (c *Client) GetRoute53DNS(ctx context.Context) (Route53DNSResource, error)
- func (c *Client) GetRuntimeSetting(ctx context.Context, key string) (RuntimeSettingResource, error)
- func (c *Client) GetRuntimeSettings(ctx context.Context) (RuntimeSettingsListResource, error)
- func (c *Client) GetSAMLConnection(ctx context.Context, id string) (SAMLConnection, error)
- func (c *Client) GetSBOM(ctx context.Context, name, id string) (SBOMSummary, error)
- func (c *Client) GetSLOPreview(ctx context.Context, name string, cfg AlertSLOConfig) (*SLOPreviewResource, error)
- func (c *Client) GetSSHNodeProvision(ctx context.Context, id string) (SSHNodeProvisionResource, error)
- func (c *Client) GetSSOSettings(ctx context.Context) (SSOSettings, error)
- func (c *Client) GetScheduledTask(ctx context.Context, name, id string) (ScheduledTaskResource, error)
- func (c *Client) GetSecretBinding(ctx context.Context) (SecretBindingStatus, error)
- func (c *Client) GetSecretScan(ctx context.Context, name string) (SecretScanSettings, error)
- func (c *Client) GetSecurityPolicy(ctx context.Context) (SecurityPolicy, error)
- func (c *Client) GetSecurityPosture(ctx context.Context) (SecurityPosture, error)
- func (c *Client) GetSecurityReachability(ctx context.Context, refresh bool) (ReachReport, error)
- func (c *Client) GetSelfUpgradePlan(ctx context.Context, target string) (SelfUpgradePlan, error)
- func (c *Client) GetSelfUpgradeStatus(ctx context.Context) (SelfUpgradeStatus, error)
- func (c *Client) GetServerAddress(ctx context.Context, domain string) (ServerAddress, error)
- func (c *Client) GetServerProfile(ctx context.Context) (ServerProfile, error)
- func (c *Client) GetServerReadiness(ctx context.Context, domain string) (ServerReadiness, error)
- func (c *Client) GetServiceTemplate(ctx context.Context, id string) (ServiceTemplateDetail, error)
- func (c *Client) GetSession(ctx context.Context) (SessionInfoResource, error)
- func (c *Client) GetSetupGuide(ctx context.Context) (SetupGuideResource, error)
- func (c *Client) GetSetupStatus(ctx context.Context) (SetupStatusResource, error)
- func (c *Client) GetSleepHistory(ctx context.Context, appName, since string, limit int) (SleepHistory, error)
- func (c *Client) GetSplit(ctx context.Context, appName string) (SplitTest, error)
- func (c *Client) GetStaticRoutes(ctx context.Context, name string) (StaticRoutesResource, error)
- func (c *Client) GetStatusPage(ctx context.Context) (StatusPageSettings, error)
- func (c *Client) GetSupplyChain(ctx context.Context, name string) (SupplyChainSettings, error)
- func (c *Client) GetSystemCache(ctx context.Context) (SystemCacheResource, error)
- func (c *Client) GetSystemDoctor(ctx context.Context) (SystemDoctorResource, error)
- func (c *Client) GetSystemNetworks(ctx context.Context) (SystemNetworks, error)
- func (c *Client) GetSystemRestart(ctx context.Context) (SystemRestart, error)
- func (c *Client) GetSystemStatus(ctx context.Context) (SystemStatusResource, error)
- func (c *Client) GetTeam(ctx context.Context, id string) (TeamResource, error)
- func (c *Client) GetTrace(ctx context.Context, app, traceID string) ([]TraceSpan, error)
- func (c *Client) GetTracing(ctx context.Context, app string) (TracingResource, error)
- func (c *Client) GetTrafficExportSink(ctx context.Context, id string) (TrafficExportSink, error)
- func (c *Client) GetTrafficExportStatus(ctx context.Context) (TrafficExportStatus, error)
- func (c *Client) GetUpdatePreflight(ctx context.Context) (UpdatePreflight, error)
- func (c *Client) GetUpdateSettings(ctx context.Context) (UpdateSettingsResource, error)
- func (c *Client) GetUpdates(ctx context.Context) (UpdatesResource, error)
- func (c *Client) GetUpgradeHistory(ctx context.Context) (UpgradeHistory, error)
- func (c *Client) GetUpgradePolicy(ctx context.Context) (UpgradePolicy, error)
- func (c *Client) GetUpgradeSchedule(ctx context.Context) (UpgradeScheduleStatus, error)
- func (c *Client) GetUsageReport(ctx context.Context, q UsageReportQuery) (UsageReport, error)
- func (c *Client) GetUsageSettings(ctx context.Context) (UsageSettings, error)
- func (c *Client) GetUserEnvironmentGrants(ctx context.Context, userID string) (EnvironmentGrants, error)
- func (c *Client) GetVault(ctx context.Context) (VaultSettingsResource, error)
- func (c *Client) GetVolumeBackupPolicy(ctx context.Context, name, volume string) (VolumeBackupPolicyResource, error)
- func (c *Client) GetVolumeBackupSchedule(ctx context.Context, name, volume string) (VolumeBackupScheduleResource, error)
- func (c *Client) GetVulnerabilities(ctx context.Context, name, id string) (VulnReport, error)
- func (c *Client) GetZones(ctx context.Context) (Zones, error)
- func (c *Client) GitSourceAffected(ctx context.Context, name, branch string, files []string) (GitSourceAffected, error)
- func (c *Client) GitSourceCommits(ctx context.Context, name, branch string, refresh bool) (GitSourceCommits, error)
- func (c *Client) GoLiveChecklist(ctx context.Context, app, domain string) (GoLiveChecklist, error)
- func (c *Client) GrantDatabaseAccess(ctx context.Context, name string, req DatabaseGrantRequest) (DatabaseGrant, error)
- func (c *Client) HostFirewallStatus(ctx context.Context) (HostFirewallResource, error)
- func (c *Client) IAMEffectivePermissions(ctx context.Context, principalType, principalID string) (IAMEffective, error)
- func (c *Client) IAMSuggestions(ctx context.Context, days int) (IAMSuggestions, error)
- func (c *Client) ImportDNSZoneRecords(ctx context.Context, provider, zone string, req DNSImportRequest) (DNSImportResult, error)
- func (c *Client) ImportDashboard(ctx context.Context, doc json.RawMessage, scope, project string) (DashboardResource, error)
- func (c *Client) ImportMigration(ctx context.Context, req MigrationSourceRequest) (MigrationPlanReport, error)
- func (c *Client) ImportSAMLMetadata(ctx context.Context, id string, req SAMLMetadataImport) (SAMLConnection, error)
- func (c *Client) InboxUnreadCount(ctx context.Context) (int, error)
- func (c *Client) InspectPlugin(ctx context.Context, in InstallPluginInput) (PluginPreview, error)
- func (c *Client) InstallMarketplacePlugin(ctx context.Context, in MarketplaceInstallInput) (MarketplaceInstallResult, error)
- func (c *Client) InstallPlugin(ctx context.Context, in InstallPluginInput) (Plugin, error)
- func (c *Client) InstallProxy(ctx context.Context, req ProxyInstallRequest) (ProxyInstallResult, error)
- func (c *Client) InstallTemplate(ctx context.Context, id string, req TemplateInstallRequest) (ComposeStackDeploy, error)
- func (c *Client) InvestigateApp(ctx context.Context, name string, from, to time.Time) (InvestigationResource, error)
- func (c *Client) InvokeFunction(ctx context.Context, name string, req FunctionInvokeRequest) (FunctionInvokeResult, error)
- func (c *Client) IssueDatabaseTemp(ctx context.Context, name, preset string, ttlMinutes int) (DatabaseTempIssued, error)
- func (c *Client) IssueGitRemote(ctx context.Context, name string) (GitRemote, error)
- func (c *Client) KeepTrialApp(ctx context.Context, name string) (KeepTrialResult, error)
- func (c *Client) LatestMigrationVerify(ctx context.Context) (MigrationVerifyReport, error)
- func (c *Client) LiftFirewallEdgeBan(ctx context.Context, ip string) error
- func (c *Client) LintDockerfile(ctx context.Context, dockerfile string, hasDockerignore bool) (DockerLintResource, error)
- func (c *Client) LintStaticRoutes(ctx context.Context, name string, req StaticRoutesLintRequest) (StaticRoutesLintResource, error)
- func (c *Client) ListAIChatSessions(ctx context.Context) ([]AIChatSessionSummaryResource, error)
- func (c *Client) ListAIProviderModels(ctx context.Context, id string) ([]AIModelResource, error)
- func (c *Client) ListAIProviders(ctx context.Context) ([]AIProviderResource, error)
- func (c *Client) ListAccess(ctx context.Context, app string, o AccessOptions) ([]AccessRecord, error)
- func (c *Client) ListAccessReviews(ctx context.Context) ([]AccessReviewResource, error)
- func (c *Client) ListAdvisorFindings(ctx context.Context, q AdvisorFindingQuery) (AdvisorFindings, error)
- func (c *Client) ListAlertHistory(ctx context.Context, q AlertHistoryQuery) ([]AlertHistoryEntry, error)
- func (c *Client) ListAlertRules(ctx context.Context, name string) ([]AlertRuleResource, error)
- func (c *Client) ListAlertSilences(ctx context.Context, includeExpired bool) ([]SilenceResource, error)
- func (c *Client) ListAlertTemplates(ctx context.Context) ([]AlertTemplateProfile, error)
- func (c *Client) ListAllBackups(ctx context.Context, opts ListBackupsOptions) ([]BackupHistoryResource, error)
- func (c *Client) ListAllEnvironments(ctx context.Context) ([]GlobalEnvironmentResource, error)
- func (c *Client) ListAllPipelineRuns(ctx context.Context, q PipelineRunsQuery) (PipelineRunRowsPage, error)
- func (c *Client) ListAllPreviews(ctx context.Context) (PreviewsOverview, error)
- func (c *Client) ListAllSecretRotation(ctx context.Context) ([]SecretRotationPolicyResource, error)
- func (c *Client) ListAppBranchEnv(ctx context.Context, name string) ([]AppBranchEnvOverride, error)
- func (c *Client) ListAppBudgets(ctx context.Context) (AppBudgets, error)
- func (c *Client) ListAppCachePurges(ctx context.Context, name string) (CachePurgesResource, error)
- func (c *Client) ListAppConnections(ctx context.Context, name string) ([]AppConnectionResource, error)
- func (c *Client) ListAppContexts(ctx context.Context, name string) ([]AppContextConfig, error)
- func (c *Client) ListAppEntries(ctx context.Context) ([]AppListEntry, error)
- func (c *Client) ListAppImages(ctx context.Context, name string) ([]ImageResource, error)
- func (c *Client) ListAppImportSessions(ctx context.Context) ([]AppImportView, error)
- func (c *Client) ListAppIntegrations(ctx context.Context, name string) ([]AppIntegrationResource, error)
- func (c *Client) ListAppMetricsSummary(ctx context.Context, names []string) ([]AppMetricsSummary, error)
- func (c *Client) ListAppResourceUsage(ctx context.Context) ([]AppResourceUsageResource, error)
- func (c *Client) ListAppScheduleHistory(ctx context.Context, name string, limit int) ([]AppScheduleHistoryEntry, error)
- func (c *Client) ListAppStatuses(ctx context.Context) ([]AppStatusEntry, error)
- func (c *Client) ListAppStreams(ctx context.Context, name string) ([]AppStreamResource, error)
- func (c *Client) ListAppTags(ctx context.Context, name string) ([]TagResource, error)
- func (c *Client) ListAppVolumeMoves(ctx context.Context, name string) ([]AppVolumeMoveResource, error)
- func (c *Client) ListApps(ctx context.Context) ([]AppResource, error)
- func (c *Client) ListAppsByTag(ctx context.Context, id string) ([]TagAppResource, error)
- func (c *Client) ListAppsFiltered(ctx context.Context, q AppListQuery) ([]AppResource, error)
- func (c *Client) ListAppsInEnvironment(ctx context.Context, environment string) ([]AppResource, error)
- func (c *Client) ListAppsPage(ctx context.Context, opts ListAppsOptions) (AppsPage, error)
- func (c *Client) ListArchives(ctx context.Context) (ArchiveList, error)
- func (c *Client) ListAuditLog(ctx context.Context, opts ListAuditLogOptions) ([]AuditLogEntryResource, error)
- func (c *Client) ListAuthGateEvents(ctx context.Context, name, domain, since string) (AuthGateEventsResponse, error)
- func (c *Client) ListAutomationRuns(ctx context.Context, limit int) ([]AutomationRun, error)
- func (c *Client) ListBackupDrills(ctx context.Context, service, volume, database string, limit int) ([]BackupDrillResource, error)
- func (c *Client) ListBackupTargets(ctx context.Context) ([]BackupTargetResource, error)
- func (c *Client) ListBackupVerifications(ctx context.Context, name, historyID string) ([]BackupVerificationResource, error)
- func (c *Client) ListBackups(ctx context.Context, name string, opts ListBackupsOptions) ([]BackupHistoryResource, error)
- func (c *Client) ListBaseBackups(ctx context.Context, name string) ([]BaseBackupHistoryResource, error)
- func (c *Client) ListBenchmarks(ctx context.Context, limit int) (BenchmarkList, error)
- func (c *Client) ListBetaFeatures(ctx context.Context) ([]BetaFeature, error)
- func (c *Client) ListBoundEnv(ctx context.Context, app string) ([]BoundEnvEntry, error)
- func (c *Client) ListBranchDeploys(ctx context.Context, name string) (BranchDeploys, error)
- func (c *Client) ListBucketObjects(ctx context.Context, id, prefix, token string) (BucketObjects, error)
- func (c *Client) ListBuildCache(ctx context.Context) ([]BuildCacheSetting, error)
- func (c *Client) ListBuildHooks(ctx context.Context, appName string) ([]BuildHookResource, error)
- func (c *Client) ListBuilds(ctx context.Context, app, status string, limit int) (BuildListResource, error)
- func (c *Client) ListCITrusts(ctx context.Context, name string) ([]CITrust, error)
- func (c *Client) ListCertificates(ctx context.Context) ([]CertificateResource, error)
- func (c *Client) ListCleanupRuns(ctx context.Context, q CleanupRunsQuery) (CleanupRunsPage, error)
- func (c *Client) ListCloneRestores(ctx context.Context, name string) ([]CloneRestoreResource, error)
- func (c *Client) ListComposeRevisions(ctx context.Context, name string) ([]ComposeRevision, error)
- func (c *Client) ListConnectableDatabases(ctx context.Context, name string) ([]ConnectableDatabaseResource, error)
- func (c *Client) ListConsoleResources(ctx context.Context, q ConsoleQuery) (ConsoleList, error)
- func (c *Client) ListConsoleViews(ctx context.Context) ([]ConsoleView, error)
- func (c *Client) ListContainers(ctx context.Context) ([]ContainerResource, error)
- func (c *Client) ListControlPlaneBackups(ctx context.Context) ([]ControlPlaneBackup, error)
- func (c *Client) ListControlPlaneOffboxBackups(ctx context.Context) ([]ControlPlaneOffboxBackup, error)
- func (c *Client) ListCostBudgets(ctx context.Context) (CostBudgets, error)
- func (c *Client) ListCustomTemplates(ctx context.Context) ([]CustomTemplateListItem, error)
- func (c *Client) ListDNSHealthChecks(ctx context.Context) ([]DNSHealthCheck, error)
- func (c *Client) ListDNSRecords(ctx context.Context, name, domain string) (DNSRecordsResponse, error)
- func (c *Client) ListDNSZoneRecords(ctx context.Context, provider, zone, typ, query string) (DNSRecordsList, error)
- func (c *Client) ListDNSZones(ctx context.Context, provider string) (DNSZonesList, error)
- func (c *Client) ListDashboards(ctx context.Context, project string) ([]DashboardResource, error)
- func (c *Client) ListDatabaseDataCopies(ctx context.Context) ([]DataCopyStatus, error)
- func (c *Client) ListDatabaseEngines(ctx context.Context) ([]DatabaseEngineResource, error)
- func (c *Client) ListDatabaseLinks(ctx context.Context, database string) ([]DatabaseLink, error)
- func (c *Client) ListDatabaseTemp(ctx context.Context, name string) (DatabaseTempList, error)
- func (c *Client) ListDatabaseUsers(ctx context.Context, name string) ([]DatabaseUser, error)
- func (c *Client) ListDatabases(ctx context.Context) ([]DatabaseResource, error)
- func (c *Client) ListDatabasesInEnvironment(ctx context.Context, environment string) ([]DatabaseResource, error)
- func (c *Client) ListDefaultAlerts(ctx context.Context) ([]DefaultAlert, error)
- func (c *Client) ListDeployApprovals(ctx context.Context, status, service string) ([]DeployApprovalResource, error)
- func (c *Client) ListDeployAttempts(ctx context.Context, name string) ([]DeployAttemptResource, error)
- func (c *Client) ListDeployAttemptsFiltered(ctx context.Context, name string, f DeployAttemptFilter) ([]DeployAttemptResource, error)
- func (c *Client) ListDeployNotifyTargets(ctx context.Context, name string) ([]DeployNotifyTargetResource, error)
- func (c *Client) ListDeployPolicies(ctx context.Context) ([]DeployPolicy, error)
- func (c *Client) ListDeployments(ctx context.Context, opts DeploymentListOptions) (DeploymentList, error)
- func (c *Client) ListDeviceActivity(ctx context.Context) ([]DeviceActivity, error)
- func (c *Client) ListDomains(ctx context.Context) ([]DomainResource, error)
- func (c *Client) ListEmailDeliveries(ctx context.Context, q EmailDeliveryQuery) (EmailDeliveryList, error)
- func (c *Client) ListEmailProviders(ctx context.Context) (EmailProviderList, error)
- func (c *Client) ListEnvHistory(ctx context.Context, name string, limit int) ([]EnvChangeResource, error)
- func (c *Client) ListEnvironments(ctx context.Context, projectID string) ([]EnvironmentResource, error)
- func (c *Client) ListErrors(ctx context.Context, app string, o ErrorListOptions) ([]ErrorIssue, error)
- func (c *Client) ListEventWebhookDeliveries(ctx context.Context, id string) ([]EventDeliveryResource, error)
- func (c *Client) ListEventWebhooks(ctx context.Context) ([]EventWebhookResource, error)
- func (c *Client) ListEvidencePacks(ctx context.Context) ([]EvidencePackResource, error)
- func (c *Client) ListExportDestinations(ctx context.Context) ([]ExportDestinationResource, error)
- func (c *Client) ListExternalDatabaseCandidates(ctx context.Context, nodeID string) ([]ExternalDatabaseCandidate, error)
- func (c *Client) ListExternalDatabases(ctx context.Context) ([]ExternalDatabase, error)
- func (c *Client) ListFailedDeploys(ctx context.Context, since string) ([]FailedDeployResource, error)
- func (c *Client) ListFeatureFlags(ctx context.Context, name string) ([]FeatureFlagResource, error)
- func (c *Client) ListFirewallEdgeBans(ctx context.Context) ([]FirewallEdgeBan, error)
- func (c *Client) ListFirewallEdgeRules(ctx context.Context) ([]FirewallEdgeRule, error)
- func (c *Client) ListFirewallRules(ctx context.Context) ([]FirewallRuleResource, error)
- func (c *Client) ListFixes(ctx context.Context, subject string, all bool) ([]Fix, error)
- func (c *Client) ListFleetMaintenance(ctx context.Context) (FleetMaintenanceResource, error)
- func (c *Client) ListFormSubmissions(ctx context.Context, app, form string, f FormSubmissionFilter) (FormSubmissionsPage, error)
- func (c *Client) ListForms(ctx context.Context, app string) (FormsList, error)
- func (c *Client) ListFrameworks(ctx context.Context) ([]frameworks.Preset, error)
- func (c *Client) ListFunctionInvocations(ctx context.Context, name string, limit int) (FunctionInvocations, error)
- func (c *Client) ListFunctionKV(ctx context.Context, name, prefix string, limit int) (FunctionKVList, error)
- func (c *Client) ListFunctionRoutes(ctx context.Context, name string) (FunctionRoutes, error)
- func (c *Client) ListFunctionRuntimes(ctx context.Context) (FunctionRuntimes, error)
- func (c *Client) ListFunctionVersions(ctx context.Context, name string) ([]FunctionVersion, error)
- func (c *Client) ListFunctions(ctx context.Context, window string) (FunctionsList, error)
- func (c *Client) ListGPUNodes(ctx context.Context) ([]GPUNodeResource, error)
- func (c *Client) ListGitConnectionBranches(ctx context.Context, id, repo string) ([]GitAppBranchResource, error)
- func (c *Client) ListGitConnections(ctx context.Context, provider string) ([]GitProviderConnectionResource, error)
- func (c *Client) ListGitHubAppBranches(ctx context.Context, owner, repo string) ([]GitAppBranchResource, error)
- func (c *Client) ListGitHubAppInstallations(ctx context.Context) (GitHubAppInstallationListResource, error)
- func (c *Client) ListGitHubAppRepos(ctx context.Context) (GitHubAppRepoListResource, error)
- func (c *Client) ListGitProviders(ctx context.Context) ([]GitProviderResource, error)
- func (c *Client) ListGitRepos(ctx context.Context, p GitRepoListParams) (GitRepoListResource, error)
- func (c *Client) ListImages(ctx context.Context, node string, keepPerApp int) (ImageListResource, error)
- func (c *Client) ListInbox(ctx context.Context, unreadOnly bool, limit int) ([]InboxItem, error)
- func (c *Client) ListIntegrationCatalog(ctx context.Context) ([]IntegrationCatalogEntryResource, error)
- func (c *Client) ListInvites(ctx context.Context) ([]InviteResource, error)
- func (c *Client) ListIssueSilences(ctx context.Context) ([]IssueSilenceResource, error)
- func (c *Client) ListJanitorRuns(ctx context.Context, limit int) ([]JanitorReport, error)
- func (c *Client) ListJobRuns(ctx context.Context, app, id, status string, limit int) ([]JobRunResource, error)
- func (c *Client) ListJobs(ctx context.Context, app string) ([]ScheduledTaskResource, error)
- func (c *Client) ListLoadBalancers(ctx context.Context, p LoadBalancerListParams) (LoadBalancerList, error)
- func (c *Client) ListLogArchiveObjects(ctx context.Context, targetID, app, cursor string) (LogArchiveObjects, error)
- func (c *Client) ListLogArchivePolicies(ctx context.Context) ([]LogArchivePolicy, error)
- func (c *Client) ListLogArchiveRuns(ctx context.Context, app string, all bool) ([]LogArchiveRun, error)
- func (c *Client) ListMailGroups(ctx context.Context) ([]MailGroup, error)
- func (c *Client) ListMailTemplates(ctx context.Context) ([]MailTemplate, error)
- func (c *Client) ListMailTokens(ctx context.Context) ([]MailToken, error)
- func (c *Client) ListMaintenanceWindows(ctx context.Context) ([]MaintenanceWindowResource, error)
- func (c *Client) ListMajorUpgrades(ctx context.Context, name string) ([]MajorUpgradeResource, error)
- func (c *Client) ListMarketplaceSources(ctx context.Context) ([]MarketplaceSource, error)
- func (c *Client) ListMigrationAgentSessions(ctx context.Context) ([]MigrationAgentSession, error)
- func (c *Client) ListMigrationChecklists(ctx context.Context) ([]MigrationChecklist, error)
- func (c *Client) ListMigrationLocalSources(ctx context.Context, nodeID string) ([]HubLocalSource, error)
- func (c *Client) ListMigrationSessions(ctx context.Context) ([]HubSession, error)
- func (c *Client) ListMobileDevices(ctx context.Context) ([]MobileDevice, error)
- func (c *Client) ListModelCache(ctx context.Context) (ModelCacheReport, error)
- func (c *Client) ListModelKeys(ctx context.Context, name string) ([]ModelKeyResource, error)
- func (c *Client) ListModels(ctx context.Context) ([]ModelResource, error)
- func (c *Client) ListNetworkShares(ctx context.Context) ([]NetworkShareResource, error)
- func (c *Client) ListNodeCleanupRuns(ctx context.Context, id string) ([]NodeCleanupRunResource, error)
- func (c *Client) ListNodeDrains(ctx context.Context, nodeID string) ([]NodeDrainResource, error)
- func (c *Client) ListNodeEvents(ctx context.Context, id string, limit int) ([]NodeStatusEventResource, error)
- func (c *Client) ListNodeMoves(ctx context.Context, kind, resource, status string) ([]NodeMoveResource, error)
- func (c *Client) ListNodeProviderRegions(ctx context.Context, provider string) ([]NodeProviderRegionResource, error)
- func (c *Client) ListNodeProviderSizes(ctx context.Context, provider, region string) ([]NodeProviderSizeResource, error)
- func (c *Client) ListNodeProviders(ctx context.Context) ([]NodeProviderResource, error)
- func (c *Client) ListNodeProvisions(ctx context.Context) ([]NodeProvisionResource, error)
- func (c *Client) ListNodeSecurityEvents(ctx context.Context, id, outcome string, limit int) ([]NodeSecurityEvent, error)
- func (c *Client) ListNodes(ctx context.Context) ([]NodeResource, error)
- func (c *Client) ListNodesFiltered(ctx context.Context, opts ListNodesOptions) ([]NodeResource, int, error)
- func (c *Client) ListNotificationChannels(ctx context.Context) ([]NotificationChannelResource, error)
- func (c *Client) ListNotificationDeliveries(ctx context.Context, id string, limit int) ([]NotificationDeliveryResource, error)
- func (c *Client) ListOAuthProviderSettings(ctx context.Context) ([]OAuthProviderSettingsResource, error)
- func (c *Client) ListOAuthSSOPolicies(ctx context.Context) ([]OAuthSSOPolicy, error)
- func (c *Client) ListOrganizations(ctx context.Context) ([]OrganizationResource, error)
- func (c *Client) ListOrphanedVolumes(ctx context.Context) ([]OrphanedVolumeResource, error)
- func (c *Client) ListOrphans(ctx context.Context) (OrphanReport, error)
- func (c *Client) ListPITRRestores(ctx context.Context, name string) ([]PITRRestoreHistoryResource, error)
- func (c *Client) ListPRPreviewEnv(ctx context.Context, name string, pr int) ([]PRPreviewEnvOverride, error)
- func (c *Client) ListPackageRegistries(ctx context.Context) ([]PackageRegistryResource, error)
- func (c *Client) ListPendingDeviceLogins(ctx context.Context) ([]DevicePendingLogin, error)
- func (c *Client) ListPendingJoinTokens(ctx context.Context) ([]PendingJoinToken, error)
- func (c *Client) ListPipelineRunArtifacts(ctx context.Context, app, runID string) ([]PipelineArtifact, error)
- func (c *Client) ListPipelineRunFixes(ctx context.Context, app, runID string) ([]PipelineFix, error)
- func (c *Client) ListPipelineRunLogs(ctx context.Context, app, id, job string, after int64, limit int) ([]PipelineLogLine, error)
- func (c *Client) ListPipelineRuns(ctx context.Context, app, pipeline string, limit int) ([]PipelineRunResource, error)
- func (c *Client) ListPipelineTriggers(ctx context.Context, app string) ([]PipelineTrigger, error)
- func (c *Client) ListPipelineWebhookDeliveries(ctx context.Context, app, name string) ([]PipelineWebhookDelivery, error)
- func (c *Client) ListPipelines(ctx context.Context, app string) ([]PipelineResource, error)
- func (c *Client) ListPluginKeys(ctx context.Context) ([]PluginKey, error)
- func (c *Client) ListPlugins(ctx context.Context) ([]Plugin, error)
- func (c *Client) ListPolicies(ctx context.Context) ([]PolicyResource, error)
- func (c *Client) ListPolicyAttachments(ctx context.Context, id string) ([]PolicyAttachmentResource, error)
- func (c *Client) ListPolicyTemplates(ctx context.Context) (PolicyTemplateList, error)
- func (c *Client) ListPreviewEnvironments(ctx context.Context, appName string) ([]PreviewEnvironmentResource, error)
- func (c *Client) ListPrivateNetworks(ctx context.Context) (PrivateNetworkList, error)
- func (c *Client) ListProbeAttempts(ctx context.Context, name, deployID string) ([]ProbeAttempt, error)
- func (c *Client) ListProjects(ctx context.Context) ([]ProjectResource, error)
- func (c *Client) ListPushSubscriptions(ctx context.Context) ([]PushSubscriptionResource, error)
- func (c *Client) ListQueuedFunctionCalls(ctx context.Context, function, status string, limit int) ([]QueuedFunctionCall, error)
- func (c *Client) ListRegistryCredentialRepositories(ctx context.Context, id string) (RegistryRepositoriesResource, error)
- func (c *Client) ListRegistryCredentialTags(ctx context.Context, id, repository string) (RegistryTagsResource, error)
- func (c *Client) ListRegistryCredentials(ctx context.Context) ([]RegistryCredentialResource, error)
- func (c *Client) ListRegistryRepositories(ctx context.Context) (RegistryRepositoriesResource, error)
- func (c *Client) ListRegistryTags(ctx context.Context, repository string) (RegistryTagsResource, error)
- func (c *Client) ListRepoBranches(ctx context.Context, repoURL string) (RepoBranchesResource, error)
- func (c *Client) ListRestorePoints(ctx context.Context) (RestorePoints, error)
- func (c *Client) ListRestores(ctx context.Context, name string) ([]RestoreHistoryResource, error)
- func (c *Client) ListRoles(ctx context.Context) ([]RoleResource, error)
- func (c *Client) ListRollbackTargets(ctx context.Context, appName string) ([]RollbackTargetResource, error)
- func (c *Client) ListSAMLConnections(ctx context.Context) ([]SAMLConnection, error)
- func (c *Client) ListSCIMTokens(ctx context.Context) ([]SCIMToken, error)
- func (c *Client) ListSSHNodeProvisions(ctx context.Context) ([]SSHNodeProvisionResource, error)
- func (c *Client) ListSSOGroupMappings(ctx context.Context) (SSOGroupMappings, error)
- func (c *Client) ListSavedLogQueries(ctx context.Context, app string) ([]SavedLogQuery, error)
- func (c *Client) ListSavedSearches(ctx context.Context) ([]SavedSearch, error)
- func (c *Client) ListScheduledMaintenance(ctx context.Context) ([]ScheduledMaintenanceResource, error)
- func (c *Client) ListScheduledTasks(ctx context.Context, name string) ([]ScheduledTaskResource, error)
- func (c *Client) ListSecretRotation(ctx context.Context, name string) ([]SecretRotationPolicyResource, error)
- func (c *Client) ListSecrets(ctx context.Context, name string) ([]SecretKeyResource, error)
- func (c *Client) ListSecuritySessions(ctx context.Context, userID string) (SecuritySessions, error)
- func (c *Client) ListSelfUpgradeAttempts(ctx context.Context) (SelfUpgradeAttempts, error)
- func (c *Client) ListServiceTemplates(ctx context.Context) ([]ServiceTemplateListItem, error)
- func (c *Client) ListSessionPolicies(ctx context.Context) ([]SessionPolicy, error)
- func (c *Client) ListSharedEnvAll(ctx context.Context, scope, id string) ([]SharedEnvVarResource, error)
- func (c *Client) ListSharedEnvSecretKeys(ctx context.Context, scope, id string) ([]string, error)
- func (c *Client) ListSignInRequests(ctx context.Context) (SignInRequests, error)
- func (c *Client) ListSleepFleet(ctx context.Context) (SleepFleet, error)
- func (c *Client) ListSourceUploads(ctx context.Context, name string) (SourceUploadList, error)
- func (c *Client) ListStandaloneDomains(ctx context.Context) ([]StandaloneDomain, error)
- func (c *Client) ListStaticSites(ctx context.Context) ([]StaticSiteResource, error)
- func (c *Client) ListStatusComponents(ctx context.Context) ([]StatusComponent, error)
- func (c *Client) ListStatusIncidents(ctx context.Context) ([]StatusIncident, error)
- func (c *Client) ListStorageBuckets(ctx context.Context, app string) ([]StorageBucket, error)
- func (c *Client) ListStorageDefaults(ctx context.Context) (StorageDefaults, error)
- func (c *Client) ListStorageDestinations(ctx context.Context) ([]StorageDestination, error)
- func (c *Client) ListStorageOrphans(ctx context.Context) (StorageOrphansResponse, error)
- func (c *Client) ListStorageProviders(ctx context.Context) ([]StorageProvider, error)
- func (c *Client) ListTags(ctx context.Context) ([]TagResource, error)
- func (c *Client) ListTeamEvents(ctx context.Context, id string, limit int) ([]TeamEventResource, error)
- func (c *Client) ListTeamInvites(ctx context.Context, id string) ([]TeamInviteResource, error)
- func (c *Client) ListTeamMembers(ctx context.Context, id string) ([]TeamMemberResource, error)
- func (c *Client) ListTeamRoles(ctx context.Context) ([]TeamRoleResource, error)
- func (c *Client) ListTeams(ctx context.Context) ([]TeamResource, error)
- func (c *Client) ListTokensRaw(ctx context.Context) (json.RawMessage, error)
- func (c *Client) ListTraces(ctx context.Context, app string, o TraceListOptions) ([]TraceSummary, error)
- func (c *Client) ListTrafficExportSinks(ctx context.Context) (TrafficExportSinkList, error)
- func (c *Client) ListTrustedDevices(ctx context.Context) ([]TrustedDevice, error)
- func (c *Client) ListUsageBudgets(ctx context.Context) (UsageBudgets, error)
- func (c *Client) ListUsers(ctx context.Context) ([]UserResource, error)
- func (c *Client) ListVolumeBackupVerifications(ctx context.Context, name, volume, historyID string) ([]BackupVerificationResource, error)
- func (c *Client) ListVolumeBackups(ctx context.Context, name, volume string, opts ListBackupsOptions) ([]BackupHistoryResource, error)
- func (c *Client) ListVolumeCloneRestores(ctx context.Context, name, volume string) ([]VolumeCloneRestoreResource, error)
- func (c *Client) ListVolumeRestores(ctx context.Context, name, volume string) ([]RestoreHistoryResource, error)
- func (c *Client) ListWebhookDeliveries(ctx context.Context, name string, opts ListWebhookDeliveriesOptions) ([]WebhookDeliveryResource, error)
- func (c *Client) LockPublishing(ctx context.Context, appName, reason string) (PublishLockResource, error)
- func (c *Client) MakeDatabasePrivate(ctx context.Context, name string) error
- func (c *Client) MarkFormSubmissionSpam(ctx context.Context, app, form string, id int64, spam bool) error
- func (c *Client) MarkInboxRead(ctx context.Context, ids []string, all bool) error
- func (c *Client) MarkNodeLost(ctx context.Context, id string, dryRun bool) (NodeFailureStatus, error)
- func (c *Client) MarketplaceCatalog(ctx context.Context) (MarketplaceCatalog, error)
- func (c *Client) MigrationJob(ctx context.Context, id string) (MigrationJob, error)
- func (c *Client) MigrationRetire(ctx context.Context, id string, probe bool, acknowledged []string) (migrationgate.Report, error)
- func (c *Client) MigrationVolumeGuide(ctx context.Context, source, app string) (VolumeGuideResponse, error)
- func (c *Client) MintSessionLink(ctx context.Context) (SessionLinkResource, error)
- func (c *Client) MoveAppEnvironment(ctx context.Context, name string, req MoveEnvironmentRequest) (MoveEnvironmentResult, error)
- func (c *Client) MoveAppWithVolumes(ctx context.Context, name, nodeID string) (AppVolumeMoveResource, error)
- func (c *Client) MoveDatabaseEnvironment(ctx context.Context, name string, req MoveEnvironmentRequest) (MoveEnvironmentResult, error)
- func (c *Client) MyAccess(ctx context.Context) (MyAccessResource, error)
- func (c *Client) MyActivity(ctx context.Context, opts MyActivityOptions) (MyActivity, error)
- func (c *Client) MyCredentials(ctx context.Context) (MyCredentials, error)
- func (c *Client) OverrideSpendGuard(ctx context.Context, app, reason string) (SpendGuardInfo, error)
- func (c *Client) OverrideSupplyChainGate(ctx context.Context, name, reason string) (SupplyChainSettings, error)
- func (c *Client) PatchEnvironment(ctx context.Context, id string, req PatchEnvironmentRequest) (EnvironmentResource, error)
- func (c *Client) PendingDeployDiff(ctx context.Context, name, image string) (DeployCompareResource, error)
- func (c *Client) PlanAppImport(ctx context.Context, req AppImportRequest) (AppImportView, error)
- func (c *Client) PlanGoLive(ctx context.Context, app string, req GoLivePlanRequest) (GoLivePlanResponse, error)
- func (c *Client) PlanIaC(ctx context.Context, req IaCRequest) (iac.Plan, error)
- func (c *Client) PlanImport(ctx context.Context, req ImportPlanRequest) (ImportPlan, error)
- func (c *Client) PlanImportRepo(ctx context.Context, req ImportRepoPlanRequest) (RepoPlan, error)
- func (c *Client) PlanMailBroadcast(ctx context.Context, req MailBroadcastRequest) (MailBroadcastPlan, error)
- func (c *Client) PlanMigration(ctx context.Context, req MigrationSourceRequest) (MigrationPlanReport, error)
- func (c *Client) PluginPanelAction(ctx context.Context, name, panel, action, appID string) (PluginActionResult, error)
- func (c *Client) PluginPanelData(ctx context.Context, name, panel, appID string) (PluginPanelView, error)
- func (c *Client) PollDeviceAuthToken(ctx context.Context, deviceCode string) (DeviceTokenResponse, error)
- func (c *Client) PostStatusIncidentUpdate(ctx context.Context, id string, u StatusUpdate) (StatusIncident, error)
- func (c *Client) PreflightApp(ctx context.Context, name string, requiredEnv []string) (PreflightReport, error)
- func (c *Client) PreflightModel(ctx context.Context, req ModelPreflightRequest) (ModelPreflightResult, error)
- func (c *Client) PreflightSSHNodeProvision(ctx context.Context, req SSHProvisionPreflightRequest) (SSHProvisionPreflight, error)
- func (c *Client) PresignBucketObject(ctx context.Context, id, key, method string, expiresSeconds int) (BucketPresign, error)
- func (c *Client) PreviewAppExposure(ctx context.Context, name string, req AppExposureRequest) (AppExposurePlan, error)
- func (c *Client) PreviewCleanup(ctx context.Context, id string, days *int) (CleanupImpact, error)
- func (c *Client) PreviewClone(ctx context.Context, name string) (ClonePreview, error)
- func (c *Client) PreviewCompose(ctx context.Context, composeYAML []byte, profiles []string) (ComposePreview, error)
- func (c *Client) PreviewDatabasePasswordRotation(ctx context.Context, name string) (DatabasePasswordRotation, error)
- func (c *Client) PreviewDatabaseRules(ctx context.Context, name string, req DatabaseRulesRequest) (DatabaseRulesPlan, error)
- func (c *Client) PreviewDomainPolicies(ctx context.Context, name, domain string, req PolicyPreviewRequest) (PolicyPreviewResponse, error)
- func (c *Client) PreviewEmailBranding(ctx context.Context, req EmailBranding) (EmailBrandingPreview, error)
- func (c *Client) PreviewEnvironmentClone(ctx context.Context, id, newEnvironmentName string) (EnvironmentClonePreviewResource, error)
- func (c *Client) PreviewExposureRestriction(ctx context.Context, req ExposureRestrictRequest) (ExposurePlan, error)
- func (c *Client) PreviewFix(ctx context.Context, id string) (Fix, error)
- func (c *Client) PreviewLogPipeline(ctx context.Context, app string, rules []LogPipelineRule, lines []string) (LogPipelinePreview, error)
- func (c *Client) PreviewMailTemplate(ctx context.Context, key, scheme string) (MailPreview, error)
- func (c *Client) PreviewMaintenancePage(ctx context.Context, title, message string, retryAfterSeconds int) (MaintenancePreviewResource, error)
- func (c *Client) PreviewMarketplacePlugin(ctx context.Context, sourceID, id string) (MarketplacePreview, error)
- func (c *Client) PreviewNodeDrain(ctx context.Context, id string) (NodeDrainPreview, error)
- func (c *Client) PreviewPromotion(ctx context.Context, name, environmentID, target string) (PromotePreviewResource, error)
- func (c *Client) Probe(ctx context.Context, path string) error
- func (c *Client) ProbeExternalDatabase(ctx context.Context, name string) (ExternalDatabaseProbe, error)
- func (c *Client) ProbeMigrationDomain(ctx context.Context, id, domain, kind string) (MigrationProbe, error)
- func (c *Client) PromoteApp(ctx context.Context, name string, req PromoteAppRequest) (DeployTriggerResult, error)
- func (c *Client) PromoteCanary(ctx context.Context, appName string) (CanaryResource, error)
- func (c *Client) PromoteEmailProvider(ctx context.Context, id string) (EmailProviderList, error)
- func (c *Client) PromoteSplit(ctx context.Context, appName, variant string) (SplitTest, error)
- func (c *Client) ProtectAll(ctx context.Context, req ProtectAllRequest) (ProtectAllResponse, error)
- func (c *Client) PruneBuildCache(ctx context.Context, req BuildCachePruneRequest) (BuildCachePruneResource, error)
- func (c *Client) PruneModelCache(ctx context.Context, volumes []string, dryRun bool) (ModelCachePruneResult, error)
- func (c *Client) PrunePreview(ctx context.Context, name string, all bool) (PreviewPruneResult, error)
- func (c *Client) PruneSystem(ctx context.Context) (SystemPruneResult, error)
- func (c *Client) PruneSystemNetworks(ctx context.Context, dryRun bool) (SystemNetworksPrune, error)
- func (c *Client) PublishHeldBuild(ctx context.Context, appName, deployID string) (DeployTriggerResult, error)
- func (c *Client) PurgeAppCache(ctx context.Context, name string, req AppCachePurgeRequest) (AppCachePurgeResource, error)
- func (c *Client) PurgeAuditLog(ctx context.Context) (PurgeAuditLogResult, error)
- func (c *Client) PurgeDomainCache(ctx context.Context, name, domain string, req PurgeCacheRequest) (PurgeCacheResponse, error)
- func (c *Client) PutAppImportPlan(ctx context.Context, id string, body AppImportPlanUpdate) (AppImportView, error)
- func (c *Client) PutFunctionKV(ctx context.Context, name, key, value string, ttl time.Duration) error
- func (c *Client) PutFunctionWebhook(ctx context.Context, name, path string, rotate bool) (FunctionWebhook, error)
- func (c *Client) PutPreferences(ctx context.Context, p Preferences) (Preferences, error)
- func (c *Client) PutRuntimeSetting(ctx context.Context, key string, req RuntimeSettingWrite) (RuntimeSettingResource, error)
- func (c *Client) PutStatusPage(ctx context.Context, s StatusPageSettings) (StatusPageSettings, error)
- func (c *Client) QueryAppMetrics(ctx context.Context, name, metric string, from, to time.Time, ...) (AppMetricsResource, error)
- func (c *Client) QueryAppMetricsSeries(ctx context.Context, name, metric string, from, to time.Time, ...) (MetricsSeriesResource, error)
- func (c *Client) QueryAppRequests(ctx context.Context, name string, from, to time.Time, step time.Duration) (AppRequestsResource, error)
- func (c *Client) QueryDatabase(ctx context.Context, name string, req DatabaseQueryRequest, write bool) (DatabaseQueryResult, error)
- func (c *Client) QueryDatabaseLogs(ctx context.Context, name string, from, to time.Time, q string) ([]LogEntryResource, error)
- func (c *Client) QueryDatabaseMetrics(ctx context.Context, name, metric string, from, to time.Time, ...) (AppMetricsResource, error)
- func (c *Client) QueryDatabaseSlowQueries(ctx context.Context, name string, from, to time.Time, limit, offset int) ([]SlowQueryEntryResource, int, error)
- func (c *Client) QueryLogs(ctx context.Context, name string, from, to time.Time, q string) ([]LogEntryResource, error)
- func (c *Client) QueryLogsCompact(ctx context.Context, q LogQuery, maxBytes int, now time.Time) (LogExcerpt, error)
- func (c *Client) QueryModelLogs(ctx context.Context, name string, from, to time.Time, q string) ([]LogEntryResource, error)
- func (c *Client) QueryNodeMetrics(ctx context.Context, id, metric string, from, to time.Time, step time.Duration) (NodeMetricsResource, error)
- func (c *Client) ReapOrphans(ctx context.Context, dryRun bool) (OrphanReport, error)
- func (c *Client) RebindSecrets(ctx context.Context) (SecretRebindResult, error)
- func (c *Client) RecheckUpdatePreflight(ctx context.Context) (UpdatePreflight, error)
- func (c *Client) ReclaimStorageOrphan(ctx context.Context, id, confirm string) (ReclaimOrphanResponse, error)
- func (c *Client) RecordChaosResults(ctx context.Context, results []chaos.Result) ([]string, error)
- func (c *Client) RedeemCLIPairing(ctx context.Context, req CLIPairRequest) (CLIPairResponse, error)
- func (c *Client) RedeployComposeStack(ctx context.Context, name, service string) ([]string, error)
- func (c *Client) RefreshBackupProtection(ctx context.Context, targetIDs []string) ([]TargetProtectionResource, error)
- func (c *Client) RefreshDatabaseCatalog(ctx context.Context) (DBCatalogStatus, error)
- func (c *Client) RefreshDatabaseVersions(ctx context.Context, engine string) (DBVersions, error)
- func (c *Client) RefreshMarketplace(ctx context.Context, sourceID string) (MarketplaceCatalog, error)
- func (c *Client) RefreshRegistryCredential(ctx context.Context, id string) (RegistryCredentialResource, error)
- func (c *Client) RegisterGitSourceWebhook(ctx context.Context, name string) (GitSourceResource, error)
- func (c *Client) RejectDeployApproval(ctx context.Context, id, reason string) (DeployApprovalResource, error)
- func (c *Client) RejoinNodeMesh(ctx context.Context, id string) (RejoinMeshResponse, error)
- func (c *Client) ReleaseNotes(ctx context.Context, name, from, to string) (ReleaseNotesResource, error)
- func (c *Client) RemoveDatabaseRules(ctx context.Context, name string) error
- func (c *Client) RemoveExposureRestriction(ctx context.Context, protocol string, port int) error
- func (c *Client) RemoveMarketplaceSource(ctx context.Context, id string) error
- func (c *Client) RemoveOrphanedContainer(ctx context.Context, name string) error
- func (c *Client) RemovePlugin(ctx context.Context, name string) error
- func (c *Client) RemovePluginKey(ctx context.Context, keyID string) error
- func (c *Client) RemoveTeamMember(ctx context.Context, id, userID string) error
- func (c *Client) RenameGitConnection(ctx context.Context, id, label string) (GitProviderConnectionResource, error)
- func (c *Client) RenameTeam(ctx context.Context, id, name string) (TeamResource, error)
- func (c *Client) RenewDomainCertificate(ctx context.Context, name, domain string) (RenewCertificateResource, error)
- func (c *Client) RenewNodeCert(ctx context.Context, id string) error
- func (c *Client) ReorderFirewallEdgeRules(ctx context.Context, ids []string) ([]FirewallEdgeRule, error)
- func (c *Client) ReplaceSSOGroupMappings(ctx context.Context, req SSOGroupMappings) (SSOGroupMappings, error)
- func (c *Client) ReplayEventWebhookDelivery(ctx context.Context, id string) (EventDeliveryResource, error)
- func (c *Client) ReplayFunctionInvocation(ctx context.Context, name, id string) (FunctionInvokeResult, error)
- func (c *Client) ReplayPipelineWebhookDelivery(ctx context.Context, app, name, deliveryID string) (PipelineRunResource, error)
- func (c *Client) ReplayWebhookDelivery(ctx context.Context, name, id string) (ReplayWebhookDeliveryResult, error)
- func (c *Client) RerunPipelineRun(ctx context.Context, app, id string) (PipelineRunResource, error)
- func (c *Client) ResetAppBuildLimits(ctx context.Context, app string) (AppBuildLimits, error)
- func (c *Client) ResetBuildLimits(ctx context.Context) (BuildLimits, error)
- func (c *Client) ResetDefaultAlerts(ctx context.Context) ([]DefaultAlert, error)
- func (c *Client) ResetMailTemplate(ctx context.Context, key string) (MailTemplate, error)
- func (c *Client) ResetSetupGuide(ctx context.Context) (SetupGuideResource, error)
- func (c *Client) ResolveAIChatConfirmation(ctx context.Context, sessionID, confirmationID string, approve bool, ...) error
- func (c *Client) ResolveNodeFailure(ctx context.Context, id, kind, name, action, target string) (NodeFailureStatus, error)
- func (c *Client) RestartApp(ctx context.Context, name string) (AppResource, error)
- func (c *Client) RestartControlPlane(ctx context.Context) (SystemRestart, error)
- func (c *Client) RestartModel(ctx context.Context, name string) error
- func (c *Client) RestartPlugin(ctx context.Context, name string) (Plugin, error)
- func (c *Client) RestartProject(ctx context.Context, id string) (ProjectRestartResponse, error)
- func (c *Client) RestoreArchive(ctx context.Context, id string) (ArchiveRestoreResult, error)
- func (c *Client) RestoreIntegrity(ctx context.Context, name string, proof *StepUpProof) (IntegrityRestore, error)
- func (c *Client) RestoreRestorePoint(ctx context.Context, id string) (RestoreStarted, error)
- func (c *Client) RestoreVolumeTo(ctx context.Context, name, volume string, req VolumeRestoreToRequest) (VolumeRestoreToResponse, error)
- func (c *Client) RestrictDomainPort(ctx context.Context, name, domain string, port int, sources []string) (DomainPortsResource, error)
- func (c *Client) RetryBuild(ctx context.Context, app, id string) (string, error)
- func (c *Client) RetryFunctionInvocation(ctx context.Context, id string) error
- func (c *Client) RetrySelfUpgradeAttempt(ctx context.Context, id string) (SelfUpgradeStarted, error)
- func (c *Client) RevealDatabaseCredentials(ctx context.Context, name string, proof *StepUpProof) (DatabaseRevealedCredential, error)
- func (c *Client) RevealEmailSecret(ctx context.Context, id, field string, proof *StepUpProof) (EmailSecretRevealed, error)
- func (c *Client) RevealEnv(ctx context.Context, app, key string, proof *StepUpProof) (RevealResult, error)
- func (c *Client) RevealLoginCode(ctx context.Context, id string) (RevealedLoginCode, error)
- func (c *Client) RevealSecret(ctx context.Context, app, key string, proof *StepUpProof) (RevealResult, error)
- func (c *Client) RevokeAgentTokens(ctx context.Context) (RevokeAgentTokensResource, error)
- func (c *Client) RevokeAuthGateSessions(ctx context.Context, name, domain string) (AuthGateSessionsRevoked, error)
- func (c *Client) RevokeBuildHook(ctx context.Context, appName, id string) error
- func (c *Client) RevokeDatabaseTemp(ctx context.Context, name, id string) error
- func (c *Client) RevokeInvite(ctx context.Context, id string) error
- func (c *Client) RevokeJoinTokens(ctx context.Context, id string) (RevokeJoinTokensResponse, error)
- func (c *Client) RevokeMigrationAgentSession(ctx context.Context, id string) error
- func (c *Client) RevokeMobileDevice(ctx context.Context, id string) error
- func (c *Client) RevokeModelKey(ctx context.Context, name, id string) error
- func (c *Client) RevokeNodeCert(ctx context.Context, id string) (NodeResource, error)
- func (c *Client) RevokeOtherSecuritySessions(ctx context.Context, userID string) (RevokedSessions, error)
- func (c *Client) RevokeSCIMToken(ctx context.Context, id string) error
- func (c *Client) RevokeSecuritySession(ctx context.Context, id, userID string) error
- func (c *Client) RevokeTeamInvite(ctx context.Context, id, inviteID string) error
- func (c *Client) RevokeTrustedDevice(ctx context.Context, id string) error
- func (c *Client) RollbackAndLockDeploy(ctx context.Context, appName, deployID string, req RollbackToRequest) (DeployTriggerResult, error)
- func (c *Client) RollbackAppImport(ctx context.Context, id string, items []string) (AppImportView, error)
- func (c *Client) RollbackAppImportCutover(ctx context.Context, session, item, run string) (ImportCutoverRun, error)
- func (c *Client) RollbackComposeStack(ctx context.Context, name string, revision int) (ComposeRollbackResult, error)
- func (c *Client) RollbackFunction(ctx context.Context, name, to string, pin bool) error
- func (c *Client) RollbackMajorUpgrade(ctx context.Context, name, id string) (MajorUpgradeResource, error)
- func (c *Client) RollbackSelfUpgradeAttempt(ctx context.Context, id string) (RestoreStarted, error)
- func (c *Client) RollbackTakeover(ctx context.Context, id, reason string) (TakeoverStartResult, error)
- func (c *Client) RollbackToDeploy(ctx context.Context, appName, deployID string, req RollbackToRequest) (DeployTriggerResult, error)
- func (c *Client) RotateBuildHook(ctx context.Context, appName, id string) (BuildHookResource, error)
- func (c *Client) RotateDEK(ctx context.Context, app string, proof *StepUpProof) (RotateDEKResult, error)
- func (c *Client) RotateDatabasePassword(ctx context.Context, name string, proof *StepUpProof) (DatabasePasswordRotation, error)
- func (c *Client) RotateDatabaseUser(ctx context.Context, name, role string) (DatabaseCredential, error)
- func (c *Client) RotateEventWebhookSecret(ctx context.Context, id string) (EventWebhookResource, error)
- func (c *Client) RotateFunctionKVToken(ctx context.Context, name string) error
- func (c *Client) RotateGitSourceWebhookSecret(ctx context.Context, name string) (GitSourceResource, error)
- func (c *Client) RotateImageUpdateWebhook(ctx context.Context, appName string) (ImageUpdateWebhookResource, error)
- func (c *Client) RotateMasterKey(ctx context.Context, newMasterKey string) (RotateMasterKeyResult, error)
- func (c *Client) RotateModelAPIKey(ctx context.Context, name string) (ModelAPIKeyResource, error)
- func (c *Client) RotateModelKey(ctx context.Context, name, id string, grace *time.Duration) (CreatedModelKeyResource, error)
- func (c *Client) RotateNodeMeshKey(ctx context.Context, id string) (RotateKeyResponse, error)
- func (c *Client) RotatePipelineOIDCKey(ctx context.Context, retireAfter string) (PipelineOIDCRotation, error)
- func (c *Client) RotatePipelineWebhook(ctx context.Context, app, name string) (PipelineWebhook, error)
- func (c *Client) RotateSCIMToken(ctx context.Context, id string) (SCIMTokenCreated, error)
- func (c *Client) RotateSecretNow(ctx context.Context, name, key string) (SecretRotationPolicyResource, error)
- func (c *Client) RotateSecretValue(ctx context.Context, name, key, value string) (SecretRotationPolicyResource, error)
- func (c *Client) RotateVaultCredential(ctx context.Context, credential string) (VaultSettingsResource, error)
- func (c *Client) RunBucketLifecycle(ctx context.Context, id string) (BucketSweepResult, error)
- func (c *Client) RunCleanup(ctx context.Context, id string, days *int, dryRun bool) (CleanupRunResult, error)
- func (c *Client) RunControlPlaneDrill(ctx context.Context) error
- func (c *Client) RunControlPlaneOffboxBackup(ctx context.Context) error
- func (c *Client) RunGoLive(ctx context.Context, app, domain string, req GoLiveRequest) (GoLiveResult, error)
- func (c *Client) RunImageGC(ctx context.Context, req ImageGCRequest) (ImageGCResource, error)
- func (c *Client) RunJanitor(ctx context.Context, dryRun, force bool) (JanitorReport, error)
- func (c *Client) RunJob(ctx context.Context, app, id string) (ScheduledTaskResource, error)
- func (c *Client) RunPipelineSync(ctx context.Context, app string) (PipelineSyncResult, error)
- func (c *Client) RunScheduledTask(ctx context.Context, name, id string) (ScheduledTaskResource, error)
- func (c *Client) RunSecretScan(ctx context.Context, name string) (SecretScanEnvResult, error)
- func (c *Client) SAMLSPMetadata(ctx context.Context, id string) ([]byte, error)
- func (c *Client) SSHHostKeys(ctx context.Context, req AppImportSSHProbe) (AppImportSSHResult, error)
- func (c *Client) SaveAppAsTemplate(ctx context.Context, name string, req SaveAppAsTemplateRequest) (CustomTemplateDetail, error)
- func (c *Client) SaveConsoleView(ctx context.Context, name, query string) (ConsoleView, error)
- func (c *Client) SaveSearch(ctx context.Context, name, query string) (SavedSearch, error)
- func (c *Client) ScanAppEnv(ctx context.Context, name string, vars map[string]string) (EnvScanResponse, error)
- func (c *Client) ScanDeployment(ctx context.Context, name, id string) (VulnReport, error)
- func (c *Client) Search(ctx context.Context, q, kind string, limit int, cursor string) (SearchResponse, error)
- func (c *Client) SearchAppLogs(ctx context.Context, name string, s LogSearch) (LogSearchResource, error)
- func (c *Client) SelectMigrationItems(ctx context.Context, id string, items []HubSelection) (HubSession, error)
- func (c *Client) SendAIChatMessage(ctx context.Context, sessionID, content string, ...) error
- func (c *Client) SendFormTest(ctx context.Context, app, form string) (FormTestResult, error)
- func (c *Client) SendTestEmail(ctx context.Context, to string) (EmailTestResult, error)
- func (c *Client) SetAIChoice(ctx context.Context, req AIChoiceRequest) (AIAssistantSettingsResource, error)
- func (c *Client) SetAIProvider(ctx context.Context, id string, req SetAIProviderRequest) (AIProviderResource, error)
- func (c *Client) SetAdvisorFindingState(ctx context.Context, id, verb, duration string) (AdvisorFinding, error)
- func (c *Client) SetAppAbuse(ctx context.Context, app string, p AbusePolicy) (AppAbuse, error)
- func (c *Client) SetAppAutoscale(ctx context.Context, app string, u AppAutoscaleUpdate) (AppAutoscale, error)
- func (c *Client) SetAppBranchEnv(ctx context.Context, name, branchPattern, key, value string, secret bool) (AppBranchEnvOverride, error)
- func (c *Client) SetAppBudget(ctx context.Context, app string, u AppBudgetUpdate) (AppBudget, error)
- func (c *Client) SetAppBuildLimits(ctx context.Context, app string, req BuildLimitsRequest) (AppBuildLimits, error)
- func (c *Client) SetAppContext(ctx context.Context, name string, cfg AppContextConfig) (AppContextConfig, error)
- func (c *Client) SetAppDatabaseAttachment(ctx context.Context, name string, req SetAppDatabaseRequest) (AppDatabaseResource, error)
- func (c *Client) SetAppEgressPolicy(ctx context.Context, name string, req SetAppEgressPolicyRequest) (AppEgressPolicyResource, error)
- func (c *Client) SetAppEnvironment(ctx context.Context, name, environmentID string) (AppResource, error)
- func (c *Client) SetAppExposure(ctx context.Context, name string, req AppExposureRequest) (AppExposureResource, error)
- func (c *Client) SetAppGitHubActions(ctx context.Context, name string, req AppGitHubActionsResource) (AppGitHubActionsResource, error)
- func (c *Client) SetAppHealth(ctx context.Context, name string, health ServiceHealth) (AppHealthResource, error)
- func (c *Client) SetAppIngressLimits(ctx context.Context, app string, maxBodyBytes *int64) (AppIngressLimits, error)
- func (c *Client) SetAppMaintenance(ctx context.Context, name string, req SetDomainMaintenanceRequest) (AppMaintenanceResource, error)
- func (c *Client) SetAppNode(ctx context.Context, name, nodeID string) (AppResource, error)
- func (c *Client) SetAppPreviewEnvOverride(ctx context.Context, name, key, value string) (AppPreviewEnvOverride, error)
- func (c *Client) SetAppProject(ctx context.Context, name, projectID string) (AppResource, error)
- func (c *Client) SetAppSchedule(ctx context.Context, name string, req SetAppScheduleRequest) (AppScheduleResource, error)
- func (c *Client) SetAppSleep(ctx context.Context, appName string, idleMinutes int) (AppSleepResource, error)
- func (c *Client) SetAppSleepHold(ctx context.Context, appName string, idleMinutes int, hold bool) (AppSleepResource, error)
- func (c *Client) SetAppStorage(ctx context.Context, name, storageTargetID string) (AppStorageResource, error)
- func (c *Client) SetAppVaultEnv(ctx context.Context, name, key string, req AppVaultEnvRef) (AppVaultEnvRef, error)
- func (c *Client) SetAppVolumes(ctx context.Context, name string, req SetAppVolumesRequest) (SetAppVolumesResponse, error)
- func (c *Client) SetArchivePolicy(ctx context.Context, p ArchivePolicy) (ArchivePolicy, error)
- func (c *Client) SetAutoRollback(ctx context.Context, appName string, enabled bool) (AutoRollbackSettingResource, error)
- func (c *Client) SetAutoRollbackSLOBurn(ctx context.Context, appName, mode string) (AutoRollbackSLOBurnSettingResource, error)
- func (c *Client) SetBackupSchedule(ctx context.Context, name string, req SetBackupScheduleRequest) (BackupScheduleResource, error)
- func (c *Client) SetBackupTargetEncryption(ctx context.Context, id string, enabled bool) (BackupTargetEncryptionResource, error)
- func (c *Client) SetBetaFeature(ctx context.Context, feature string, enabled bool) (BetaFeature, error)
- func (c *Client) SetBranchDeploySettings(ctx context.Context, name, mode string, patterns []string) (BranchDeploys, error)
- func (c *Client) SetBuildCache(ctx context.Context, req BuildCacheRequest) (BuildCacheSetting, error)
- func (c *Client) SetBuildLimits(ctx context.Context, req BuildLimitsRequest) (BuildLimits, error)
- func (c *Client) SetCanaryWeight(ctx context.Context, appName string, weight int) (CanaryResource, error)
- func (c *Client) SetCancelSuperseded(ctx context.Context, appName string, enabled bool) (CancelSupersededResource, error)
- func (c *Client) SetChannelQuietHours(ctx context.Context, id string, q QuietHoursResource) (QuietHoursResource, error)
- func (c *Client) SetCleanupMode(ctx context.Context, id, mode string) (CleanupTargetResource, error)
- func (c *Client) SetCloudflareDNS(ctx context.Context, req UpdateCloudflareDNSRequest) (CloudflareDNSResource, error)
- func (c *Client) SetCloudflareTunnel(ctx context.Context, req UpdateCloudflareTunnelRequest) (CloudflareTunnelResource, error)
- func (c *Client) SetDNSProvider(ctx context.Context, app string, req DNSProviderRequest) (DNSProviderState, error)
- func (c *Client) SetDNSProviderPlugin(ctx context.Context, name string) (DNSProviderPlugin, error)
- func (c *Client) SetDatabaseCatalogRemote(ctx context.Context, enabled bool) (DBCatalogStatus, error)
- func (c *Client) SetDatabaseNode(ctx context.Context, name, nodeID string) (DatabaseResource, error)
- func (c *Client) SetDatabasePasswordRotationInterval(ctx context.Context, name string, days int) (DatabasePasswordRotation, error)
- func (c *Client) SetDatabaseProject(ctx context.Context, name, projectID string) (DatabaseResource, error)
- func (c *Client) SetDatabasePublicAccess(ctx context.Context, name string, port int, bindAddress string) (DatabasePublicAccessResource, error)
- func (c *Client) SetDatabaseRequireTLS(ctx context.Context, name string, require bool) error
- func (c *Client) SetDatabaseResources(ctx context.Context, name string, resources *ServiceResources) (DatabaseResource, error)
- func (c *Client) SetDatabaseScope(ctx context.Context, name, scope string, dryRun, confirm bool) (DatabaseScopeResult, error)
- func (c *Client) SetDatabaseTLSEnabled(ctx context.Context, name string, enabled bool) (DatabaseTLSToggle, error)
- func (c *Client) SetDatabaseUpgradePolicy(ctx context.Context, name string, p DBUpgradePolicy) (DBUpgradePolicy, error)
- func (c *Client) SetDatabaseUserLogin(ctx context.Context, name, role string, login bool) error
- func (c *Client) SetDatabaseVersion(ctx context.Context, name, version string) (DatabaseResource, error)
- func (c *Client) SetDefaultAlertEnabled(ctx context.Context, id string, enabled bool) (DefaultAlert, error)
- func (c *Client) SetDefaultGitConnection(ctx context.Context, id string) (GitProviderConnectionResource, error)
- func (c *Client) SetDeployFreeze(ctx context.Context, name string, windows []FreezeWindowResource) (DeployFreezeResource, error)
- func (c *Client) SetDeployPolicy(ctx context.Context, scope, id string, rules map[string]DeployPolicyRule) (DeployPolicy, error)
- func (c *Client) SetDeploySafety(ctx context.Context, appName string, overrides DeploySafetyOverrides) (DeploySafetyResource, error)
- func (c *Client) SetDomainAliases(ctx context.Context, name, domain string, req AliasesRequest) (DomainRedirectsResource, error)
- func (c *Client) SetDomainAuthGate(ctx context.Context, name, domain string, req SetDomainAuthGateRequest) (DomainAuthGateResource, error)
- func (c *Client) SetDomainBasicAuth(ctx context.Context, name, domain string, req SetDomainBasicAuthRequest) (DomainBasicAuthResource, error)
- func (c *Client) SetDomainCache(ctx context.Context, name, domain string, spec trafficpolicy.Cache) (CachePolicyResource, error)
- func (c *Client) SetDomainCanonical(ctx context.Context, name, domain string, req CanonicalRequest) (DomainRedirectsResource, error)
- func (c *Client) SetDomainErrorPage(ctx context.Context, name, domain string, req SetDomainErrorPageRequest) (DomainErrorPagesResource, error)
- func (c *Client) SetDomainForwarders(ctx context.Context, name, domain string, spec trafficpolicy.Forwarders) (ForwardersPolicyResource, error)
- func (c *Client) SetDomainGeo(ctx context.Context, name, domain string, spec trafficpolicy.Geo) (GeoPolicyResource, error)
- func (c *Client) SetDomainHeaders(ctx context.Context, name, domain string, spec trafficpolicy.Headers) (HeadersPolicyResource, error)
- func (c *Client) SetDomainMaintenance(ctx context.Context, name, domain string) (DomainMaintenanceResource, error)
- func (c *Client) SetDomainMaintenanceOptions(ctx context.Context, name, domain string, req SetDomainMaintenanceRequest) (DomainMaintenanceResource, error)
- func (c *Client) SetDomainRedirect(ctx context.Context, name, domain string, req SetDomainRedirectRequest) (DomainRedirectResource, error)
- func (c *Client) SetDomainRedirectSettings(ctx context.Context, name, domain string, s trafficpolicy.Redirects) (DomainRedirectsResource, error)
- func (c *Client) SetDomainSearchVisibility(ctx context.Context, name, domain string, hidden bool) (DomainSearchVisibilityResource, error)
- func (c *Client) SetDomainShield(ctx context.Context, name, domain string, spec trafficpolicy.Shield) (ShieldPolicyResource, error)
- func (c *Client) SetDomainTLSCert(ctx context.Context, name, domain string, req SetDomainTLSCertRequest) (DomainTLSCertResource, error)
- func (c *Client) SetDomainWAF(ctx context.Context, name, domain string, req SetDomainWAFRequest) (DomainWAFResource, error)
- func (c *Client) SetEnvironmentEnv(ctx context.Context, id string, vars map[string]string) (map[string]string, error)
- func (c *Client) SetErrorStatus(ctx context.Context, app, fingerprint, status string) (ErrorIssueDetail, error)
- func (c *Client) SetExecAccess(ctx context.Context, appName string, enabled bool) (ExecAccessResource, error)
- func (c *Client) SetFirewallEdgeSettings(ctx context.Context, s edgefw.Settings) (FirewallEdgeSettings, error)
- func (c *Client) SetFormFields(ctx context.Context, app, form string, schema json.RawMessage) (Form, error)
- func (c *Client) SetFunctionRoute(ctx context.Context, name string, r FunctionRoute) error
- func (c *Client) SetFunctionSettings(ctx context.Context, name string, u FunctionSettingsUpdate) (FunctionSettings, error)
- func (c *Client) SetGitDeploySettings(ctx context.Context, name string, req SetGitDeploySettingsRequest) (GitDeploySettings, error)
- func (c *Client) SetGitRemoteBranch(ctx context.Context, name, branch string) (GitRemote, error)
- func (c *Client) SetGitSource(ctx context.Context, name string, req SetGitSourceRequest) (GitSourceResource, error)
- func (c *Client) SetGitSourceBuild(ctx context.Context, name string, req SetGitSourceBuildRequest) (GitSourceResource, error)
- func (c *Client) SetGlobalDeployFreeze(ctx context.Context, windows []FreezeWindowResource) (DeployFreezeResource, error)
- func (c *Client) SetGoogleCloudDNS(ctx context.Context, req UpdateGoogleCloudDNSRequest) (GoogleCloudDNSResource, error)
- func (c *Client) SetHSTS(ctx context.Context, enabled bool) (HSTSStatus, error)
- func (c *Client) SetHostFirewall(ctx context.Context, enable bool, dryRun bool) (HostFirewallResource, error)
- func (c *Client) SetImageAutoUpdate(ctx context.Context, appName string, enabled bool) (ImageAutoUpdateResource, error)
- func (c *Client) SetInboxPrefs(ctx context.Context, p InboxPrefs) (InboxPrefs, error)
- func (c *Client) SetJobEnabled(ctx context.Context, app, id string, enabled bool) (ScheduledTaskResource, error)
- func (c *Client) SetLoadBalancer(ctx context.Context, name string, cfg LoadBalancerConfig) (LoadBalancerResource, error)
- func (c *Client) SetLoadBalancerUpstreamState(ctx context.Context, name, id, state string) (LoadBalancerUpstreamStatus, error)
- func (c *Client) SetLogArchivePolicy(ctx context.Context, req LogArchivePolicyRequest) (LogArchivePolicy, error)
- func (c *Client) SetLogBudget(ctx context.Context, app string, maxMB int64) (LogBudget, error)
- func (c *Client) SetLogDrain(ctx context.Context, name string, req SetLogDrainRequest) (LogDrainResource, error)
- func (c *Client) SetLogPipeline(ctx context.Context, app string, rules []LogPipelineRule) (LogPipeline, error)
- func (c *Client) SetMailTemplate(ctx context.Context, key string, t MailTemplateBody) (MailTemplate, error)
- func (c *Client) SetModelEndpointCredential(ctx context.Context, name, credential string) (ModelDetail, error)
- func (c *Client) SetModelEndpointRouting(ctx context.Context, name, fallback, fallbackRef string, budgetMS int64) (ModelDetail, error)
- func (c *Client) SetModelHFToken(ctx context.Context, name, token string) error
- func (c *Client) SetModelResidency(ctx context.Context, name, residency string, idleTTLSeconds int) error
- func (c *Client) SetModelSwapGroup(ctx context.Context, name, group string) error
- func (c *Client) SetNodeFailureDomain(ctx context.Context, id string, req SetNodeFailureDomainRequest) (NodeResource, error)
- func (c *Client) SetNodeFailurePolicy(ctx context.Context, id, mode string, graceSeconds int) (NodeFailureStatus, error)
- func (c *Client) SetNodeLabels(ctx context.Context, id string, labels map[string]string) (NodeLabels, error)
- func (c *Client) SetNodeProviderCredential(ctx context.Context, req SetNodeProviderCredentialRequest) (NodeProviderResource, error)
- func (c *Client) SetNodeWorkloads(ctx context.Context, id string, req SetNodeWorkloadsRequest) (NodeResource, error)
- func (c *Client) SetOAuthSSOPolicy(ctx context.Context, provider string, req OAuthSSOPolicyRequest) (OAuthSSOPolicy, error)
- func (c *Client) SetOrganizationEnv(ctx context.Context, id string, vars map[string]string) (map[string]string, error)
- func (c *Client) SetPRPreviewEnv(ctx context.Context, name string, pr int, key, value string, secret bool) (PRPreviewEnvOverride, error)
- func (c *Client) SetPasswordChangeRequired(ctx context.Context, id string, required bool) (UserResource, error)
- func (c *Client) SetPipelineSync(ctx context.Context, app string, repoIsTruth bool) (PipelineSyncStatus, error)
- func (c *Client) SetPipelineWebhook(ctx context.Context, app, name string, req PipelineWebhookRequest) (PipelineWebhook, error)
- func (c *Client) SetPlacement(ctx context.Context, kind, name string, selector map[string]string) (PlacementResource, error)
- func (c *Client) SetPlatformUpgradePolicy(ctx context.Context, p DBUpgradePolicy) (DBUpgradePolicy, error)
- func (c *Client) SetPreview(ctx context.Context, name string, req PreviewSettingsRequest) (PreviewStatus, error)
- func (c *Client) SetPreviewEnabled(ctx context.Context, appName string, enabled bool) (PreviewSettingsResource, error)
- func (c *Client) SetPreviewPolicy(ctx context.Context, appName string, req SetPreviewPolicyRequest) (PreviewPolicyResource, error)
- func (c *Client) SetPreviewPostPRComments(ctx context.Context, appName string, enabled bool) (PreviewSettingsResource, error)
- func (c *Client) SetProjectEnv(ctx context.Context, id string, vars map[string]string) (map[string]string, error)
- func (c *Client) SetProjectOrganization(ctx context.Context, projectID, orgID string) (ProjectResource, error)
- func (c *Client) SetQuota(ctx context.Context, scope, id string, l QuotaLimits) (QuotaResource, error)
- func (c *Client) SetRoute53DNS(ctx context.Context, req UpdateRoute53DNSRequest) (Route53DNSResource, error)
- func (c *Client) SetSCIMDefaultRole(ctx context.Context, roleID string) (SSOSettings, error)
- func (c *Client) SetSSOEnforce(ctx context.Context, on bool) (SSOSettings, error)
- func (c *Client) SetSecret(ctx context.Context, name, key, value string, overwriteLocked bool) error
- func (c *Client) SetSecretBuildTime(ctx context.Context, name, key string, buildTime bool) error
- func (c *Client) SetSecretLock(ctx context.Context, name, key string, locked bool) error
- func (c *Client) SetSecretRotation(ctx context.Context, name, key string, req SetSecretRotationPolicyRequest) (SecretRotationPolicyResource, error)
- func (c *Client) SetSecretScanPolicy(ctx context.Context, name, policy string) (SecretScanSettings, error)
- func (c *Client) SetSecretWithBuildTime(ctx context.Context, name, key, value string, overwriteLocked, buildTime bool) error
- func (c *Client) SetServerAddress(ctx context.Context, override ServerAddressPair) (ServerAddress, error)
- func (c *Client) SetServerProfile(ctx context.Context, req UpdateServerProfileRequest) (ServerProfile, error)
- func (c *Client) SetSessionPolicy(ctx context.Context, teamID string, req SessionPolicyRequest) (SessionPolicy, error)
- func (c *Client) SetSetupGuideHidden(ctx context.Context, hidden bool) (SetupGuideResource, error)
- func (c *Client) SetSetupGuideStep(ctx context.Context, id, state string) (SetupGuideResource, error)
- func (c *Client) SetSharedEnvSecret(ctx context.Context, scope, id, key, value string) error
- func (c *Client) SetSplitWeights(ctx context.Context, appName string, weights map[string]int) (SplitTest, error)
- func (c *Client) SetStorageDefault(ctx context.Context, class, targetID string) (StorageDefault, error)
- func (c *Client) SetSupplyChain(ctx context.Context, name string, req SupplyChainSettingsRequest) (SupplyChainSettings, error)
- func (c *Client) SetTeamMemberRole(ctx context.Context, id, userID, role string) error
- func (c *Client) SetUpdateSettings(ctx context.Context, req UpdateSettingsResource) (UpdateSettingsResource, error)
- func (c *Client) SetUpgradePolicy(ctx context.Context, req UpgradePolicyRequest) (UpgradePolicy, error)
- func (c *Client) SetUsageBudget(ctx context.Context, scope, scopeID string, monthly, warnPct float64) (usagecost.Budget, error)
- func (c *Client) SetUserEnvironmentGrants(ctx context.Context, userID string, environmentIDs []string) (EnvironmentGrants, error)
- func (c *Client) SetUserRole(ctx context.Context, userID, roleID string) (UserResource, error)
- func (c *Client) SetVault(ctx context.Context, req UpdateVaultSettingsRequest) (VaultSettingsResource, error)
- func (c *Client) SetVolumeBackupPolicy(ctx context.Context, name, volume string, p VolumeBackupPolicyResource) (VolumeBackupPolicyResource, error)
- func (c *Client) SetVolumeBackupSchedule(ctx context.Context, name, volume string, req SetVolumeBackupScheduleRequest) (VolumeBackupScheduleResource, error)
- func (c *Client) SetupProxyIntegration(ctx context.Context, req ProxySetupRequest) (ProxyIntegration, error)
- func (c *Client) ShieldBots(ctx context.Context) (ShieldBotList, error)
- func (c *Client) SilenceAlertRule(ctx context.Context, app, ruleID, duration, reason string) (SilenceResource, error)
- func (c *Client) SimulateFailure(ctx context.Context, zone, node string) (FailureSimulation, error)
- func (c *Client) SimulateIAM(ctx context.Context, principalType, principalID, action, resource string) (IAMSimulation, error)
- func (c *Client) SimulatePlacement(ctx context.Context, cpuMilli, memoryMiB int64, count int, selector string) (PlacementSimulation, error)
- func (c *Client) SimulateResilience(ctx context.Context) (OutageReport, error)
- func (c *Client) SleepAppNow(ctx context.Context, appName string) (AppSleepResource, error)
- func (c *Client) SleepModel(ctx context.Context, name string) error
- func (c *Client) StageAppImport(ctx context.Context, id string) (AppImportView, error)
- func (c *Client) StageAppImportItems(ctx context.Context, id string, items []string) (AppImportView, error)
- func (c *Client) StartAccountExport(ctx context.Context) (AccountExport, error)
- func (c *Client) StartApp(ctx context.Context, name string) (AppResource, error)
- func (c *Client) StartAppImportCutover(ctx context.Context, session, item string, body ImportCutoverStart) (ImportCutoverRun, error)
- func (c *Client) StartAppImportVolumeCopy(ctx context.Context, id string, items []string) (AppImportVolumeCopy, error)
- func (c *Client) StartBackupDrill(ctx context.Context, backupID string) (string, error)
- func (c *Client) StartCanary(ctx context.Context, appName, image string, weight int) (CanaryResource, error)
- func (c *Client) StartCanaryWith(ctx context.Context, appName string, req CanaryStartRequest) (CanaryResource, error)
- func (c *Client) StartDatabase(ctx context.Context, name string) (DatabaseResource, error)
- func (c *Client) StartDatabaseDataCopy(ctx context.Context, name string, src DataCopySource) (DataCopyStatus, error)
- func (c *Client) StartDeviceAuth(ctx context.Context, req DeviceStartRequest) (DeviceStartResponse, error)
- func (c *Client) StartFirewallEdgeAttack(ctx context.Context, minutes int, challenge bool) (FirewallEdgeAttack, error)
- func (c *Client) StartLogArchiveDump(ctx context.Context, req LogArchiveDumpRequest) (LogArchiveRun, error)
- func (c *Client) StartMajorUpgrade(ctx context.Context, name, version string) (MajorUpgradeResource, error)
- func (c *Client) StartMove(ctx context.Context, kind, name, nodeID string) (NodeMoveResource, error)
- func (c *Client) StartNodeDrain(ctx context.Context, id, targetNodeID string) (NodeDrainResource, error)
- func (c *Client) StartPipelineRun(ctx context.Context, app, name string, req PipelineStartRequest) (PipelineRunResource, error)
- func (c *Client) StartProject(ctx context.Context, id string) (ProjectLifecycleResult, error)
- func (c *Client) StartRollback(ctx context.Context, version string) (RollbackStarted, error)
- func (c *Client) StartSelfUpgrade(ctx context.Context, target string, ack []string) (SelfUpgradeStarted, error)
- func (c *Client) StartSplit(ctx context.Context, appName string, req SplitStartRequest) (SplitTest, error)
- func (c *Client) StartTakeover(ctx context.Context, body TakeoverStart) (TakeoverStartResult, error)
- func (c *Client) StartUnderAttack(ctx context.Context, name, domain string, minutes int) (ShieldPolicyResource, error)
- func (c *Client) StatusPagePreview(ctx context.Context) (StatusPageView, error)
- func (c *Client) StepMigrationChecklist(ctx context.Context, app, step string, req MigrationStepRequest) (MigrationChecklist, error)
- func (c *Client) StopApp(ctx context.Context, name string) (AppResource, error)
- func (c *Client) StopAppWatch(ctx context.Context, appName string) (AppWatchResource, error)
- func (c *Client) StopDatabase(ctx context.Context, name string) (DatabaseResource, error)
- func (c *Client) StopFirewallEdgeAttack(ctx context.Context) (FirewallEdgeAttack, error)
- func (c *Client) StopOrphanedContainer(ctx context.Context, name string) error
- func (c *Client) StopProject(ctx context.Context, id string) (ProjectLifecycleResult, error)
- func (c *Client) StopSplit(ctx context.Context, appName string) (SplitTest, error)
- func (c *Client) StopUnderAttack(ctx context.Context, name, domain string) (ShieldPolicyResource, error)
- func (c *Client) StreamDatabaseLogs(ctx context.Context, name string, onEntry func(LogStreamEntry) error) error
- func (c *Client) StreamDeployEventTimeline(ctx context.Context, id string, onMsg func(DeployEventMessage) error) error
- func (c *Client) StreamDeployLog(ctx context.Context, name, deployID string, onEntry func(LogStreamEntry) error) error
- func (c *Client) StreamDeploySteps(ctx context.Context, name, deployID string, onStep func(DeployStepEvent) error) error
- func (c *Client) StreamDeployments(ctx context.Context, onEvent func(DeploymentEvent) error) error
- func (c *Client) StreamLogs(ctx context.Context, name string, onEntry func(LogStreamEntry) error) error
- func (c *Client) StreamModelLogs(ctx context.Context, name string, onEntry func(LogStreamEntry) error) error
- func (c *Client) StreamPipelineRunLogs(ctx context.Context, app, id, job string, onLine func(PipelineLogLine) error) error
- func (c *Client) SweepPreviewEnvironments(ctx context.Context) (SweepPreviewEnvironmentsResult, error)
- func (c *Client) SyncBetaFeatures(ctx context.Context) error
- func (c *Client) TakeoverRun(ctx context.Context, id string) (TakeoverRun, error)
- func (c *Client) TakeoverRuns(ctx context.Context) ([]TakeoverRun, error)
- func (c *Client) TakeoverStatus(ctx context.Context, acceptUnmanaged bool) (TakeoverStatus, error)
- func (c *Client) TeardownPreviewEnvironment(ctx context.Context, appName string, prNumber int) error
- func (c *Client) TestAIProvider(ctx context.Context, id string) (AIProviderTestResource, error)
- func (c *Client) TestAppImportSSH(ctx context.Context, req AppImportSSHProbe) (AppImportSSHResult, error)
- func (c *Client) TestBackupTarget(ctx context.Context, id string) error
- func (c *Client) TestDNSProvider(ctx context.Context, app string, req DNSProviderRequest) (DNSProviderTestResult, error)
- func (c *Client) TestEmailProvider(ctx context.Context, id, to string) (EmailTestResult, error)
- func (c *Client) TestEventWebhook(ctx context.Context, id string) (EventWebhookTestResult, error)
- func (c *Client) TestExistingNotificationChannel(ctx context.Context, id string) error
- func (c *Client) TestExportDestination(ctx context.Context, id string) (ExportTestResult, error)
- func (c *Client) TestExternalDatabase(ctx context.Context, req ExternalDatabaseRequest) (ExternalDatabaseProbe, error)
- func (c *Client) TestGitConnection(ctx context.Context, req TestGitConnectionRequest) (TestGitConnectionResult, error)
- func (c *Client) TestGoogleCloudDNS(ctx context.Context) (GoogleCloudDNSTestResult, error)
- func (c *Client) TestMigrationSource(ctx context.Context, req AppImportRequest) (MigrationSourceTest, error)
- func (c *Client) TestModelEndpoint(ctx context.Context, name string) (EndpointTest, error)
- func (c *Client) TestModelEndpointInput(ctx context.Context, req TestEndpointRequest) (EndpointTest, error)
- func (c *Client) TestNetworkShare(ctx context.Context, id string) error
- func (c *Client) TestNodeProvider(ctx context.Context, provider string) (NodeProviderTestResult, error)
- func (c *Client) TestNotificationChannel(ctx context.Context, kind, notifyURL string) error
- func (c *Client) TestPackageRegistry(ctx context.Context, id string) (NodeProviderTestResult, error)
- func (c *Client) TestPlugin(ctx context.Context, name string) (PluginTestResult, error)
- func (c *Client) TestRegistryCredential(ctx context.Context, id string) error
- func (c *Client) TestStaticRoutes(ctx context.Context, name string, req StaticRoutesTestRequest) (staticroutes.Decision, error)
- func (c *Client) TestStorageDestination(ctx context.Context, id string) (StorageProbeResult, error)
- func (c *Client) TestTrafficExportSink(ctx context.Context, id string) (TrafficExportTestResult, error)
- func (c *Client) TrafficSummary(ctx context.Context) (TrafficSummary, error)
- func (c *Client) TransferAppImportImages(ctx context.Context, id string, body AppImportImagesTransfer) (AppImportImages, error)
- func (c *Client) TransferTeam(ctx context.Context, id, userID string) error
- func (c *Client) TriggerBackup(ctx context.Context, name, targetID string) (BackupHistoryResource, error)
- func (c *Client) TriggerBaseBackup(ctx context.Context, name, targetID string) (BaseBackupHistoryResource, error)
- func (c *Client) TriggerBuild(ctx context.Context, name string, req BuildTriggerRequest) (BuildTriggerResponse, error)
- func (c *Client) TriggerCloneRestore(ctx context.Context, name string, req TriggerCloneRestoreRequest) (CloneRestoreResource, error)
- func (c *Client) TriggerPITRRestore(ctx context.Context, name, baseBackupID, targetTime, restoreAs string) (PITRRestoreHistoryResource, error)
- func (c *Client) TriggerRestore(ctx context.Context, name, backupID string) (RestoreHistoryResource, error)
- func (c *Client) TriggerVolumeBackup(ctx context.Context, name, volume, targetID string) (BackupHistoryResource, error)
- func (c *Client) TriggerVolumeCloneRestore(ctx context.Context, name, volume string, req TriggerVolumeCloneRestoreRequest) (VolumeCloneRestoreResource, error)
- func (c *Client) TriggerVolumeRestore(ctx context.Context, name, volume, backupID string) (RestoreHistoryResource, error)
- func (c *Client) TrimLogBudget(ctx context.Context, app string) (LogTrimResult, error)
- func (c *Client) URL(path string) string
- func (c *Client) UnallowSecretFingerprint(ctx context.Context, name, fingerprint string) error
- func (c *Client) UnbindAppBucket(ctx context.Context, app, id string) error
- func (c *Client) UncordonNode(ctx context.Context, id string) (NodeResource, error)
- func (c *Client) UndoAutomationRun(ctx context.Context, id string) (UndoResult, error)
- func (c *Client) UnlinkProvider(ctx context.Context, provider string) error
- func (c *Client) UnlockPublishing(ctx context.Context, appName string) (PublishLockResource, error)
- func (c *Client) UnrestrictDomainPort(ctx context.Context, name, domain string, port int) (DomainPortsResource, error)
- func (c *Client) UpdateAIControl(ctx context.Context, req UpdateAIControlRequest) (AIControlResource, error)
- func (c *Client) UpdateAlertRule(ctx context.Context, name, id string, req UpdateAlertRuleRequest) (AlertRuleResource, error)
- func (c *Client) UpdateApp(ctx context.Context, name string, app AppResource) (AppResource, error)
- func (c *Client) UpdateBackupTarget(ctx context.Context, id string, req UpdateBackupTargetRequest) (BackupTargetResource, error)
- func (c *Client) UpdateCodeLoginSettings(ctx context.Context, in CodeLoginSettingsUpdate) (CodeLoginSettings, error)
- func (c *Client) UpdateControlPlaneDR(ctx context.Context, s ControlPlaneDRSettings) (ControlPlaneDR, error)
- func (c *Client) UpdateCostBudget(ctx context.Context, id string, body map[string]any) (costbudget.Budget, error)
- func (c *Client) UpdateDNSRecord(ctx context.Context, name, domain string, req UpdateDNSRecordRequest) (DNSRecordsResponse, error)
- func (c *Client) UpdateDNSZoneRecord(ctx context.Context, provider, zone string, original DNSRecordKey, ...) (DNSRecordWrite, error)
- func (c *Client) UpdateDashboardURL(ctx context.Context, req DashboardURLResource) (DashboardURLResource, error)
- func (c *Client) UpdateDockerGuard(ctx context.Context, req UpdateDockerGuardRequest) (DockerGuardResource, error)
- func (c *Client) UpdateDomainAutomation(ctx context.Context, p DomainAutomationOverride) (DomainAutomationResource, error)
- func (c *Client) UpdateEdgeSettings(ctx context.Context, u EdgeSettingsUpdate) (EdgeSettings, error)
- func (c *Client) UpdateEmailBranding(ctx context.Context, req EmailBranding) (EmailBranding, error)
- func (c *Client) UpdateEmailProvider(ctx context.Context, id string, req EmailProvider) (EmailProvider, error)
- func (c *Client) UpdateEmailSettings(ctx context.Context, req EmailSettingsResource) (EmailSettingsResource, error)
- func (c *Client) UpdateEnvSettings(ctx context.Context, app string, in EnvSettingsUpdate) (EnvSettings, error)
- func (c *Client) UpdateEnvironment(ctx context.Context, id string, req UpdateEnvironmentRequest) (EnvironmentResource, error)
- func (c *Client) UpdateEventWebhook(ctx context.Context, id string, req UpdateEventWebhookRequest) (EventWebhookResource, error)
- func (c *Client) UpdateExportDestination(ctx context.Context, id string, req UpdateExportDestinationRequest) (ExportDestinationResource, error)
- func (c *Client) UpdateFeatureFlag(ctx context.Context, name, id string, req FeatureFlagRequest) (FeatureFlagResource, error)
- func (c *Client) UpdateFirewallEdgeRule(ctx context.Context, id string, r edgefw.Rule, force bool) (FirewallEdgeRule, error)
- func (c *Client) UpdateForm(ctx context.Context, app, form string, req FormRequest) (Form, error)
- func (c *Client) UpdateIngressSettings(ctx context.Context, req IngressSettingsResource) (IngressSettingsResource, error)
- func (c *Client) UpdateJanitorPolicy(ctx context.Context, patch JanitorPolicyPatch) (JanitorPolicy, error)
- func (c *Client) UpdateJob(ctx context.Context, app, id string, req ScheduledTaskRequest) (ScheduledTaskResource, error)
- func (c *Client) UpdateKeyPolicy(ctx context.Context, upd KeyPolicyUpdate) (EncryptionKeysStatus, error)
- func (c *Client) UpdateMaintenanceWindow(ctx context.Context, id string, req MaintenanceWindowResource) (MaintenanceWindowResource, error)
- func (c *Client) UpdateMeshSettings(ctx context.Context, req UpdateMeshSettingsRequest) (MeshSettings, error)
- func (c *Client) UpdateNetworkShare(ctx context.Context, id string, req UpdateNetworkShareRequest) (NetworkShareResource, error)
- func (c *Client) UpdateNodeGuardrails(ctx context.Context, id string, s NodeGuardrailSettings) (NodeCapacityResource, error)
- func (c *Client) UpdateNotificationChannel(ctx context.Context, id string, req UpdateNotificationChannelRequest) (NotificationChannelResource, error)
- func (c *Client) UpdateOAuthProviderSettings(ctx context.Context, provider string, req UpdateOAuthProviderSettingsRequest) (OAuthProviderSettingsResource, error)
- func (c *Client) UpdatePipeline(ctx context.Context, app, name string, req PipelineSaveRequest) (PipelineResource, error)
- func (c *Client) UpdatePolicy(ctx context.Context, id string, req PolicyRequest) (PolicyResource, error)
- func (c *Client) UpdatePrivateNetwork(ctx context.Context, id string, req PrivateNetworkRequest) (PrivateNetworkChange, error)
- func (c *Client) UpdateProxyIntegrationSettings(ctx context.Context, s ProxyIntegrationSettings) (ProxyIntegrationSettings, error)
- func (c *Client) UpdateRegistryCredential(ctx context.Context, id string, req UpdateRegistryCredentialRequest) (RegistryCredentialResource, error)
- func (c *Client) UpdateRegistrySettings(ctx context.Context, req UpdateRegistrySettingsRequest) (RegistrySettingsResource, error)
- func (c *Client) UpdateRole(ctx context.Context, id string, req RoleRequest) (RoleResource, error)
- func (c *Client) UpdateSAMLConnection(ctx context.Context, id string, req SAMLConnectionRequest) (SAMLConnection, error)
- func (c *Client) UpdateScheduledTask(ctx context.Context, name, id string, req ScheduledTaskRequest) (ScheduledTaskResource, error)
- func (c *Client) UpdateSecurityPolicy(ctx context.Context, in SecurityPolicyUpdate) (SecurityPolicy, error)
- func (c *Client) UpdateStandaloneDomain(ctx context.Context, domain string, req StandaloneDomainRequest) (StandaloneDomain, error)
- func (c *Client) UpdateStorageBucket(ctx context.Context, id string, req UpdateStorageBucketRequest) (StorageBucket, error)
- func (c *Client) UpdateTrafficExportSink(ctx context.Context, id string, req TrafficExportSink) (TrafficExportSink, error)
- func (c *Client) UpdateUsageSettings(ctx context.Context, u UsageSettingsUpdate) (UsageSettings, error)
- func (c *Client) UpdateUserAbilities(ctx context.Context, id string, req UpdateUserAbilitiesRequest) (UserResource, error)
- func (c *Client) UpgradeBackupNow(ctx context.Context) (UpgradeBackupNowResult, error)
- func (c *Client) UpgradeDatabaseNow(ctx context.Context, name, version, confirm string) (DBUpgradeRun, error)
- func (c *Client) UpgradePlugin(ctx context.Context, name string, in InstallPluginInput) (Plugin, error)
- func (c *Client) UploadBenchmark(ctx context.Context, file []byte) (BenchmarkRunSummary, error)
- func (c *Client) UploadBucketObject(ctx context.Context, id, key string, data []byte) (BucketObject, error)
- func (c *Client) UploadSiteZip(ctx context.Context, name string, archive io.Reader, size int64, ...) (SourceUpload, error)
- func (c *Client) UploadSource(ctx context.Context, name string, archive io.Reader, size int64, ...) (SourceUpload, error)
- func (c *Client) UseGitConnectionRepoAsSource(ctx context.Context, id string, req UseRepoAsSourceRequest) (GitSourceResource, error)
- func (c *Client) UseGitHubRepoAsSource(ctx context.Context, owner, repo string, req UseRepoAsSourceRequest) (UseGitHubRepoAsSourceResponse, error)
- func (c *Client) ValidateGitProvider(ctx context.Context, provider string) (GitAccessResult, error)
- func (c *Client) ValidateGitSourceAccess(ctx context.Context, app string) (GitAccessResult, error)
- func (c *Client) ValidateImageSignaturePolicy(ctx context.Context, req ImageSignaturePolicyRequest) (ImageSignaturePolicyResource, error)
- func (c *Client) ValidatePipeline(ctx context.Context, yamlText string) (PipelineValidation, error)
- func (c *Client) VerifyAppImport(ctx context.Context, id string, items []string) (AppImportView, error)
- func (c *Client) VerifyArchive(ctx context.Context, id string) (ArchiveVerifyResult, error)
- func (c *Client) VerifyAuditLog(ctx context.Context) (AuditChainReport, error)
- func (c *Client) VerifyBackup(ctx context.Context, name, historyID string) (BackupVerificationResource, error)
- func (c *Client) VerifyControlPlaneBackup(ctx context.Context, name string) (ControlPlaneBackupVerification, error)
- func (c *Client) VerifyEvidencePack(ctx context.Context, id string) (EvidenceVerifyReport, error)
- func (c *Client) VerifyImage(ctx context.Context, req ImageVerifyRequest) (ImageVerifyResource, error)
- func (c *Client) VerifyMigration(ctx context.Context, req MigrationVerifyRequest) (MigrationVerifyReport, error)
- func (c *Client) VerifyMigrationAgent(ctx context.Context, id, app string, targets []MigrationAgentVerifyTarget, ...) (MigrationAgentVerifyResult, error)
- func (c *Client) VerifyProxyIntegration(ctx context.Context, domain string) (ProxyIntegration, error)
- func (c *Client) VerifyVolumeBackup(ctx context.Context, name, volume, historyID string) (BackupVerificationResource, error)
- func (c *Client) WaitForDeploy(ctx context.Context, name, deployID string, opts WaitOptions) (WaitResult, error)
- func (c *Client) WakeApp(ctx context.Context, appName string) (AppSleepResource, error)
- func (c *Client) WakeModel(ctx context.Context, name string) error
- func (c *Client) Whoami(ctx context.Context) (WhoamiResource, error)
- type CloneAppRequest
- type ClonePreview
- type CloneRestoreResource
- type CloudflareDNSResource
- type CloudflareTunnelResource
- type CodeLoginSettings
- type CodeLoginSettingsUpdate
- type CompleteAccessReviewResult
- type ComposeDeployResult
- type ComposeDownResult
- type ComposePreview
- type ComposeRevision
- type ComposeRollbackResult
- type ComposeStack
- type ComposeStackDeploy
- type ComposeStackService
- type ConditionResource
- type ConnectableDatabaseResource
- type ConsoleBulkResult
- type ConsoleBulkTagRequest
- type ConsoleBulkTagResponse
- type ConsoleList
- type ConsoleQuery
- type ConsoleRef
- type ConsoleResource
- type ConsoleView
- type ContainerPortResource
- type ContainerResource
- type ControlPlaneBackup
- type ControlPlaneBackupCheck
- type ControlPlaneBackupVerification
- type ControlPlaneDR
- type ControlPlaneDRChecklist
- type ControlPlaneDRDrill
- type ControlPlaneDRSettings
- type ControlPlaneDRWarning
- type ControlPlaneEscrowBundle
- type ControlPlaneOffboxBackup
- type ControlPlaneReplica
- type ControlPlaneRestoreBackup
- type ControlPlaneRestorePlan
- type ControlPlaneRestoreStep
- type CostBudgetStatus
- type CostBudgets
- type CostEstimateProviderResource
- type CostEstimateResource
- type CostExploration
- type CostExploreQuery
- type CoverageRowResource
- type CoverageSummaryResource
- type CreateAIChatMessageRequest
- type CreateAccessReviewRequest
- type CreateAlertRuleRequest
- type CreateAppConnectionRequest
- type CreateAppStreamRequest
- type CreateBackupTargetRequest
- type CreateDeployNotifyTargetRequest
- type CreateEnvironmentRequest
- type CreateEventWebhookRequest
- type CreateExportDestinationRequest
- type CreateFirewallRuleRequest
- type CreateGitConnectionRequest
- type CreateGlobalEnvironmentRequest
- type CreateInviteRequest
- type CreateInviteResponse
- type CreateIssueSilenceRequest
- type CreateModelDetailResponse
- type CreateModelKeyRequest
- type CreateModelRequest
- type CreateModelResponse
- type CreateNetworkShareRequest
- type CreateNodeJoinTokenRequest
- type CreateNodeJoinTokenResponse
- type CreateNodeProvisionRequest
- type CreateNotificationChannelRequest
- type CreateOrganizationRequest
- type CreatePackageRegistryRequest
- type CreateProjectRequest
- type CreateRegistryCredentialRequest
- type CreateSSHNodeProvisionRequest
- type CreateSilenceRequest
- type CreateStorageBucketRequest
- type CreateTagRequest
- type CreateTeamInviteRequest
- type CreateUserRequest
- type CreatedModelKeyResource
- type Credentials
- type CustomTemplateDetail
- type CustomTemplateListItem
- type CutoverChange
- type CutoverCheck
- type CutoverDomain
- type CutoverReport
- type DBCatalogStatus
- type DBUpgradeAdvice
- type DBUpgradePolicy
- type DBUpgradeRun
- type DBUpgradeSummary
- type DBUpgradeSummaryItem
- type DBUpgradeTarget
- type DBUpgradesResource
- type DBVersionInfo
- type DBVersionSource
- type DBVersions
- type DNSCapabilities
- type DNSChange
- type DNSDelegation
- type DNSHealthCheck
- type DNSImportRequest
- type DNSImportResult
- type DNSIssue
- type DNSPropagation
- type DNSPropagationAnswer
- type DNSProviderEffective
- type DNSProviderFix
- type DNSProviderInfo
- type DNSProviderPlugin
- type DNSProviderRequest
- type DNSProviderState
- type DNSProviderTestResult
- type DNSRecordKey
- type DNSRecordResource
- type DNSRecordSet
- type DNSRecordSuggestion
- type DNSRecordWrite
- type DNSRecordsList
- type DNSRecordsResponse
- type DNSResolverDelegation
- type DNSZone
- type DNSZoneResult
- type DNSZonesList
- type DashboardResource
- type DashboardTemplate
- type DashboardURLResource
- type DashboardWrite
- type DataCopyFailure
- type DataCopySource
- type DataCopyStatus
- type DataCopyTable
- type DatabaseClient
- type DatabaseColumnResource
- type DatabaseCredential
- type DatabaseEngineResource
- type DatabaseGrant
- type DatabaseGrantRequest
- type DatabaseIndexResource
- type DatabaseLink
- type DatabaseNetwork
- type DatabasePasswordRotation
- type DatabasePolicyRef
- type DatabasePrincipal
- type DatabasePublicAccessResource
- type DatabaseQueryRequest
- type DatabaseQueryResult
- type DatabaseResource
- type DatabaseRevealedCredential
- type DatabaseRule
- type DatabaseRulesPlan
- type DatabaseRulesRequest
- type DatabaseSchemaNodeResource
- type DatabaseSchemaResource
- type DatabaseScopeResult
- type DatabaseScopeVerdict
- type DatabaseTLSToggle
- type DatabaseTTLLimits
- type DatabaseTableResource
- type DatabaseTemp
- type DatabaseTempIssued
- type DatabaseTempList
- type DatabaseUser
- type DatabaseUserCreateRequest
- type DatabaseUserCreated
- type DatabaseWho
- type DefaultAlert
- type DeleteAppResult
- type DeployApprovalDecisionResult
- type DeployApprovalListResult
- type DeployApprovalResource
- type DeployAttemptFilter
- type DeployAttemptResource
- type DeployCompareEnvChange
- type DeployCompareField
- type DeployCompareResource
- type DeployCompareSide
- type DeployEvent
- type DeployEventComparison
- type DeployEventImpact
- type DeployEventMessage
- type DeployEventPhase
- type DeployEventPhaseDelta
- type DeployEventTimeline
- type DeployEventTrigger
- type DeployEventWindow
- type DeployFailure
- type DeployFailureFix
- type DeployFreezeResource
- type DeployFromCacheRequest
- type DeployGateResource
- type DeployNotifyTargetResource
- type DeployPolicy
- type DeployPolicyRule
- type DeploySafetyOverrides
- type DeploySafetyResource
- type DeploySafetySettingsResource
- type DeploySpecRequest
- type DeploySpecResult
- type DeploySpecService
- type DeploySpecServiceBuild
- type DeploySpecServiceEnv
- type DeploySpecServiceHealth
- type DeploySpecServiceHooks
- type DeploySpecServiceProbe
- type DeploySpecServiceResources
- type DeploySpecServiceResult
- type DeployStepEvent
- type DeploySuggestion
- type DeployTriggerRequest
- type DeployTriggerResult
- type DeploymentDay
- type DeploymentEvent
- type DeploymentList
- type DeploymentListOptions
- type DeploymentResource
- type DeploymentSteps
- type DeploymentSummary
- type DetectFrameworkResource
- type Detection
- type DetectionReason
- type DeviceActivity
- type DevicePendingLogin
- type DeviceStartRequest
- type DeviceStartResponse
- type DeviceTokenRequest
- type DeviceTokenResponse
- type DiagnosisCause
- type DiagnosisChange
- type DiagnosisFix
- type DiagnosisResource
- type DiagnosisSignal
- type DimensionRecommendationResource
- type DiskResilience
- type DockerGuardResource
- type DockerGuardRuleCount
- type DockerGuardRuleSummary
- type DockerHealthCheck
- type DockerHealthResource
- type DockerLintFinding
- type DockerLintResource
- type DoctorAction
- type DoctorCheck
- type DoctorCheckResource
- type DoctorFix
- type DoctorPropagation
- type DoctorRecord
- type DomainAuthGateResource
- type DomainAutomationOverride
- type DomainAutomationPolicy
- type DomainAutomationResource
- type DomainBasicAuthResource
- type DomainCertStatus
- type DomainCheckResource
- type DomainDNSResult
- type DomainDoctorReport
- type DomainErrorPageEntry
- type DomainErrorPagesResource
- type DomainIssue
- type DomainMaintenanceResource
- type DomainPoliciesResource
- type DomainPortsResource
- type DomainReachability
- type DomainRedirectResource
- type DomainRedirectsResource
- type DomainResource
- type DomainRewrite
- type DomainSearchVisibilityResource
- type DomainTLSCertResource
- type DomainWAFResource
- type DrainBlocked
- type DrainBlockedResource
- type DrainNodeResponse
- type DrillSummaryResource
- type EdgeDetection
- type EdgeEffective
- type EdgeGuidance
- type EdgeLimitValue
- type EdgeSettings
- type EdgeSettingsUpdate
- type EditDomainsRequest
- type EditDomainsResult
- type EffectiveConfig
- type EffectiveEnvEntry
- type EffectiveSessionPolicy
- type EffectiveSetting
- type EmailBranding
- type EmailBrandingPreview
- type EmailDelivery
- type EmailDeliveryList
- type EmailDeliveryQuery
- type EmailDomainCheck
- type EmailFooterLink
- type EmailProvider
- type EmailProviderList
- type EmailRecordCheck
- type EmailSecretRevealed
- type EmailSettingsResource
- type EmailStatus
- type EmailTestResult
- type EnableHTTPSRequest
- type EncryptionKeyFix
- type EncryptionKeyHint
- type EncryptionKeysStatus
- type EndpointDiagnosis
- type EndpointHealth
- type EndpointTest
- type EngineHealth
- type EngineMetricPoint
- type EngineMetricSeries
- type EngineMetricsReport
- type EnvChangeResource
- type EnvCheckResource
- type EnvFindingResource
- type EnvFixResource
- type EnvScanFinding
- type EnvScanResponse
- type EnvSettings
- type EnvSettingsUpdate
- type EnvironmentCloneAppInput
- type EnvironmentCloneAppPreview
- type EnvironmentCloneAppResult
- type EnvironmentClonePreviewResource
- type EnvironmentCloneRequest
- type EnvironmentCloneResultResource
- type EnvironmentCompareResource
- type EnvironmentCompareSide
- type EnvironmentDomainSet
- type EnvironmentEnvDiffEntry
- type EnvironmentEnvEntryResource
- type EnvironmentGrants
- type EnvironmentResource
- type ErrorEvent
- type ErrorIssue
- type ErrorIssueDetail
- type ErrorListOptions
- type ErrorTrackingResource
- type EvaluateFlagResource
- type EventDeliveryResource
- type EventWebhookResource
- type EventWebhookTestResult
- type EvidenceFileCheck
- type EvidencePackResource
- type EvidenceVerifyReport
- type ExecAccessResource
- type ExecRequest
- type ExecResponse
- type ExportDestinationResource
- type ExportOptions
- type ExportStatus
- type ExportTestResult
- type ExposureFinding
- type ExposureNode
- type ExposureOutsideCheck
- type ExposureOwner
- type ExposurePlan
- type ExposureReport
- type ExposureRestrictRequest
- type ExposureRestriction
- type ExternalDatabase
- type ExternalDatabaseCandidate
- type ExternalDatabaseHealth
- type ExternalDatabaseProbe
- type ExternalDatabaseRequest
- type ExternalEndpoint
- type ExternalEndpointRequest
- type FailedDeployResource
- type FailureContextDeploy
- type FailureContextLine
- type FailureContextResource
- type FailureSimulation
- type FeatureFlagRequest
- type FeatureFlagResource
- type FirewallEdgeAttack
- type FirewallEdgeAuditEntry
- type FirewallEdgeBan
- type FirewallEdgeHits
- type FirewallEdgeIPEntry
- type FirewallEdgeRule
- type FirewallEdgeSettings
- type FirewallEdgeStatus
- type FirewallEdgeTopRow
- type FirewallEdgeTraffic
- type FirewallRuleResource
- type Fix
- type FixAttempt
- type FixChange
- type FixResult
- type FleetMaintenanceEntry
- type FleetMaintenanceResource
- type FleetResourceUsageResource
- type FleetResourceUsageRollup
- type Form
- type FormRequest
- type FormSubmission
- type FormSubmissionFilter
- type FormSubmissionsPage
- type FormTestResult
- type FormsList
- type ForwardersPolicyResource
- type FreeSpaceResult
- type FreezeWindowResource
- type FunctionInvocation
- type FunctionInvocations
- type FunctionInvokeRequest
- type FunctionInvokeResult
- type FunctionKVKey
- type FunctionKVList
- type FunctionKVValue
- type FunctionResource
- type FunctionRoute
- type FunctionRoutes
- type FunctionRuntime
- type FunctionRuntimes
- type FunctionSchedule
- type FunctionSettings
- type FunctionSettingsUpdate
- type FunctionTriggers
- type FunctionVersion
- type FunctionWebhook
- type FunctionsList
- type GPUDeviceResource
- type GPUNodeResource
- type GateEventResource
- type GeoIPLookupResource
- type GeoPolicyResource
- type GeoStatus
- type GetCertRequest
- type GitAccessCheck
- type GitAccessFix
- type GitAccessResult
- type GitAppBranchResource
- type GitBuildDetection
- type GitBuildSuggestion
- type GitCommit
- type GitCommitSummary
- type GitConnectionResource
- type GitDeploySettings
- type GitDisconnectResource
- type GitHubAppInstallationListResource
- type GitHubAppInstallationResource
- type GitHubAppRepoListErrResource
- type GitHubAppRepoListResource
- type GitHubAppRepoResource
- type GitHubAppStatusResource
- type GitPollStatusResource
- type GitProviderConnectionResource
- type GitProviderResource
- type GitRemote
- type GitRepoConnectionFacet
- type GitRepoListParams
- type GitRepoListResource
- type GitRepoOwnerCount
- type GitRepoRateLimit
- type GitRepoResource
- type GitSourceAffected
- type GitSourceAffectedEntry
- type GitSourceCommits
- type GitSourceResolvedBuild
- type GitSourceResource
- type GitTokenDetails
- type GitWebhookRegistrationResource
- type GlobalEnvironmentResource
- type GoLiveChecklist
- type GoLivePlanRequest
- type GoLivePlanResponse
- type GoLiveRequest
- type GoLiveResult
- type GoLiveStep
- type GoogleCloudDNSResource
- type GoogleCloudDNSTestResult
- type HSTSHost
- type HSTSStatus
- type HTTPSPreflightPort
- type HTTPSStatusResource
- type HeadersPolicyResource
- type HealthDiscoveryAttempt
- type HealthDiscoveryResponse
- type HookRunResource
- type HostFirewallActionRequest
- type HostFirewallPort
- type HostFirewallResource
- type HubCheck
- type HubItem
- type HubLocalSource
- type HubPreflight
- type HubSelection
- type HubSession
- type HubSource
- type HubSummary
- type IAMAbilityUse
- type IAMAnalysis
- type IAMEffective
- type IAMEffectiveAbility
- type IAMFinding
- type IAMPolicyBrief
- type IAMPrincipal
- type IAMSimulation
- type IAMStatementRef
- type IAMSuggestions
- type IAMTokenSuggestion
- type IaCFile
- type IaCIssuesError
- type IaCRequest
- type ImageAppUse
- type ImageAutoUpdateResource
- type ImageEntry
- type ImageGCFailure
- type ImageGCRequest
- type ImageGCResource
- type ImageLayer
- type ImageLayersResource
- type ImageListResource
- type ImageResource
- type ImageRetention
- type ImageSignatureIssue
- type ImageSignaturePolicyRequest
- type ImageSignaturePolicyResource
- type ImageSignatureStatus
- type ImageStatusResource
- type ImageTotals
- type ImageUpdateWebhookResource
- type ImageVerifyRequest
- type ImageVerifyResource
- type ImportAnalysis
- type ImportAnalyzeRequest
- type ImportCutoverAction
- type ImportCutoverCheck
- type ImportCutoverDomainPlan
- type ImportCutoverDomainRun
- type ImportCutoverFix
- type ImportCutoverPlan
- type ImportCutoverRecord
- type ImportCutoverRun
- type ImportCutoverStart
- type ImportCutoverStep
- type ImportEnvVar
- type ImportPlan
- type ImportPlanRequest
- type ImportPort
- type ImportRepoApplyPackage
- type ImportRepoApplyRequest
- type ImportRepoApplyResponse
- type ImportRepoApplyResult
- type ImportRepoPlanRequest
- type ImportService
- type ImportVolume
- type ImportWarning
- type InboxClearRequest
- type InboxClearResult
- type InboxItem
- type InboxPrefs
- type InboxState
- type IngressConnectivity
- type IngressConnectivityPort
- type IngressSettingsResource
- type InstallPluginInput
- type InstanceInfo
- type IntegrationCatalogEntryResource
- type IntegrationCatalogEnvVarResource
- type Integrity
- type IntegrityCandidate
- type IntegrityPending
- type IntegrityRestore
- type IntegrityStatus
- type InvestigateEvent
- type InvestigateRoute
- type InvestigateStatus
- type InvestigateSummary
- type InvestigationResource
- type InviteResource
- type IssueSilenceResource
- type JanitorItem
- type JanitorPolicy
- type JanitorPolicyPatch
- type JanitorQuarantined
- type JanitorReport
- type JanitorStage
- type JanitorStatus
- type JobHTTP
- type JobRunResource
- type JoinCommands
- type KeepTrialResult
- type KeyPolicy
- type KeyPolicyUpdate
- type KeyRotationRun
- type ListAppsOptions
- type ListAuditLogOptions
- type ListBackupsOptions
- type ListNodesOptions
- type ListWebhookDeliveriesOptions
- type LoadBalancerActiveHealth
- type LoadBalancerArtifact
- type LoadBalancerCheck
- type LoadBalancerConfig
- type LoadBalancerHistory
- type LoadBalancerList
- type LoadBalancerListParams
- type LoadBalancerPassiveHealth
- type LoadBalancerRateLimit
- type LoadBalancerResource
- type LoadBalancerRetries
- type LoadBalancerStatus
- type LoadBalancerSummary
- type LoadBalancerUpstreamStatus
- type LoadBalancerUpstreamTLS
- type LocalModel
- type LocalModelCard
- type LocalModelCatalog
- type LogArchiveDumpRequest
- type LogArchiveObject
- type LogArchiveObjects
- type LogArchivePolicy
- type LogArchivePolicyRequest
- type LogArchiveRun
- type LogBudget
- type LogDrainResource
- type LogEntryResource
- type LogExcerpt
- type LogPipeline
- type LogPipelinePreview
- type LogPipelinePreviewLine
- type LogPipelineRule
- type LogQuery
- type LogQuerySpec
- type LogSearch
- type LogSearchContainer
- type LogSearchEntry
- type LogSearchResource
- type LogSignature
- type LogSignatureQuery
- type LogSignatures
- type LogStreamEntry
- type LogTrimResult
- type LogUsage
- type LogUsageApp
- type MailAudiencePreview
- type MailBroadcast
- type MailBroadcastPlan
- type MailBroadcastRequest
- type MailGroup
- type MailGroupDetail
- type MailPreview
- type MailRules
- type MailTemplate
- type MailTemplateBody
- type MailToken
- type MaintenancePreviewResource
- type MaintenanceWindowResource
- type MajorUpgradeResource
- type MarketplaceCatalog
- type MarketplaceEntry
- type MarketplaceInstallInput
- type MarketplaceInstallResult
- type MarketplacePreview
- type MarketplaceSource
- type MasterKeyStatus
- type MeshCheck
- type MeshConnectivity
- type MeshConnectivityNode
- type MeshLink
- type MeshPair
- type MeshPeerResource
- type MeshRotationResource
- type MeshSettings
- type MeshStatusResource
- type MetricPointResource
- type MetricSeriesPoint
- type MetricsQueryOptions
- type MetricsSeriesResource
- type MigrationAgentComparison
- type MigrationAgentContainer
- type MigrationAgentCreated
- type MigrationAgentDetail
- type MigrationAgentInventory
- type MigrationAgentMount
- type MigrationAgentSession
- type MigrationAgentVerifyResult
- type MigrationAgentVerifyTarget
- type MigrationChecklist
- type MigrationChecklistStep
- type MigrationChecklistVolume
- type MigrationJob
- type MigrationJobDatabase
- type MigrationJobItem
- type MigrationOverride
- type MigrationPlanReport
- type MigrationProbe
- type MigrationProbeCheck
- type MigrationSourceRequest
- type MigrationSourceTest
- type MigrationStepRequest
- type MigrationVerifyReport
- type MigrationVerifyRequest
- type MigrationVolumeStat
- type MobileDevice
- type MobilePairingCode
- type ModelAPIKeyResource
- type ModelBenchPrompt
- type ModelBenchmarkResult
- type ModelCPUFields
- type ModelCacheEntry
- type ModelCacheNode
- type ModelCachePruneResult
- type ModelCacheReport
- type ModelCacheSkip
- type ModelDetail
- type ModelDownload
- type ModelFitReport
- type ModelFitRequest
- type ModelKeyResource
- type ModelKeyUsage
- type ModelLimits
- type ModelPreflightRequest
- type ModelPreflightResult
- type ModelResource
- type ModelStatusResource
- type ModelUsagePoint
- type ModelUsageReport
- type ModelUsageTotals
- type MoveAppWithVolumesRequest
- type MoveEnvironmentRequest
- type MoveEnvironmentResult
- type MyAccessCapability
- type MyAccessPolicy
- type MyAccessResource
- type MyAccessTeam
- type MyActivity
- type MyActivityEntry
- type MyActivityOptions
- type MyCredentials
- type NetworkPool
- type NetworkProxyDomainResource
- type NetworkProxyResource
- type NetworkResource
- type NetworkShareResource
- type NetworkTopologyAppResource
- type NetworkTopologyConnectionResource
- type NetworkTopologyDatabaseResource
- type NetworkTopologyLoadBalancerResource
- type NetworkTopologyNodeResource
- type NetworkTopologyResource
- type NodeAgentResource
- type NodeAlertStatusResource
- type NodeAllocation
- type NodeAllocations
- type NodeCapacityForecastResource
- type NodeCapacityMetric
- type NodeCapacityResource
- type NodeCapacityStatus
- type NodeCertDrill
- type NodeCertDrillCert
- type NodeCertDrillStep
- type NodeCertRenewal
- type NodeCertResource
- type NodeCleanupClass
- type NodeCleanupItem
- type NodeCleanupResult
- type NodeCleanupRunResource
- type NodeDetectedDomain
- type NodeDomainGroup
- type NodeDomainRisk
- type NodeDomains
- type NodeDrainPreview
- type NodeDrainResource
- type NodeFailureAction
- type NodeFailurePolicy
- type NodeFailureStatus
- type NodeFailureSummary
- type NodeFit
- type NodeGPUResource
- type NodeGuardrailSettings
- type NodeLabels
- type NodeMetricsResource
- type NodeMoveResource
- type NodeMoveStep
- type NodeOnboarding
- type NodePatchStatusResource
- type NodePreflightCheck
- type NodePreflightSummary
- type NodeProviderRegionResource
- type NodeProviderResource
- type NodeProviderSizeResource
- type NodeProviderTestResult
- type NodeProvisionResource
- type NodeReenrollTokenResponse
- type NodeResource
- type NodeResourceUsageResource
- type NodeSecurityEvent
- type NodeStatusEventResource
- type NodeTrust
- type NodeTrustCA
- type NodeTrustCert
- type NodeTrustRenewal
- type NodeTrustStatus
- type NodeTrustValidation
- type NotificationChannelResource
- type NotificationDeliveryResource
- type OAuthProviderSettingsResource
- type OAuthSSOEvaluateRequest
- type OAuthSSOEvaluation
- type OAuthSSOFix
- type OAuthSSOIssue
- type OAuthSSOPolicy
- type OAuthSSOPolicyRequest
- type OnboardingStateResource
- type OpenAPIRouteResource
- type OpenAPISpecResource
- type Option
- type OrganizationResource
- type OrphanFailure
- type OrphanFinding
- type OrphanReport
- type OrphanResource
- type OrphanedVolumeResource
- type OutageCheck
- type OutageReport
- type OutageScope
- type PITRRestoreHistoryResource
- type PITRStatusResource
- type PRPreviewEnvOverride
- type PackageRegistryResource
- type PatchEnvironmentRequest
- type PendingChange
- type PendingChanges
- type PendingJoinToken
- type PipelineApproval
- type PipelineArtifact
- type PipelineFix
- type PipelineFixResult
- type PipelineHold
- type PipelineInsights
- type PipelineIssue
- type PipelineJobDelta
- type PipelineJobInsight
- type PipelineJobView
- type PipelineLogLine
- type PipelineOIDCResource
- type PipelineOIDCRotation
- type PipelineParameter
- type PipelineReport
- type PipelineResource
- type PipelineRunResource
- type PipelineRunRow
- type PipelineRunRowsPage
- type PipelineRunsQuery
- type PipelineSaveRequest
- type PipelineStartRequest
- type PipelineStepView
- type PipelineSyncItem
- type PipelineSyncResult
- type PipelineSyncStatus
- type PipelineTrigger
- type PipelineValidation
- type PipelineWebhook
- type PipelineWebhookDelivery
- type PipelineWebhookRequest
- type PlacementDecision
- type PlacementDecisionView
- type PlacementDimension
- type PlacementEvaluation
- type PlacementNeeds
- type PlacementPolicy
- type PlacementRejection
- type PlacementResource
- type PlacementSimulation
- type PlatformImportItem
- type PlatformImportReport
- type PlatformImportRequest
- type Plugin
- type PluginActionResult
- type PluginCommand
- type PluginKey
- type PluginManifest
- type PluginPanel
- type PluginPanelColumn
- type PluginPanelPoint
- type PluginPanelRow
- type PluginPanelView
- type PluginPreview
- type PluginTestResult
- type PluginVerification
- type PluginWidgetView
- type PolicyAttachmentResource
- type PolicyCheckApp
- type PolicyCheckRequest
- type PolicyCheckResult
- type PolicyDocument
- type PolicyLimits
- type PolicyPreviewHops
- type PolicyPreviewRequest
- type PolicyPreviewResponse
- type PolicyRequest
- type PolicyResource
- type PolicyStatement
- type PolicyTemplate
- type PolicyTemplateList
- type PolicyTemplateParam
- type PolicyViolation
- type PortHolder
- type PortStream
- type PostureCounts
- type PostureFix
- type PostureItem
- type Preferences
- type PreflightCheck
- type PreflightDisk
- type PreflightFile
- type PreflightNode
- type PreflightQuant
- type PreflightReport
- type PreflightSelection
- type PreviewDatabaseIsolationResource
- type PreviewEnvironmentResource
- type PreviewEphemeralDatabaseResource
- type PreviewLimitsResource
- type PreviewPolicyResource
- type PreviewPruneResult
- type PreviewRecord
- type PreviewSettingsRequest
- type PreviewSettingsResource
- type PreviewStatus
- type PreviewsOverview
- type PrivateNetworkChange
- type PrivateNetworkList
- type PrivateNetworkMap
- type PrivateNetworkMapApp
- type PrivateNetworkMapEdge
- type PrivateNetworkRequest
- type PrivateNetworkResource
- type PrivateNetworkRuleRequest
- type PrivateNetworkRuleResource
- type ProbeAttempt
- type ProfileSummary
- type ProjectLifecycleResult
- type ProjectResource
- type ProjectRestartResponse
- type ProjectTopologyEdgeResource
- type ProjectTopologyNodeResource
- type ProjectTopologyNodeStatus
- type ProjectTopologyResource
- type PromoteAppRequest
- type PromoteDiff
- type PromotePreviewResource
- type PromotePreviewSide
- type ProtectAllRequest
- type ProtectAllResponse
- type ProtectItem
- type ProvisionAttemptResource
- type ProvisionFailureResource
- type ProvisionFixResource
- type ProvisionStepResource
- type ProxyCertificate
- type ProxyDetection
- type ProxyDomain
- type ProxyIngress
- type ProxyInstallFile
- type ProxyInstallMount
- type ProxyInstallPlan
- type ProxyInstallRequest
- type ProxyInstallResult
- type ProxyIntegration
- type ProxyIntegrationSettings
- type ProxyProvider
- type ProxySetupRequest
- type ProxyStep
- type PublishLockResource
- type PurgeAuditLogResult
- type PurgeCacheRequest
- type PurgeCacheResponse
- type PushSubscriptionResource
- type PutDeployFreezeRequest
- type QueuedFunctionCall
- type QuietHoursResource
- type QuotaLimits
- type QuotaResource
- type QuotaUsage
- type ReachCounts
- type ReachEndpoint
- type ReachFinding
- type ReachFix
- type ReachRef
- type ReachReport
- type ReachSubject
- type ReadinessCheck
- type RecentChange
- type RecentChangesResource
- type ReclaimOrphanResponse
- type RecordedPlacement
- type RedirectDomainRow
- type RedirectEffective
- type RegistryCredentialResource
- type RegistryCredentialUsage
- type RegistryRepositoriesResource
- type RegistrySettingsResource
- type RegistryTagsResource
- type RejectDeployApprovalRequest
- type RejoinMeshResponse
- type ReleaseHistory
- type ReleaseHistoryItem
- type ReleaseNoteEntry
- type ReleaseNoteGroup
- type ReleaseNotesResource
- type RenewCertificateResource
- type ReplayWebhookDeliveryResult
- type RepoBranchesResource
- type RepoPlan
- type RepoPlanRow
- type RepoPlanWarning
- type RequestPointResource
- type RequestSummaryResource
- type ResilienceReport
- type ResolveAIChatConfirmationRequest
- type ResolverResult
- type ResourceHealthResource
- type ResourceRecommendationResource
- type RestoreHistoryResource
- type RestorePoint
- type RestorePoints
- type RestoreStarted
- type RetryPolicy
- type RevealResult
- type RevealedLoginCode
- type ReverseProxyCheck
- type ReverseProxyGuide
- type ReverseProxyHolder
- type ReverseProxyPlan
- type RevokeAgentTokensResource
- type RevokeJoinTokensResponse
- type RevokedSessions
- type RoleRequest
- type RoleResource
- type RollbackBackup
- type RollbackChange
- type RollbackPlan
- type RollbackStarted
- type RollbackTarget
- type RollbackTargetResource
- type RollbackToRequest
- type RotateDEKFailure
- type RotateDEKResult
- type RotateKeyResponse
- type RotateMasterKeyRequest
- type RotateMasterKeyResult
- type Route53DNSResource
- type RunBrief
- type RuntimeSettingResource
- type RuntimeSettingWrite
- type RuntimeSettingsListResource
- type RuntimeSettingsRestart
- type SAMLCertificateInfo
- type SAMLConnection
- type SAMLConnectionRequest
- type SAMLMetadataImport
- type SBOMLicenseCount
- type SBOMPackage
- type SBOMSummary
- type SBOMTypeCount
- type SCIMToken
- type SCIMTokenCreated
- type SLOPreviewResource
- type SLOTierStatus
- type SLOWindowStat
- type SSHHostKey
- type SSHNodeProvisionAuthRequest
- type SSHNodeProvisionResource
- type SSHProvisionPreflight
- type SSHProvisionPreflightRequest
- type SSOGroupMapping
- type SSOGroupMappings
- type SSOSettings
- type SaveAppAsTemplateRequest
- type SavedLogQuery
- type SavedLogQueryRequest
- type SavedSearch
- type ScheduledMaintenanceRequest
- type ScheduledMaintenanceResource
- type ScheduledTaskRequest
- type ScheduledTaskResource
- type Scope
- type SearchActionInfo
- type SearchHit
- type SearchResponse
- type SearchSpan
- type SecretBindingStatus
- type SecretFinding
- type SecretKeyResource
- type SecretRebindFailure
- type SecretRebindResult
- type SecretRotationPolicyResource
- type SecretScanAllowEntry
- type SecretScanEnvResult
- type SecretScanLimits
- type SecretScanRun
- type SecretScanSettings
- type SecurityPolicy
- type SecurityPolicyUpdate
- type SecurityPosture
- type SecuritySessions
- type SelfUpgradeAttempt
- type SelfUpgradeAttempts
- type SelfUpgradeBreaking
- type SelfUpgradeFailure
- type SelfUpgradeLogLine
- type SelfUpgradePlan
- type SelfUpgradeStarted
- type SelfUpgradeStatus
- type SelfUpgradeStep
- type ServerAddress
- type ServerAddressPair
- type ServerMismatchError
- type ServerPin
- type ServerProfile
- type ServerProfileInfo
- type ServerProfileProblem
- type ServerReadiness
- type ServiceHealth
- type ServiceHooks
- type ServiceProbe
- type ServiceResources
- type ServiceTemplateDetail
- type ServiceTemplateListItem
- type Session
- type SessionInfoResource
- type SessionLinkResource
- type SessionPolicy
- type SessionPolicyRequest
- type SessionToken
- type SetAIProviderRequest
- type SetAppDatabaseRequest
- type SetAppEgressPolicyRequest
- type SetAppEnvironmentRequest
- type SetAppNodeRequest
- type SetAppProjectRequest
- type SetAppScheduleRequest
- type SetAppStorageRequest
- type SetAppVolumesRequest
- type SetAppVolumesResponse
- type SetAutoRollbackRequest
- type SetAutoRollbackSLOBurnRequest
- type SetBackupScheduleRequest
- type SetDatabaseProjectRequest
- type SetDatabasePublicAccessRequest
- type SetDatabaseResourcesRequest
- type SetDomainAuthGateRequest
- type SetDomainBasicAuthRequest
- type SetDomainErrorPageRequest
- type SetDomainMaintenanceRequest
- type SetDomainRedirectRequest
- type SetDomainTLSCertRequest
- type SetDomainWAFRequest
- type SetExecAccessRequest
- type SetGitDeploySettingsRequest
- type SetGitSourceBuildRequest
- type SetGitSourceRequest
- type SetLogDrainRequest
- type SetNodeFailureDomainRequest
- type SetNodeProviderCredentialRequest
- type SetNodeWorkloadsRequest
- type SetPreviewPolicyRequest
- type SetPreviewSettingsRequest
- type SetProjectOrganizationRequest
- type SetSecretBuildTimeRequest
- type SetSecretLockRequest
- type SetSecretRequest
- type SetSecretRotationPolicyRequest
- type SetSharedEnvSecretRequest
- type SetVolumeBackupScheduleRequest
- type SetupGuideProgress
- type SetupGuideResource
- type SetupGuideStep
- type SetupStatusResource
- type SharedEnvVarResource
- type ShieldBotList
- type ShieldLimits
- type ShieldPolicyResource
- type ShieldRecommendedResource
- type ShieldRecommendedSkip
- type SignInApproval
- type SignInCode
- type SignInRequests
- type SilenceMatchers
- type SilenceResource
- type SimulatedPlacement
- type SleepActivity
- type SleepEnableOptions
- type SleepEvent
- type SleepFix
- type SleepFleet
- type SleepFleetApp
- type SleepHistory
- type SleepIdleLimits
- type SleepItem
- type SleepPortWake
- type SleepSettings
- type SleepStats
- type SlowQueryEntryResource
- type SourceUpload
- type SourceUploadList
- type SpendDryRun
- type SpendForecast
- type SpendGuardInfo
- type SpendGuardReason
- type SplitBucket
- type SplitStartRequest
- type SplitTest
- type SplitVariant
- type SplitVariantInput
- type StandaloneDomain
- type StandaloneDomainRequest
- type StaticBuildSuggestion
- type StaticRoutesLintRequest
- type StaticRoutesLintResource
- type StaticRoutesResource
- type StaticRoutesTestRequest
- type StaticSiteResource
- type StatusComponent
- type StatusIncident
- type StatusPageComponentView
- type StatusPageSettings
- type StatusPageView
- type StatusUpdate
- type StepUpProof
- type StorageBucket
- type StorageDefault
- type StorageDefaults
- type StorageDestination
- type StorageDestinationRequest
- type StorageOrphanResource
- type StorageOrphansResponse
- type StorageProbeResult
- type StorageProbeStep
- type StorageProvider
- type StuckAction
- type StuckCause
- type StuckCondition
- type StuckReport
- type SupplyChainSettings
- type SupplyChainSettingsRequest
- type SweepPreviewEnvironmentsResult
- type SystemCacheApp
- type SystemCacheResource
- type SystemDoctorResource
- type SystemNetwork
- type SystemNetworks
- type SystemNetworksPrune
- type SystemPruneResult
- type SystemRestart
- type SystemStatusResource
- type TagAppResource
- type TagResource
- type TakeoverCheck
- type TakeoverDomain
- type TakeoverDomainCheck
- type TakeoverFix
- type TakeoverFixAction
- type TakeoverPlan
- type TakeoverPlanStep
- type TakeoverRun
- type TakeoverStart
- type TakeoverStartResult
- type TakeoverStatus
- type TakeoverStep
- type TargetProtectionResource
- type TeamEventResource
- type TeamInviteResource
- type TeamMemberResource
- type TeamResource
- type TeamRoleResource
- type TemplateFinding
- type TemplateInstallRequest
- type TemplateProtection
- type TemplateRequirements
- type TestEndpointRequest
- type TestGitConnectionRequest
- type TestGitConnectionResult
- type TestNotificationChannelRequest
- type TimelineDeploy
- type TimelineItem
- type TimelinePage
- type TimelineRef
- type TimelineResponse
- type TokenCleanupResult
- type TraceListOptions
- type TraceSpan
- type TraceSummary
- type TracingResource
- type TrafficCertCounts
- type TrafficDomainCounts
- type TrafficErrorSpike
- type TrafficExportSink
- type TrafficExportSinkList
- type TrafficExportSinkStatus
- type TrafficExportStatus
- type TrafficExportTestResult
- type TrafficLabel
- type TrafficLatency
- type TrafficReplica
- type TrafficRoute
- type TrafficSLO
- type TrafficSample
- type TrafficShield
- type TrafficShieldReason
- type TrafficStatusClasses
- type TrafficSummary
- type TriggerBackupRequest
- type TriggerBaseBackupRequest
- type TriggerCloneRestoreRequest
- type TriggerPITRRestoreRequest
- type TriggerRestoreRequest
- type TriggerVolumeCloneRestoreRequest
- type TrustRequest
- type TrustedDevice
- type UnderAttackRequest
- type UndoResult
- type UnmanagedContainerUse
- type UpdateAIControlRequest
- type UpdateAlertRuleRequest
- type UpdateBackupTargetRequest
- type UpdateCloudflareDNSRequest
- type UpdateCloudflareTunnelRequest
- type UpdateDNSRecordRequest
- type UpdateDockerGuardRequest
- type UpdateEnvironmentRequest
- type UpdateEventWebhookRequest
- type UpdateExportDestinationRequest
- type UpdateGoogleCloudDNSRequest
- type UpdateMeshSettingsRequest
- type UpdateNetworkShareRequest
- type UpdateNotificationChannelRequest
- type UpdateOAuthProviderSettingsRequest
- type UpdatePreflight
- type UpdateRegistryCredentialRequest
- type UpdateRegistrySettingsRequest
- type UpdateRoute53DNSRequest
- type UpdateServerProfileRequest
- type UpdateSettingsResource
- type UpdateStorageBucketRequest
- type UpdateUserAbilitiesRequest
- type UpdateVaultSettingsRequest
- type UpdatesResource
- type UpgradeBackupNowResult
- type UpgradeCheck
- type UpgradeFix
- type UpgradeHistory
- type UpgradeHistoryItem
- type UpgradePolicy
- type UpgradePolicyRequest
- type UpgradeSchedule
- type UpgradeScheduleRequest
- type UpgradeScheduleStatus
- type UpgradeWindow
- type UsageBudgets
- type UsageNodeInfo
- type UsageReport
- type UsageReportQuery
- type UsageSettings
- type UsageSettingsUpdate
- type UseGitHubRepoAsSourceResponse
- type UseRepoAsSourceRequest
- type UserResource
- type VaultSettingsResource
- type VolumeBackupPolicyResource
- type VolumeBackupScheduleResource
- type VolumeCloneRestoreResource
- type VolumeGuide
- type VolumeGuideResponse
- type VolumeRestoreToRequest
- type VolumeRestoreToResponse
- type VulnCounts
- type VulnGate
- type VulnReport
- type VulnScan
- type Vulnerability
- type WALShipResource
- type WaitOptions
- type WaitResult
- type WakeTiming
- type WatchStatusResource
- type WebhookDeliveryResource
- type WhoamiResource
- type WorkspacePackage
- type ZoneNode
- type ZoneSummary
- type Zones
Constants ¶
const ( SleepFixEnablePortWake = "enable_port_wake" SleepFixRemovePinnedPort = "remove_pinned_port" SleepFixSetHoldRequests = "set_hold_requests" SleepFixAttachDomain = "attach_domain" )
Fix kinds a SleepFix can carry.
const ( DeviceLoginWaiting = "waiting" DeviceLoginExpired = "expired" DeviceLoginDenied = "denied" DeviceLoginApproved = "approved" )
Device login states as GET /api/v1/auth/device/activity reports them.
const ( EnvAPIToken = "APP_API_TOKEN" //nolint:gosec // this is the name of an env var, not a credential value EnvAPIURL = "APP_API_URL" EnvProfile = "APP_PROFILE" )
EnvAPIToken, EnvAPIURL, and EnvProfile are this project's established APP_*-env-var-prefix convention (see internal/brand's own envPrefix, and cmd/levelrail/main.go's APP_DATA_DIR/APP_HTTP_ADDR/etc.), not a product-name-specific prefix: renaming the product later must not require renaming these. Every caller of this package (the CLI, the MCP server) uses these same names, so a token or URL set for one is already set for the other.
const ( // EnvLogMaxBytes names the env var that caps a compact log query's output. EnvLogMaxBytes = "APP_MCP_LOG_MAX_BYTES" // DefaultLogMaxBytes is the output cap when EnvLogMaxBytes is unset. DefaultLogMaxBytes = 8 << 10 // DefaultLogMaxLines is the line cap when the caller sets none. DefaultLogMaxLines = 100 // DefaultLogWindow is the lookback when neither since nor from is set. DefaultLogWindow = time.Hour )
const ( ScopeTeamHeader = "X-Scope-Team" ScopeProjectHeader = "X-Scope-Project" EnvTeam = "APP_TEAM" EnvProject = "APP_PROJECT" )
Scope headers narrow what the control plane shows to one team or project. They can only narrow: the server never widens access from them.
const ( OAuthProviderGoogle = "google" OAuthProviderGitHub = "github" OAuthProviderOIDC = "oidc" OAuthProviderMicrosoft = "microsoft" OAuthProviderGitLab = "gitlab" OAuthProviderBitbucket = "bitbucket" OAuthProviderDiscord = "discord" OAuthProviderSlack = "slack" OAuthProviderLinkedIn = "linkedin" OAuthProviderTwitch = "twitch" OAuthProviderFacebook = "facebook" OAuthProviderLinear = "linear" OAuthProviderVercel = "vercel" OAuthProviderHuggingFace = "huggingface" OAuthProviderFigma = "figma" OAuthProviderSalesforce = "salesforce" OAuthProviderCodeberg = "codeberg" OAuthProviderCognito = "cognito" OAuthProviderDropbox = "dropbox" OAuthProviderKakao = "kakao" OAuthProviderPatreon = "patreon" )
OAuth provider names accepted by GET/PUT /api/v1/settings/oauth[/{provider}], redeclared from internal/store.OAuthProvider* rather than imported, the same reasoning as ServiceResources above.
const ( EmailBackendSMTP = "smtp" EmailBackendSES = "ses" )
Email backends accepted by EmailSettingsResource.Backend.
const ( DeployOutcomeInProgress = "in_progress" DeployOutcomeHealthy = "healthy" )
Deploy outcomes reported by GetDeploy.
const AgentClientHeader = "X-Agent-Client"
AgentClientHeader carries the calling MCP client's name and version to the control plane so audit entries can record it.
const CredentialsFileName = "credentials"
CredentialsFileName is the file ReadCredentialsFile reads, inside a directory named after the caller's own binary (ConfigDir below), not a hardcoded product name.
const DefaultAPIURL = "http://localhost:8080"
DefaultAPIURL is a zero-config local default, so a caller with no flag, env var, or credentials file still reaches a locally running control plane out of the box: its own defaultHTTPAddr (cmd/levelrail/main.go) is ":8080", so this is that same port on loopback.
const DefaultProfile = "default"
DefaultProfile is the section ResolveProfile falls back to when neither a --profile flag nor APP_PROFILE is set, and the section an old, pre-profile flat credentials file (no "[section]" headers at all) is read as, for backward compatibility with every credentials file written before profile support existed.
const MaskedEnvValue = "••••••••"
MaskedEnvValue is what a sensitive env value reads back as.
const StandaloneScope = "_standalone"
StandaloneScope is the {name} the per-domain endpoints take for a standalone domain, e.g. /api/v1/apps/_standalone/domains/x/waf.
Variables ¶
var ErrFixStale = errors.New("app changed since the diagnosis, run it again")
ErrFixStale means the app no longer holds the value the fix was computed from, so applying it could overwrite a newer edit.
Functions ¶
func ConfigDir ¶
ConfigDir is "~/.config/<prog>", prog being the caller's own binary basename (filepath.Base(os.Args[0])), never a hardcoded product name: this makes the credentials file location follow the binary automatically if it's ever renamed, the same rebrandability property required everywhere else in this codebase.
func DeployWindow ¶ added in v0.2.0
func DeployWindow(attempts []DeployAttemptResource, id string, now time.Time) (from, to time.Time, err error)
DeployWindow returns the time range one deploy attempt owned: from its start to the start of the next newer attempt, or now if it is the newest.
func ExtractErrorMessage ¶
ExtractErrorMessage parses the control plane's {"error": "..."} body shape (internal/api/respond.go). A body that doesn't match that shape (a proxy's HTML error page, an empty body) falls back to the raw text so the caller still sees something, not a blank message. Exported so callers with their own hand-rolled request (outside this Client, e.g. the CLI's session-cookie authSessionClient) can reuse the same parsing rather than duplicating it.
func LogMaxBytesFromEnv ¶ added in v0.2.0
LogMaxBytesFromEnv returns the byte cap from EnvLogMaxBytes, falling back to DefaultLogMaxBytes on an unset or invalid value.
func MailGroupCountLabel ¶
MailGroupCountLabel formats a group's recipient count for plain output.
func ParseLogTime ¶ added in v0.2.0
ParseLogTime parses a log window bound: an RFC3339 timestamp, or a Go duration ("30m") meaning that long before now.
func PatchAppMap ¶ added in v0.2.0
func PatchAppMap(app map[string]any, changes []DiagnosisChange, inputs map[string]string) ([]string, error)
PatchAppMap applies changes to a decoded app resource (numbers as json.Number). It refuses a change whose current value differs from From.
func PathEscape ¶
PathEscape guards against a name containing characters that would otherwise change the request's URL shape (a "/" turning one path segment into two, for instance). Server-side validation is the real authority on what a valid app name is; this only protects request construction from building a request to the wrong path. Exported for the same reuse reason as ExtractErrorMessage.
func PinProfile ¶
func PinProfile(prog, profile string, creds Credentials, info InstanceInfo) error
PinProfile records info as the server credentials is pinned to and saves it.
func ResetServerPins ¶
func ResetServerPins()
ResetServerPins clears the per-process pin and verification state (tests).
func ResolveAPIURL ¶
func ResolveAPIURL(flagURL string, lookupEnv func(string) (string, bool), prog, profile string) string
ResolveAPIURL picks the base API URL by precedence: flagURL, then EnvAPIURL, then profile's section of the credentials file, then DefaultAPIURL.
func ResolveProfile ¶
ResolveProfile picks the active profile name by precedence: flagProfile, then EnvProfile, then DefaultProfile. It never returns an empty string.
func ResolveToken ¶
func ResolveToken(flagToken string, lookupEnv func(string) (string, bool), prog, profile string) string
ResolveToken picks an API token by precedence: flagToken, then EnvAPIToken, then profile's section of the local credentials file. Returns "" (not an error) if none is set: an empty token is a valid, if unlikely to succeed, thing to send, and letting the server's own 401 be what reports "not authenticated" keeps this function from duplicating that judgment.
func SetDebugTrace ¶ added in v0.2.0
SetDebugTrace enables (non-nil w) or disables (nil) request tracing for every call through this package, process-wide. cmd/levelrail-cli's --debug flag calls this exactly once per invocation, always (even to disable), so no state leaks from one CLI run into the next in a process that invokes the CLI's entrypoint repeatedly, such as a test binary.
func SetScope ¶ added in v0.2.0
func SetScope(s Scope)
SetScope sets the scope every Client sends from now on.
func SetTrustHook ¶
func SetTrustHook(fn func(TrustRequest) error)
SetTrustHook installs the first-connect confirmation (trust on first use). With no hook an unpinned profile is allowed through, as it was before pinning existed.
func SetWarnWriter ¶
SetWarnWriter sets where non-fatal pin warnings go (nil discards them).
func ShortInstanceID ¶
ShortInstanceID abbreviates an instance id for display.
func TraceRequest ¶ added in v0.2.0
TraceRequest writes one --debug trace line for a completed (or failed) HTTP round trip, a no-op unless SetDebugTrace enabled tracing. Exported so cmd/levelrail-cli's authSessionClient (a separate, session-cookie based client that is never a Client, see its own doc comment) can share this exact trace format and URL redaction instead of a second implementation. Never passed a header or body: this never prints an Authorization value or any other credential, in or out of debug mode.
func WithAgentClient ¶ added in v0.2.0
WithAgentClient returns a context whose requests report the MCP client name and version in AgentClientHeader.
func WithIdempotencyKey ¶
WithIdempotencyKey makes every request sent with the returned context carry an Idempotency-Key header, which also makes it safe to retry.
func WriteContext ¶ added in v0.2.0
WriteContext saves a profile's team and project; an empty scope clears it.
func WriteCredentialsFile ¶
func WriteCredentialsFile(prog, profile string, creds Credentials) error
WriteCredentialsFile writes creds under profile's section in prog's credentials file, creating ConfigDir(prog) if it doesn't exist yet, and leaving every other profile section already in the file untouched. "auth login" is this function's only caller today: it is the one command that produces a credential rather than just consuming one. 0o600 on both the directory and the file, tighter than ReadCredentialsFile's own comment on the file needing to stay hand-editable: a freshly minted API token is a live credential, not a value that should ever be group- or world-readable by default.
Types ¶
type ACMEFailure ¶ added in v0.2.0
type ACMEFailure struct {
Error string `json:"error"`
Renewal bool `json:"renewal"`
At string `json:"at"`
Reason string `json:"reason"`
Action string `json:"action"`
}
ACMEFailure mirrors internal/api's acmeFailureResource.
type AIAssistantSettingsResource ¶ added in v0.2.0
type AIAssistantSettingsResource struct {
Configured bool `json:"configured"`
Active *AIModelRef `json:"active,omitempty"`
Fallback []AIModelRef `json:"fallback"`
Limits AILimits `json:"limits"`
TokenUsageMont *int64 `json:"token_usage_month,omitempty"`
}
AIAssistantSettingsResource mirrors internal/api's aiAssistantSettingsResource (internal/api/ai_settings.go): the shape of GET/PUT /api/v1/settings/ai-assistant. Keys never round-trip.
type AIChatMessageResource ¶ added in v0.2.0
type AIChatMessageResource struct {
ID string `json:"id"`
Role string `json:"role"`
Content string `json:"content"`
ToolCalls []AIChatToolCallResource `json:"tool_calls"`
CreatedAt time.Time `json:"created_at"`
}
AIChatMessageResource mirrors internal/api's aiChatMessageResource.
type AIChatSSEEvent ¶ added in v0.2.0
type AIChatSSEEvent struct {
Type string `json:"type"`
Text string `json:"text,omitempty"`
ConfirmationID string `json:"confirmation_id,omitempty"`
ToolUseID string `json:"tool_use_id,omitempty"`
Name string `json:"name,omitempty"`
Arguments json.RawMessage `json:"arguments,omitempty"`
ReadOnly bool `json:"read_only,omitempty"`
Result json.RawMessage `json:"result,omitempty"`
IsError bool `json:"is_error,omitempty"`
ActingAs string `json:"acting_as,omitempty"`
Abilities []string `json:"abilities,omitempty"`
}
AIChatSSEEvent mirrors every shape internal/api/ai_chat.go's aiSSESink can write on the bare "data: <json>\n\n" line POST /api/v1/ai/sessions/{id}/messages and POST .../confirmations/{id} stream: Type discriminates which of the other fields are populated (text_delta -> Text, tool_call_proposed -> ConfirmationID/ToolUseID/Name/Arguments, tool_result -> ToolUseID/Name/Result/IsError, done -> no other field).
type AIChatSessionCreatedResource ¶ added in v0.2.0
type AIChatSessionCreatedResource struct {
ID string `json:"id"`
}
AIChatSessionCreatedResource mirrors internal/api's aiChatSessionCreatedResource: POST /api/v1/ai/sessions's response.
type AIChatSessionResource ¶ added in v0.2.0
type AIChatSessionResource struct {
ID string `json:"id"`
Messages []AIChatMessageResource `json:"messages"`
}
AIChatSessionResource mirrors internal/api's aiChatSessionResource: GET /api/v1/ai/sessions/{id}'s response, the full transcript.
type AIChatSessionSummaryResource ¶ added in v0.2.0
type AIChatSessionSummaryResource struct {
ID string `json:"id"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
AIChatSessionSummaryResource mirrors internal/api's aiChatSessionSummaryResource: one row of GET /api/v1/ai/sessions's list response, no message content.
type AIChatToolCallResource ¶ added in v0.2.0
type AIChatToolCallResource struct {
ID string `json:"id"`
ConfirmationID string `json:"confirmation_id,omitempty"`
Name string `json:"name"`
Arguments json.RawMessage `json:"arguments"`
ReadOnly bool `json:"read_only"`
Status string `json:"status"`
Result json.RawMessage `json:"result,omitempty"`
IsError bool `json:"is_error,omitempty"`
ActingAs string `json:"acting_as,omitempty"`
Abilities []string `json:"abilities,omitempty"`
}
AIChatToolCallResource mirrors store.AIChatToolCall's JSON shape, as carried on an AIChatMessageResource.
type AIChoiceRequest ¶
type AIChoiceRequest struct {
Active *AIModelRef `json:"active,omitempty"`
Fallback *[]AIModelRef `json:"fallback,omitempty"`
}
AIChoiceRequest is PUT /api/v1/settings/ai-assistant's multi-provider body.
type AIControlResource ¶ added in v0.2.0
type AIControlResource struct {
Mode string `json:"mode"`
AllowedEnvKinds []string `json:"allowed_env_kinds"`
EnvKinds []string `json:"env_kinds"`
AdminAvailable bool `json:"admin_available"`
AgentTokenCount int `json:"agent_token_count"`
CallerIsAgent bool `json:"caller_is_agent"`
UpdatedAt string `json:"updated_at"`
UpdatedBy string `json:"updated_by"`
}
AIControlResource mirrors GET /api/v1/settings/ai-control.
type AILimits ¶
type AILimits struct {
MaxSteps int `json:"max_steps"`
MonthlyTokenBudget int64 `json:"monthly_token_budget,omitempty"`
}
AILimits mirrors the limits object of GET /api/v1/settings/ai-assistant.
type AIModelRef ¶
AIModelRef names one provider and model pair.
type AIModelResource ¶
type AIModelResource struct {
ID string `json:"id"`
Label string `json:"label"`
ContextWindow int `json:"context_window,omitempty"`
SupportsTools *bool `json:"supports_tools,omitempty"`
}
AIModelResource is one entry of GET .../providers/{id}/models.
type AIProviderResource ¶
type AIProviderResource struct {
ID string `json:"id"`
Label string `json:"label"`
Kind string `json:"kind"`
DefaultBaseURL string `json:"default_base_url"`
BaseURLEditable bool `json:"base_url_editable"`
KeyURL string `json:"key_url"`
DefaultModel string `json:"default_model"`
Brand string `json:"brand"`
HasKey bool `json:"has_key"`
BaseURL string `json:"base_url,omitempty"`
Status string `json:"status"`
StatusDetail string `json:"status_detail,omitempty"`
LastCheckedAt string `json:"last_checked_at,omitempty"`
}
AIProviderResource mirrors one entry of GET .../ai-assistant/providers.
type AIProviderTestResource ¶
type AIProviderTestResource struct {
OK bool `json:"ok"`
Status string `json:"status"`
StatusDetail string `json:"status_detail,omitempty"`
LatencyMS int64 `json:"latency_ms"`
}
AIProviderTestResource is POST .../providers/{id}/test's response.
type AIUsageDayResource ¶
type AIUsageDayResource struct {
Date string `json:"date"`
Provider string `json:"provider"`
Model string `json:"model"`
PromptTokens int64 `json:"prompt_tokens"`
CompletionTokens int64 `json:"completion_tokens"`
Requests int64 `json:"requests"`
Errors int64 `json:"errors"`
}
AIUsageDayResource is one (date, provider, model) row of GET /api/v1/ai/usage.
type AIUsageResource ¶
type AIUsageResource struct {
Days []AIUsageDayResource `json:"days"`
Totals struct {
PromptTokens int64 `json:"prompt_tokens"`
CompletionTokens int64 `json:"completion_tokens"`
Requests int64 `json:"requests"`
Errors int64 `json:"errors"`
} `json:"totals"`
}
AIUsageResource is GET /api/v1/ai/usage's response.
type APIError ¶
type APIError struct {
StatusCode int
Message string
// RetryAfter is parsed from the response's Retry-After header
// (seconds form only, the only form this control plane ever sends),
// 0 when absent. Currently only the general per-actor rate limiter
// (429 Too Many Requests, internal/api/api_rate_limit.go) sets it,
// but any future response carrying the header gets the same
// treatment for free.
RetryAfter time.Duration
// Code is the machine-readable reason some refusals carry, such as
// step_up_required or step_up_code_required.
Code string
// RequestID and Fix are the server's correlation id and suggested remedy, when sent.
RequestID string
Fix string
}
APIError is returned by Client methods for a non-2xx HTTP response: a real reply from the server, as opposed to a network-level failure (connection refused, DNS, timeout), which Client methods return as a plain wrapped error instead. Callers distinguish the two with errors.As, which is what picks the CLI's exit code and lets the MCP server surface a specific tool error (e.g. a 403's "token lacks the required ability" message) rather than a generic failure.
type AbuseClientImpact ¶
type AbuseClientImpact struct {
Client string `json:"client"`
Requests int `json:"requests"`
WouldBlock int `json:"would_block"`
TopReason string `json:"top_reason"`
}
AbuseClientImpact is one client's share of a dry run.
type AbuseCondition ¶
type AbuseCondition struct {
Status string `json:"status"`
Reason string `json:"reason"`
Message string `json:"message"`
Since time.Time `json:"since,omitempty"`
}
AbuseCondition is the status the ingress reported for the policy.
type AbuseCounters ¶
type AbuseCounters struct {
Allowed float64 `json:"allowed"`
WouldBlock float64 `json:"would_block"`
Blocked float64 `json:"blocked"`
FailOpen float64 `json:"fail_open"`
ByReason []AbuseReasonCount `json:"by_reason"`
}
AbuseCounters is the defense's tally over a recent window.
type AbuseDryRun ¶
type AbuseDryRun struct {
Requests int `json:"requests"`
WouldBlock int `json:"would_block"`
Percent float64 `json:"percent"`
ByReason []AbuseReasonTotal `json:"by_reason"`
TopClients []AbuseClientImpact `json:"top_clients"`
From time.Time `json:"from"`
To time.Time `json:"to"`
WindowMinutes float64 `json:"window_minutes"`
CoveredMinutes float64 `json:"covered_minutes"`
Note string `json:"note"`
}
AbuseDryRun is the answer to POST /api/v1/apps/{name}/abuse/dry-run. Nothing was blocked.
type AbuseDryRunRequest ¶
type AbuseDryRunRequest struct {
Policy *AbusePolicy `json:"policy,omitempty"`
Minutes int `json:"minutes,omitempty"`
}
AbuseDryRunRequest is the dry-run body; a nil Policy replays the saved one.
type AbuseLimits ¶
type AbuseLimits struct {
MaxRPS float64 `json:"max_rps"`
MaxBurst int `json:"max_burst"`
MaxDenyEntries int `json:"max_deny_entries"`
MaxAgentEntry int `json:"max_agent_entries"`
DryRunDefault int `json:"dry_run_default_minutes"`
DryRunMax int `json:"dry_run_max_minutes"`
}
AbuseLimits are the instance caps a policy is validated against.
type AbusePolicy ¶
type AbusePolicy struct {
Mode string `json:"mode"`
RPS float64 `json:"rps,omitempty"`
Burst int `json:"burst,omitempty"`
DenyCIDRs []string `json:"deny_cidrs,omitempty"`
DenyUserAgents []string `json:"deny_user_agents,omitempty"`
RequireUserAgent bool `json:"require_user_agent,omitempty"`
}
AbusePolicy is an app's ingress abuse defense policy.
type AbuseReasonCount ¶
type AbuseReasonCount struct {
Reason string `json:"reason"`
WouldBlock float64 `json:"would_block"`
Blocked float64 `json:"blocked"`
}
AbuseReasonCount is one reason's would-block and blocked counts.
type AbuseReasonTotal ¶
AbuseReasonTotal pairs a reason with a request count.
type AbuseSuggestion ¶
type AbuseSuggestion struct {
PeakRPS float64 `json:"peak_rps"`
RPS float64 `json:"rps"`
Burst int `json:"burst"`
FromTraffic bool `json:"from_traffic"`
}
AbuseSuggestion is a starting rate derived from the app's recent traffic.
type AcceptTeamInviteRequest ¶ added in v0.2.0
type AcceptTeamInviteRequest struct {
Token string `json:"token"`
Email string `json:"email,omitempty"`
DisplayName string `json:"display_name,omitempty"`
Password string `json:"password,omitempty"`
}
AcceptTeamInviteRequest is POST /api/v1/team-invites/accept's body.
type AccessOptions ¶
AccessOptions are the filters of ListAccess.
type AccessRecord ¶
type AccessRecord struct {
Time time.Time `json:"time"`
Host string `json:"host"`
Method string `json:"method"`
Path string `json:"path"`
Status int `json:"status"`
Millis float64 `json:"duration_ms"`
BytesIn int64 `json:"bytes_in"`
BytesOut int64 `json:"bytes_out"`
RequestID string `json:"request_id"`
TraceID string `json:"trace_id,omitempty"`
Upstream bool `json:"upstream_error,omitempty"`
}
AccessRecord mirrors internal/ingress's AccessRecord.
type AccessReviewDetail ¶
type AccessReviewDetail struct {
AccessReviewResource
Items []AccessReviewItem `json:"items"`
}
AccessReviewDetail is a campaign with its rows.
type AccessReviewItem ¶
type AccessReviewItem struct {
ID string `json:"id"`
Kind string `json:"kind"`
SubjectID string `json:"subject_id"`
Label string `json:"label"`
Role string `json:"role"`
Detail string `json:"detail"`
LastActiveAt string `json:"last_active_at"`
Decision string `json:"decision"`
DecidedBy string `json:"decided_by,omitempty"`
AppliedAt string `json:"applied_at,omitempty"`
ApplyError string `json:"apply_error,omitempty"`
}
AccessReviewItem is one reviewable subject.
type AccessReviewResource ¶
type AccessReviewResource struct {
ID string `json:"id"`
Name string `json:"name"`
Status string `json:"status"`
DueAt string `json:"due_at"`
Overdue bool `json:"overdue"`
RepeatDays int `json:"repeat_days"`
CreatedBy string `json:"created_by"`
CreatedAt string `json:"created_at"`
CompletedAt string `json:"completed_at,omitempty"`
Total int `json:"total"`
Decided int `json:"decided"`
ToRevoke int `json:"to_revoke"`
}
AccessReviewResource mirrors an access review campaign summary.
type AccountExport ¶
type AccountExport struct {
ID string `json:"id"`
Status string `json:"status"`
SizeBytes int `json:"size_bytes,omitempty"`
ExpiresAt time.Time `json:"expires_at"`
}
AccountExport mirrors internal/api's accountExportResource.
type ActivityActor ¶ added in v0.2.0
ActivityActor mirrors internal/api's activityActor.
type ActivityEvent ¶ added in v0.2.0
type ActivityEvent struct {
ID string `json:"id"`
At time.Time `json:"at"`
Kind string `json:"kind"`
Title string `json:"title"`
Detail string `json:"detail,omitempty"`
Failed bool `json:"failed,omitempty"`
Action string `json:"action,omitempty"`
Actor ActivityActor `json:"actor"`
Object ActivityObject `json:"object"`
}
ActivityEvent is one domain timeline entry.
type ActivityObject ¶ added in v0.2.0
type ActivityObject struct {
Type string `json:"type"`
ID string `json:"id"`
Href string `json:"href,omitempty"`
}
ActivityObject mirrors internal/api's activityObject.
type ActivityPage ¶ added in v0.2.0
type ActivityPage struct {
Events []ActivityEvent `json:"events"`
NextCursor string `json:"next_cursor,omitempty"`
}
ActivityPage is GET /api/v1/domains/{domain}/activity's body.
type AdvisorApplyResult ¶ added in v0.2.0
type AdvisorApplyResult struct {
FindingID string `json:"finding_id"`
Resource resourceadvisor.Ref `json:"resource"`
Action *resourceadvisor.Action `json:"action"`
Before AdvisorSettings `json:"before"`
After AdvisorSettings `json:"after"`
ConfirmRequired bool `json:"confirm_required"`
Applied bool `json:"applied"`
AppliedLive bool `json:"applied_live"`
}
AdvisorApplyResult is POST .../findings/{id}/apply: a preview unless Applied.
type AdvisorFinding ¶ added in v0.2.0
type AdvisorFinding struct {
resourceadvisor.Finding
State string `json:"state,omitempty"`
SnoozedUntil string `json:"snoozed_until,omitempty"`
Appliable bool `json:"appliable"`
CanApply bool `json:"can_apply"`
}
AdvisorFinding is one finding as GET /api/v1/resource-advisor/findings returns it.
type AdvisorFindingQuery ¶ added in v0.2.0
AdvisorFindingQuery filters ListAdvisorFindings; zero fields do not filter.
type AdvisorFindings ¶ added in v0.2.0
type AdvisorFindings struct {
GeneratedAt string `json:"generated_at"`
Findings []AdvisorFinding `json:"findings"`
}
AdvisorFindings is GET /api/v1/resource-advisor/findings.
type AdvisorSettings ¶ added in v0.2.0
type AdvisorSettings struct {
MemoryBytes int64 `json:"memory_bytes"`
NanoCPUs int64 `json:"nano_cpus"`
SleepIdleMinutes int `json:"sleep_idle_minutes,omitempty"`
}
AdvisorSettings is the part of a resource an advisor action changes.
type AdvisorSummary ¶ added in v0.2.0
type AdvisorSummary struct {
GeneratedAt string `json:"generated_at"`
resourceadvisor.Summary
}
AdvisorSummary is GET /api/v1/resource-advisor/summary.
type AgentVersionChange ¶ added in v0.2.0
type AgentVersionChange struct {
NodeID string `json:"node_id"`
NodeName string `json:"node_name"`
FromVersion string `json:"from_version"`
ToVersion string `json:"to_version"`
ObservedAt string `json:"observed_at"`
}
AgentVersionChange is one observed node agent version change.
type AlertHistoryEntry ¶ added in v0.2.0
type AlertHistoryEntry struct {
ID string `json:"id"`
At time.Time `json:"at"`
RuleID string `json:"rule_id"`
RuleName string `json:"rule_name"`
RuleKind string `json:"rule_kind"`
ResourceID string `json:"resource_id,omitempty"`
App string `json:"app,omitempty"`
Node string `json:"node,omitempty"`
Severity string `json:"severity,omitempty"`
Event string `json:"event"`
Outcome string `json:"outcome"`
Detail string `json:"detail,omitempty"`
SilenceID string `json:"silence_id,omitempty"`
ChannelID string `json:"channel_id,omitempty"`
Error string `json:"error,omitempty"`
Cert *CertExpiryPayload `json:"cert,omitempty"`
// Changes is set on fired entries when the query asked for it.
Changes *RecentChangesResource `json:"changes,omitempty"`
ChangesOmitted bool `json:"changes_omitted,omitempty"`
}
AlertHistoryEntry mirrors internal/api's alertHistoryResource.
type AlertHistoryQuery ¶ added in v0.2.0
type AlertHistoryQuery struct {
App string
RuleID string
Outcome string
Event string
Since string
Limit int
IncludeChanges bool
}
AlertHistoryQuery filters ListAlertHistory; zero fields are omitted. IncludeChanges asks the server to attach what changed before each firing.
type AlertLogRule ¶ added in v0.2.0
type AlertLogRule struct {
Query string `json:"query,omitempty"`
Regex string `json:"regex,omitempty"`
Fields []string `json:"fields,omitempty"`
Level string `json:"level,omitempty"`
Count int `json:"count,omitempty"`
PerMinute float64 `json:"per_minute,omitempty"`
WindowSeconds int `json:"window_seconds,omitempty"`
CooldownSeconds int `json:"cooldown_seconds,omitempty"`
}
AlertLogRule is the match config of a log_pattern or log_level_rate rule.
type AlertRuleResource ¶
type AlertRuleResource struct {
ID string `json:"id,omitempty"`
Name string `json:"name"`
Kind string `json:"kind"`
ResourceID string `json:"resource_id,omitempty"`
ChannelID string `json:"channel_id,omitempty"`
Metric string `json:"metric,omitempty"`
Comparator string `json:"comparator,omitempty"`
Threshold float64 `json:"threshold"`
ForDuration string `json:"for_duration,omitempty"`
RestartCountThreshold int `json:"restart_count_threshold"`
RestartWindow string `json:"restart_window,omitempty"`
ScheduledTaskID string `json:"scheduled_task_id,omitempty"`
// BackupResourceKind/BackupDatabaseName/BackupServiceName/
// BackupVolumeName are kind=backup_missing-only: see
// CreateAlertRuleRequest's own doc comment.
BackupResourceKind string `json:"backup_resource_kind,omitempty"`
BackupDatabaseName string `json:"backup_database_name,omitempty"`
BackupServiceName string `json:"backup_service_name,omitempty"`
BackupVolumeName string `json:"backup_volume_name,omitempty"`
SLO *AlertSLOConfig `json:"slo,omitempty"`
LogRule *AlertLogRule `json:"log_rule,omitempty"`
NotifyURL string `json:"notify_url,omitempty"`
NotifyKind string `json:"notify_kind,omitempty"`
Enabled bool `json:"enabled"`
// Warnings are response-only, non-blocking problems with the saved rule.
Warnings []string `json:"warnings,omitempty"`
Severity string `json:"severity,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
ConsecutiveFailures int `json:"consecutive_failures,omitempty"`
FlapThreshold int `json:"flap_threshold,omitempty"`
FlapWindow string `json:"flap_window,omitempty"`
Silenced bool `json:"silenced,omitempty"`
SilencedBy string `json:"silenced_by,omitempty"`
Firing bool `json:"firing,omitempty"`
PendingSince *time.Time `json:"pending_since,omitempty"`
FiringSince *time.Time `json:"firing_since,omitempty"`
LastEvaluatedAt *time.Time `json:"last_evaluated_at,omitempty"`
LastValue *float64 `json:"last_value,omitempty"`
}
AlertRuleResource mirrors internal/api's ruleResource (internal/api/alerts.go). Threshold-kind fields (Metric, Comparator, Threshold, ForDuration) and crashloop-kind fields (RestartCountThreshold, RestartWindow) are both present on the wire; only the ones matching Kind are meaningful, mirroring alerting.Rule's own shape. A kind=cert_expiry rule uses neither group: it watches every stored certificate platform-wide, not this rule's own resource_id.
type AlertSLOConfig ¶ added in v0.2.0
type AlertSLOConfig struct {
Objective string `json:"objective"`
Target float64 `json:"target"`
LatencyMs float64 `json:"latency_ms,omitempty"`
}
AlertSLOConfig mirrors internal/alerting.SLOConfig: the request-based SLO a kind=slo_burn rule watches. Target is a percentage such as 99.9.
type AlertTemplateProfile ¶
type AlertTemplateProfile struct {
Profile string `json:"profile"`
Rules []AlertTemplateRule `json:"rules"`
}
AlertTemplateProfile is a one-click rule set for an app shape.
type AlertTemplateRule ¶
type AlertTemplateRule struct {
Name string `json:"name"`
Kind string `json:"kind"`
Severity string `json:"severity"`
Description string `json:"description"`
}
AlertTemplateRule is one rule a template profile creates.
type AliasesRequest ¶ added in v0.2.0
type AliasesRequest struct {
Aliases []string `json:"aliases"`
StatusCode int `json:"status_code,omitempty"`
}
AliasesRequest makes the path domain the primary for every alias.
type AnalyzeBuild ¶ added in v0.2.0
type AnalyzeBuild struct {
Type string `json:"type"`
DockerfilePath string `json:"dockerfile_path,omitempty"`
BaseDirectory string `json:"base_directory,omitempty"`
Evidence string `json:"evidence"`
Alternatives []AnalyzeBuildSuggestion `json:"alternatives"`
}
AnalyzeBuild mirrors internal/appwizard's Build.
type AnalyzeBuildSuggestion ¶ added in v0.2.0
type AnalyzeBuildSuggestion struct {
BuildType string `json:"build_type"`
DockerfilePath string `json:"dockerfile_path,omitempty"`
BaseDirectory string `json:"base_directory,omitempty"`
Reason string `json:"reason"`
ReasonCode string `json:"reason_code"`
Recommended bool `json:"recommended"`
}
AnalyzeBuildSuggestion mirrors internal/repolayout's Suggestion.
type AnalyzeDatabase ¶ added in v0.2.0
type AnalyzeDatabase struct {
Engine string `json:"engine"`
Version string `json:"version"`
SuggestedName string `json:"suggested_name"`
EnvVar string `json:"env_var"`
Field string `json:"field"`
Evidence string `json:"evidence"`
}
AnalyzeDatabase mirrors internal/appwizard's DatabaseNeed.
type AnalyzeEnvKey ¶ added in v0.2.0
type AnalyzeEnvKey struct {
Key string `json:"key"`
Required bool `json:"required"`
Secret bool `json:"secret"`
Source string `json:"source"`
ProvidedBy string `json:"provided_by,omitempty"`
HasDefault bool `json:"has_default"`
}
AnalyzeEnvKey mirrors internal/appwizard's EnvKey. It never carries a value.
type AnalyzeText ¶ added in v0.2.0
AnalyzeText mirrors internal/appwizard's Text.
type AppAbuse ¶
type AppAbuse struct {
App string `json:"app"`
Configured bool `json:"configured"`
Policy AbusePolicy `json:"policy"`
UpdatedAt string `json:"updated_at,omitempty"`
UpdatedBy string `json:"updated_by,omitempty"`
Condition AbuseCondition `json:"condition"`
Suggestion AbuseSuggestion `json:"suggestion"`
Counters AbuseCounters `json:"counters"`
CountersWindowMinutes int `json:"counters_window_minutes"`
Limits AbuseLimits `json:"limits"`
}
AppAbuse is GET/PUT /api/v1/apps/{name}/abuse.
type AppAutoscale ¶
AppAutoscale is GET/PUT /api/v1/apps/{name}/autoscale.
type AppAutoscaleHistory ¶
AppAutoscaleHistory is GET /api/v1/apps/{name}/autoscale/history.
type AppAutoscaleUpdate ¶
type AppAutoscaleUpdate struct {
MinReplicas int `json:"min_replicas"`
MaxReplicas int `json:"max_replicas"`
Metric string `json:"metric"`
Target float64 `json:"target"`
ScaleUpTolerancePct int `json:"scale_up_tolerance_pct,omitempty"`
ScaleDownTolerancePct int `json:"scale_down_tolerance_pct,omitempty"`
ScaleUpCooldownSecs int `json:"scale_up_cooldown_secs,omitempty"`
ScaleDownCooldownSecs int `json:"scale_down_cooldown_secs,omitempty"`
StabilizationSecs int `json:"stabilization_secs,omitempty"`
MaxStepUp int `json:"max_step_up,omitempty"`
MaxStepDown int `json:"max_step_down,omitempty"`
}
AppAutoscaleUpdate is the PUT body; it replaces the whole policy. Unset tolerance, cooldown and step fields take their defaults.
type AppBindMountResource ¶ added in v0.2.0
type AppBindMountResource struct {
HostPath string `json:"host_path"`
ContainerPath string `json:"container_path"`
ReadOnly bool `json:"read_only,omitempty"`
}
AppBindMountResource mirrors internal/api's appBindMountResource (app_volumes.go): one of an app's bind-mounted host directories.
type AppBranchEnvOverride ¶ added in v0.2.0
type AppBranchEnvOverride struct {
ID string `json:"id"`
BranchPattern string `json:"branch_pattern"`
Key string `json:"key"`
Value string `json:"value"`
Secret bool `json:"secret"`
UpdatedAt string `json:"updated_at"`
}
AppBranchEnvOverride mirrors internal/api's branchEnvOverrideResource: one branch-scoped env var override. Value is always "" for a secret-marked entry, never echoed back once saved.
type AppBudget ¶
type AppBudget struct {
spendcap.Status
CostPriced bool `json:"cost_priced"`
Forecast *SpendForecast `json:"forecast,omitempty"`
Guard *SpendGuardInfo `json:"guard,omitempty"`
}
AppBudget is GET/PUT /api/v1/apps/{name}/budget.
type AppBudgetHistory ¶
AppBudgetHistory is GET /api/v1/apps/{name}/budget/history.
type AppBudgetUpdate ¶
type AppBudgetUpdate struct {
MonthlyEgressBytes int64 `json:"monthly_egress_bytes"`
MonthlyCostCeiling float64 `json:"monthly_cost_ceiling"`
Thresholds []int `json:"thresholds,omitempty"`
Action string `json:"action"`
ThrottleRPS int `json:"throttle_rps,omitempty"`
GuardMode string `json:"guard_mode,omitempty"`
}
AppBudgetUpdate is the PUT body; it replaces the whole budget.
type AppBudgets ¶
type AppBudgets struct {
Caps []AppBudget `json:"caps"`
}
AppBudgets is GET /api/v1/costs/app-caps.
type AppBuildLimits ¶
type AppBuildLimits struct {
Effective BuildLimitValues `json:"effective"`
Global BuildLimitValues `json:"global"`
Overrides BuildLimitOverrides `json:"overrides"`
}
AppBuildLimits is the response of /api/v1/apps/{name}/build-limits.
type AppCacheDomain ¶
type AppCacheDomain struct {
Domain string `json:"domain"`
Enabled bool `json:"enabled"`
Rules int `json:"rules"`
CacheNumbers
}
AppCacheDomain is one domain's cache state under an app.
type AppCachePurgeRequest ¶
type AppCachePurgeRequest struct {
Scope string `json:"scope"`
Value string `json:"value,omitempty"`
Domain string `json:"domain,omitempty"`
}
AppCachePurgeRequest purges url, prefix, tag or all; Domain narrows it to one of the app's domains.
type AppCachePurgeResource ¶
type AppCachePurgeResource struct {
App string `json:"app"`
Scope string `json:"scope"`
Value string `json:"value,omitempty"`
Removed int `json:"removed"`
Domains []struct {
Domain string `json:"domain"`
Removed int `json:"removed"`
} `json:"domains"`
}
AppCachePurgeResource reports what a purge removed per domain.
type AppCacheResource ¶
type AppCacheResource struct {
App string `json:"app"`
Limits CacheLimits `json:"limits"`
Totals CacheNumbers `json:"totals"`
Series []CacheBucket `json:"series"`
Domains []AppCacheDomain `json:"domains"`
}
AppCacheResource is GET /api/v1/apps/{name}/cache.
type AppConnectionResource ¶ added in v0.2.0
type AppConnectionResource struct {
EnvVar string `json:"env_var"`
DatabaseName string `json:"database_name"`
Field string `json:"field"`
Host string `json:"host"`
MeshDNS bool `json:"mesh_dns"`
NodeID string `json:"node_id,omitempty"`
CrossNode bool `json:"cross_node"`
}
AppConnectionResource mirrors internal/api's appConnectionResource: GET/POST /api/v1/apps/{name}/connections' wire shape for one DatabaseEnv entry, including a resolved-host preview so a caller can tell whether a connection is cross-node-capable without deploying.
type AppContextConfig ¶
type AppContextConfig struct {
Context string `json:"context"`
Env map[string]string `json:"env"`
BuildCommand string `json:"build_command"`
PublishDir string `json:"publish_dir"`
BuildArgs map[string]string `json:"build_args"`
UpdatedAt string `json:"updated_at,omitempty"`
}
AppContextConfig mirrors internal/api's contextConfigResource: one deploy context's env and build overrides.
type AppDatabaseResource ¶
type AppDatabaseResource struct {
AppName string `json:"app_name,omitempty"`
DatabaseName string `json:"database_name"`
EnvVar string `json:"env_var"`
Field string `json:"field"`
}
AppDatabaseResource mirrors internal/api's appDatabaseResource: PUT /api/v1/apps/{name}/database's response body.
type AppEgressAllow ¶ added in v0.2.0
AppEgressAllow mirrors internal/api's egressAllowResource: one host+port pair in an app's outbound network allowlist.
type AppEgressPolicyResource ¶ added in v0.2.0
type AppEgressPolicyResource struct {
AppName string `json:"app_name"`
Mode string `json:"mode,omitempty"`
Allow []AppEgressAllow `json:"allow,omitempty"`
}
AppEgressPolicyResource mirrors internal/api's egressPolicyResource: GET/PUT /api/v1/apps/{name}/egress-policy's response body. Mode/Allow both empty means unconfigured, unrestricted egress, the default for every app that has never opted in.
type AppEnvironmentDomains ¶ added in v0.2.0
type AppEnvironmentDomains struct {
App string `json:"app"`
ActiveEnvironmentID string `json:"active_environment_id,omitempty"`
DefaultDomains []string `json:"default_domains"`
RoutedDomains []string `json:"routed_domains"`
Environments []EnvironmentDomainSet `json:"environments"`
Reachability map[string]DomainReachability `json:"reachability,omitempty"`
}
AppEnvironmentDomains mirrors internal/api's appEnvironmentDomainsResource.
type AppExposureChange ¶
type AppExposureChange struct {
Kind string `json:"kind"`
From string `json:"from,omitempty"`
To string `json:"to,omitempty"`
}
AppExposureChange is one line of an exposure preview.
type AppExposureCheck ¶
type AppExposureCheck struct {
App string `json:"app"`
Scope string `json:"scope"`
Targets []AppExposureProbe `json:"targets"`
}
AppExposureCheck is POST /api/v1/apps/{name}/exposure/check.
type AppExposurePlan ¶
type AppExposurePlan struct {
Mode string `json:"mode"`
ContainerPort int `json:"container_port"`
HostPort int `json:"host_port,omitempty"`
BindAddress string `json:"bind_address"`
Changes []AppExposureChange `json:"changes"`
Warnings []string `json:"warnings,omitempty"`
Recreates bool `json:"recreates"`
URLs []AppExposureURL `json:"urls"`
}
AppExposurePlan is the preview of an exposure change.
type AppExposureProbe ¶
type AppExposureProbe struct {
Kind string `json:"kind"`
URL string `json:"url"`
OK bool `json:"ok"`
Status int `json:"status,omitempty"`
LatencyMS int64 `json:"latency_ms,omitempty"`
Failure string `json:"failure,omitempty"`
Detail string `json:"detail,omitempty"`
}
AppExposureProbe is one target of a reachability check.
type AppExposureRequest ¶
type AppExposureRequest struct {
Mode string `json:"mode,omitempty"`
HostPort *int `json:"host_port,omitempty"`
ContainerPort *int `json:"container_port,omitempty"`
}
AppExposureRequest is the body of the exposure preview and set calls.
type AppExposureResource ¶
type AppExposureResource struct {
AppExposurePlan
App string `json:"app"`
Running bool `json:"running"`
FirewallRuleID string `json:"firewall_rule_id,omitempty"`
PortsInUse []AppPortHolder `json:"ports_in_use"`
PortRange [2]int `json:"port_range"`
Outcome string `json:"outcome,omitempty"`
LocalNode bool `json:"local_node"`
}
AppExposureResource is GET /api/v1/apps/{name}/exposure.
type AppExposureURL ¶
AppExposureURL is one URL an app answers on under its current exposure.
type AppGitHubActionsResource ¶
type AppGitHubActionsResource struct {
Environment string `json:"environment"`
ReportDeployments bool `json:"report_deployments"`
ReportChecks bool `json:"report_checks"`
}
AppGitHubActionsResource mirrors internal/api's appGitHubActionsResource (GET/PUT /api/v1/apps/{name}/github-actions).
type AppGroupResource ¶
type AppGroupResource struct {
AppID string `json:"app_id,omitempty"`
Services []AppResource `json:"services"`
Status AppStatusSummary `json:"status"`
}
AppGroupResource mirrors internal/api's appGroupResource (internal/api/apps_group.go): GET /api/v1/apps/{name}/group's response, name's sibling services under the same store.App plus one rollup status across all of them.
type AppHealthResource ¶ added in v0.2.0
type AppHealthResource struct {
Name string `json:"name"`
Health *ServiceHealth `json:"health"`
}
AppHealthResource mirrors internal/api's appHealthResource.
type AppHealthScoreCategory ¶ added in v0.2.0
type AppHealthScoreCategory struct {
Key string `json:"key"`
Label string `json:"label"`
Status string `json:"status"`
Reason string `json:"reason"`
}
AppHealthScoreCategory mirrors internal/api's healthScoreCategory.
type AppHealthScoreResource ¶ added in v0.2.0
type AppHealthScoreResource struct {
AppName string `json:"app_name"`
Status string `json:"status"`
Categories []AppHealthScoreCategory `json:"categories"`
ComputedAt time.Time `json:"computed_at"`
}
AppHealthScoreResource mirrors internal/api's appHealthScoreResource.
type AppHookRunsResource ¶
type AppHookRunsResource struct {
PreDeploy *HookRunResource `json:"pre_deploy,omitempty"`
PostDeploy *HookRunResource `json:"post_deploy,omitempty"`
}
AppHookRunsResource mirrors internal/api's appHookRunsResource: nil fields mean that hook has never run, not an empty HookRunResource.
type AppImportChange ¶ added in v0.2.0
type AppImportChange struct {
App string `json:"app"`
Key string `json:"key"`
Secret bool `json:"secret"`
Count int `json:"count"`
Before string `json:"before"`
After string `json:"after"`
}
AppImportChange is one env value a mapping rewrote, with masked values.
type AppImportCheck ¶ added in v0.2.0
type AppImportCheck struct {
App string `json:"app,omitempty"`
ID string `json:"id"`
Status string `json:"status"`
Detail string `json:"detail"`
Fix string `json:"fix,omitempty"`
}
AppImportCheck is one preflight result.
type AppImportDatabase ¶ added in v0.2.0
type AppImportDatabase struct {
SourceID string `json:"source_id"`
Name string `json:"name"`
Host string `json:"host"`
Target string `json:"target,omitempty"`
TargetHost string `json:"target_host,omitempty"`
}
AppImportDatabase is a database an app points at.
type AppImportEntry ¶ added in v0.2.0
type AppImportEntry struct {
SourceID string `json:"source_id"`
Name string `json:"name"`
Kind string `json:"kind"`
Project string `json:"project,omitempty"`
Environment string `json:"environment,omitempty"`
Server string `json:"server,omitempty"`
Source string `json:"source"`
Repo string `json:"repo,omitempty"`
Branch string `json:"branch,omitempty"`
Image string `json:"image,omitempty"`
ImageID string `json:"image_id,omitempty"`
HostBuilt bool `json:"host_built,omitempty"`
BuildPack string `json:"build_pack,omitempty"`
MapsTo string `json:"maps_to,omitempty"`
Port int `json:"port,omitempty"`
Domains []string `json:"domains,omitempty"`
Env AppImportEnvCounts `json:"env"`
Volumes []AppImportVolume `json:"volumes,omitempty"`
Databases []AppImportDatabase `json:"databases,omitempty"`
Verdict string `json:"verdict"`
Findings []AppImportFinding `json:"findings,omitempty"`
}
AppImportEntry is one inventory row. It never holds an env value.
type AppImportEnvCounts ¶ added in v0.2.0
type AppImportEnvCounts struct {
Plain int `json:"plain"`
Secret int `json:"secret"`
Empty int `json:"empty"`
}
AppImportEnvCounts counts variables by sensitivity.
type AppImportFinding ¶ added in v0.2.0
AppImportFinding is one reason behind a verdict.
type AppImportImage ¶ added in v0.2.0
type AppImportImage struct {
SourceID string `json:"source_id"`
App string `json:"app"`
Target string `json:"target,omitempty"`
Image string `json:"image"`
SourceImageID string `json:"source_image_id,omitempty"`
LoadedImageID string `json:"loaded_image_id,omitempty"`
Node string `json:"node,omitempty"`
State string `json:"state"`
Bytes int64 `json:"bytes"`
Verified bool `json:"verified"`
Error string `json:"error,omitempty"`
UpdatedAt string `json:"updated_at,omitempty"`
}
AppImportImage is one host-built image of an import session.
type AppImportImages ¶ added in v0.2.0
type AppImportImages struct {
Running bool `json:"running"`
Source string `json:"source,omitempty"`
CredentialsHeld bool `json:"credentials_held"`
Supported bool `json:"supported"`
MaxBytes int64 `json:"max_bytes"`
Images []AppImportImage `json:"images"`
}
AppImportImages is the image move state of a session.
type AppImportImagesTransfer ¶ added in v0.2.0
type AppImportImagesTransfer struct {
SSH string `json:"ssh,omitempty"`
Port int `json:"port,omitempty"`
PrivateKey string `json:"private_key,omitempty"`
Passphrase string `json:"passphrase,omitempty"`
UseAgent bool `json:"use_agent,omitempty"`
Items []string `json:"items,omitempty"`
}
AppImportImagesTransfer is the body of POST .../images/transfer. The private key travels in this body only and is never stored.
type AppImportItem ¶ added in v0.2.0
type AppImportItem struct {
SourceID string `json:"source_id"`
Name string `json:"name"`
Target string `json:"target,omitempty"`
Kind string `json:"kind"`
State string `json:"state"`
Selected bool `json:"selected"`
Reason string `json:"reason,omitempty"`
Entry AppImportEntry `json:"entry"`
Domains []string `json:"domains,omitempty"`
Remaining []string `json:"remaining,omitempty"`
AppPath string `json:"app_path,omitempty"`
}
AppImportItem is one source app within a session.
type AppImportItemsRequest ¶ added in v0.2.0
type AppImportItemsRequest struct {
Items []string `json:"items,omitempty"`
}
AppImportItemsRequest narrows verify and rollback to some items.
type AppImportMapping ¶ added in v0.2.0
AppImportMapping rewrites one source hostname to a new one in env values.
type AppImportPlanUpdate ¶ added in v0.2.0
type AppImportPlanUpdate struct {
Mappings *[]AppImportMapping `json:"mappings,omitempty"`
Selected *[]string `json:"selected,omitempty"`
Collision string `json:"collision,omitempty"`
}
AppImportPlanUpdate is the body of PUT .../sessions/{id}/plan. Nil fields are left unchanged.
type AppImportPreflight ¶ added in v0.2.0
type AppImportPreflight struct {
Checks []AppImportCheck `json:"checks"`
Diff []AppImportChange `json:"diff"`
Failed int `json:"failed"`
Warnings int `json:"warnings"`
EnvChecked bool `json:"env_checked"`
CanStage bool `json:"can_stage"`
}
AppImportPreflight is the outcome of the preflight checks.
type AppImportRequest ¶ added in v0.2.0
type AppImportRequest struct {
Platform string `json:"platform"`
URL string `json:"url"`
Token string `json:"token"`
Snapshot string `json:"snapshot,omitempty"`
SSH *AppImportSSH `json:"ssh,omitempty"`
AppName string `json:"dokku_app_name,omitempty"`
InsecureTLS bool `json:"insecure_tls,omitempty"`
AllowPrivate bool `json:"allow_private,omitempty"`
AllowLoopback bool `json:"allow_loopback,omitempty"`
Only []string `json:"only,omitempty"`
Collision string `json:"collision,omitempty"`
Mappings []AppImportMapping `json:"mappings,omitempty"`
}
AppImportRequest is the body of the plan and session create routes. Token is the source credential and is only ever sent in this body.
type AppImportSSH ¶
type AppImportSSH struct {
Host string `json:"host"`
Port int `json:"port,omitempty"`
User string `json:"user"`
PrivateKey string `json:"private_key,omitempty"`
Passphrase string `json:"passphrase,omitempty"`
Password string `json:"password,omitempty"`
Fingerprint string `json:"host_key_fingerprint,omitempty"`
InsecureHostKey bool `json:"insecure_host_key,omitempty"`
SocketPath string `json:"socket_path,omitempty"`
}
AppImportSSH is the SSH login of a docker-ssh import source. The control plane holds it in memory only and uses it as a read-only transport to the old host's Docker socket.
type AppImportSSHHostKey ¶
type AppImportSSHHostKey struct {
Type string `json:"type"`
Fingerprint string `json:"fingerprint"`
}
AppImportSSHHostKey is one host key a server presented.
type AppImportSSHOverview ¶
type AppImportSSHOverview struct {
DockerVersion string `json:"docker_version"`
OS string `json:"os,omitempty"`
Swarm bool `json:"swarm"`
Containers int `json:"containers"`
Running int `json:"running"`
Volumes int `json:"volumes"`
Images int `json:"images"`
}
AppImportSSHOverview is what a connection test counted on the old host.
type AppImportSSHProbe ¶
type AppImportSSHProbe struct {
SSH AppImportSSH `json:"ssh"`
AllowPrivate bool `json:"allow_private,omitempty"`
AllowLoopback bool `json:"allow_loopback,omitempty"`
}
AppImportSSHProbe is the body of the host key and connection test calls.
type AppImportSSHResult ¶
type AppImportSSHResult struct {
OK bool `json:"ok"`
Target string `json:"target,omitempty"`
Kind string `json:"kind,omitempty"`
Message string `json:"message,omitempty"`
Reads string `json:"reads,omitempty"`
Overview *AppImportSSHOverview `json:"overview,omitempty"`
Keys []AppImportSSHHostKey `json:"host_keys,omitempty"`
Observed []AppImportSSHHostKey `json:"observed_host_keys,omitempty"`
Warnings []string `json:"warnings,omitempty"`
}
AppImportSSHResult is the answer of the host key and connection test calls.
type AppImportView ¶ added in v0.2.0
type AppImportView struct {
ID string `json:"id"`
Platform string `json:"platform"`
SourceURL string `json:"source_url"`
Step string `json:"step"`
Collision string `json:"collision"`
Mappings []AppImportMapping `json:"mappings"`
Suggested []AppImportMapping `json:"suggested_mappings"`
Connected bool `json:"connected"`
Running bool `json:"running"`
Items []AppImportItem `json:"items"`
Databases []AppImportDatabase `json:"databases"`
Preflight *AppImportPreflight `json:"preflight,omitempty"`
Counts map[string]int `json:"counts"`
States map[string]int `json:"states"`
}
AppImportView is a plan or a session: the inventory, selection and state.
type AppImportVolume ¶ added in v0.2.0
type AppImportVolume struct {
Name string `json:"name"`
ContainerPath string `json:"container_path"`
HostPath string `json:"host_path,omitempty"`
SizeBytes int64 `json:"size_bytes"`
SizeKnown bool `json:"size_known"`
}
AppImportVolume is one persistent mount of a source app.
type AppImportVolumeCopy ¶
type AppImportVolumeCopy struct {
Running bool `json:"running"`
MaxBytes int64 `json:"max_bytes"`
MaxFiles int `json:"max_files"`
Results []AppImportVolumeCopyResult `json:"results"`
}
AppImportVolumeCopy is the progress of a session's tunnel volume copy.
type AppImportVolumeCopyResult ¶
type AppImportVolumeCopyResult struct {
SourceID string `json:"source_id"`
App string `json:"app"`
Volume string `json:"volume"`
ContainerPath string `json:"container_path"`
State string `json:"state"`
Files int `json:"files"`
Bytes int64 `json:"bytes"`
Skipped int `json:"skipped_entries"`
Warnings []string `json:"warnings,omitempty"`
Error string `json:"error,omitempty"`
Fallback string `json:"fallback,omitempty"`
}
AppImportVolumeCopyResult is one volume's copy state.
type AppIngressLimits ¶
type AppIngressLimits struct {
MaxBodyBytes *int64 `json:"max_body_bytes"`
InstanceMaxBodyBytes int64 `json:"instance_max_body_bytes"`
}
AppIngressLimits is GET/PUT /api/v1/apps/{name}/ingress-limits.
type AppIntegrationResource ¶ added in v0.2.0
type AppIntegrationResource struct {
ID string `json:"id"`
AppName string `json:"app_name,omitempty"`
IntegrationKey string `json:"integration_key"`
Name string `json:"name"`
CreatedAt string `json:"created_at,omitempty"`
UpdatedAt string `json:"updated_at,omitempty"`
}
AppIntegrationResource mirrors internal/api's appIntegrationResource: one app's attached integration. Field values are never included here, the same "names only" shape SecretKeyResource already establishes.
type AppKeyStatus ¶
type AppKeyStatus struct {
App string `json:"app"`
CreatedAt time.Time `json:"created_at"`
RotatedAt *time.Time `json:"rotated_at,omitempty"`
AgeDays int `json:"age_days"`
ValueCount int `json:"value_count"`
Overdue bool `json:"overdue"`
}
AppKeyStatus mirrors internal/api's appKeyResource.
type AppListEntry ¶ added in v0.2.0
type AppListEntry struct {
AppResource
Status AppStatusSummary `json:"status"`
}
AppListEntry is one GET /api/v1/apps row: the app plus its status rollup.
type AppListQuery ¶ added in v0.2.0
AppListQuery narrows GET /api/v1/apps and /api/v1/apps-summary.
type AppMaintenanceDomain ¶
type AppMaintenanceDomain struct {
DomainMaintenanceResource
ElapsedSeconds int64 `json:"elapsed_seconds,omitempty"`
}
AppMaintenanceDomain is one domain in AppMaintenanceResource.
type AppMaintenanceResource ¶
type AppMaintenanceResource struct {
App string `json:"app"`
Enabled bool `json:"enabled"`
All bool `json:"all"`
Total int `json:"total_domains"`
Active int `json:"active_domains"`
Domains []AppMaintenanceDomain `json:"domains"`
}
AppMaintenanceResource is GET/PUT/DELETE /api/v1/apps/{name}/maintenance.
type AppMetricsResource ¶
type AppMetricsResource struct {
Metric string `json:"metric"`
Points []MetricPointResource `json:"points"`
}
AppMetricsResource mirrors internal/api's metricsResponse (internal/api/metrics.go).
type AppMetricsSummary ¶ added in v0.2.0
type AppMetricsSummary struct {
Name string `json:"name"`
CPUPercent *float64 `json:"cpu_percent,omitempty"`
MemoryBytes *float64 `json:"memory_usage_bytes,omitempty"`
MemoryLimit *float64 `json:"memory_limit_bytes,omitempty"`
HasTraffic bool `json:"has_traffic"`
RatePerSec float64 `json:"rate_per_sec"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
P95Ms float64 `json:"p95_ms"`
Spark []float64 `json:"spark"`
LastDeployAt *time.Time `json:"last_deploy_at,omitempty"`
}
AppMetricsSummary is one row of GET /api/v1/apps-metrics.
type AppPortHolder ¶
type AppPortHolder struct {
Port int `json:"port"`
Kind string `json:"kind"`
Holder string `json:"holder"`
}
AppPortHolder names who holds a host port on the node.
type AppPreviewEnvOverride ¶ added in v0.2.0
AppPreviewEnvOverride mirrors handleSetAppPreviewEnvOverride's own response shape: the env var key plus the preview-specific value just saved.
type AppRequestsResource ¶ added in v0.2.0
type AppRequestsResource struct {
App string `json:"app"`
From time.Time `json:"from"`
To time.Time `json:"to"`
StepSeconds float64 `json:"step_seconds"`
Summary RequestSummaryResource `json:"summary"`
Points []RequestPointResource `json:"points"`
}
AppRequestsResource mirrors internal/api's requestsResponse.
type AppResource ¶
type AppResource struct {
Name string `json:"name"`
Image string `json:"image"`
// PendingImage is set while a rollout to a new image is in progress or
// failed; Image is then the last image confirmed serving.
PendingImage string `json:"pending_image,omitempty"`
// ImageDigest is the content Image is pinned to, empty for a legacy tag.
ImageDigest string `json:"image_digest,omitempty"`
Port int `json:"port"`
// HostPort mirrors internal/api's appResource.HostPort: nil means
// "let Docker assign one", a value pins the host-side port. Settable
// on create and update, like Port.
HostPort *int `json:"host_port,omitempty"`
// BindAddress mirrors internal/api's appResource.BindAddress:
// "private" (loopback only, the default), "public" (every
// interface), or a literal IP. No omitempty: a response always
// carries the resolved value.
BindAddress string `json:"bind_address"`
// Replicas and Strategy must round-trip: UpdateApp is a full replace, so
// dropping them on a GET-then-PUT would reset a scaled app to defaults.
Replicas int `json:"replicas,omitempty"`
Strategy string `json:"strategy,omitempty"`
Domains []string `json:"domains,omitempty"`
// Env holds MaskedEnvValue for sensitive keys; sending it back keeps the stored value.
Env map[string]string `json:"env,omitempty"`
// SecretEnv mirrors internal/api's appResource.SecretEnv: names of
// env vars backed by encrypted secret storage, values held only in
// Secrets below or set later via PUT .../secrets/{key}, never here.
SecretEnv []string `json:"secret_env,omitempty"`
// Secrets mirrors internal/api's appResource.Secrets: plaintext
// values to encrypt and store for SecretEnv-named vars at create
// time. Write-only, like SetSecretRequest's own Value: never
// populated on a response.
Secrets map[string]string `json:"secrets,omitempty"`
// VaultEnv mirrors internal/api's appResource.VaultEnv: env vars
// whose values resolve live from an external HashiCorp Vault
// instance, never a value this platform stores. Settable at create
// time, response-mirrors the store otherwise.
VaultEnv map[string]AppVaultEnvRef `json:"vault_env,omitempty"`
Resources *ServiceResources `json:"resources,omitempty"`
Health *ServiceHealth `json:"health,omitempty"`
// Hooks mirrors internal/api's appResource.Hooks: settable on create
// and update, like Resources/Health above.
Hooks *ServiceHooks `json:"hooks,omitempty"`
// NodeID mirrors internal/api's appResource.NodeID: response-only on
// update, but settable at create time as an explicit placement
// override (omitted entirely lets the server auto-place via simple
// spread scheduling instead, see AutoPlaced below).
NodeID string `json:"node_id,omitempty"`
// AutoPlaced mirrors internal/api's appResource.AutoPlaced:
// response-only, true when create left node_id unset and the server
// picked a non-local node for it via simple spread scheduling.
AutoPlaced bool `json:"auto_placed,omitempty"`
// ProjectID mirrors internal/api's appResource.ProjectID:
// response-only, set via PUT /api/v1/apps/{name}/project.
ProjectID string `json:"project_id,omitempty"`
// EnvironmentID mirrors internal/api's appResource.EnvironmentID:
// response-only, set via PUT /api/v1/apps/{name}/environment.
EnvironmentID string `json:"environment_id,omitempty"`
// StorageTargetID mirrors internal/api's appResource.StorageTargetID:
// response-only, set via PUT/DELETE /api/v1/apps/{name}/storage
// (SetAppStorage/ClearAppStorage).
StorageTargetID string `json:"storage_target_id,omitempty"`
// EnvDirty mirrors internal/api's appResource.EnvDirty: true means
// Env was saved since the running container was last recreated, so
// the change is not live yet. Clears on restart or redeploy.
EnvDirty bool `json:"env_dirty"`
// PreviousReleaseHeldUntil mirrors internal/api's GET app payload: when
// the kept previous release, an instant rollback target, is removed.
PreviousReleaseHeldUntil string `json:"previous_release_held_until,omitempty"`
// FallbackURL is the automatic sslip.io URL of an app with no domain (GET only).
FallbackURL string `json:"fallback_url,omitempty"`
// StrategyReason and MemoryFromTemplate mirror the GET app payload: why a template pinned the strategy, and whether the memory limit is the template's recommendation.
StrategyReason string `json:"strategy_reason,omitempty"`
MemoryFromTemplate bool `json:"memory_from_template,omitempty"`
// Volumes mirrors internal/api's appResource.Volumes: this app's
// declared named Docker volumes, response-only (declared through
// app.yaml, not settable here).
Volumes []AppVolumeResource `json:"volumes,omitempty"`
// BindMounts mirrors internal/api's appResource.BindMounts: this
// app's declared host-directory bind mounts, response-only
// (declared through app.yaml or a compose import, not settable
// here).
BindMounts []AppBindMountResource `json:"bind_mounts,omitempty"`
// Command mirrors internal/api's appResource.Command: overrides the
// image's own default CMD, response-only (declared through app.yaml's
// command: or a compose import, not settable here).
Command []string `json:"command,omitempty"`
// PullPolicy mirrors internal/api's appResource.PullPolicy: "always"
// forces a fresh image pull on every deploy, empty is the default
// pull-if-absent behavior. Response-only (declared through a compose
// import's pull_policy:, not settable here).
PullPolicy string `json:"pull_policy,omitempty"`
// PreviewEnvOverrides mirrors internal/api's
// appResource.PreviewEnvOverrides: response-only, set via PUT/DELETE
// /api/v1/apps/{name}/preview-env/{key} (SetAppPreviewEnvOverride/
// ClearAppPreviewEnvOverride).
PreviewEnvOverrides map[string]string `json:"preview_env_overrides,omitempty"`
// Tags mirrors internal/api's appResource.Tags: names of every
// store.Tag attached to this app, response-only, set via POST/DELETE
// /api/v1/apps/{name}/tags (AttachAppTag/DetachAppTag).
Tags []string `json:"tags,omitempty"`
}
AppResource mirrors internal/api's appResource (apps.go). Field order and JSON tags match exactly, so a response decodes cleanly and a request encodes into exactly what the server expects.
type AppResourceUsageResource ¶ added in v0.2.0
type AppResourceUsageResource struct {
Name string `json:"name"`
CPUPercent *float64 `json:"cpu_percent,omitempty"`
MemoryUsageBytes *float64 `json:"memory_usage_bytes,omitempty"`
MemoryLimitBytes *float64 `json:"memory_limit_bytes,omitempty"`
NetworkRxBytes *float64 `json:"network_rx_bytes,omitempty"`
NetworkTxBytes *float64 `json:"network_tx_bytes,omitempty"`
}
AppResourceUsageResource mirrors internal/api's appResourceUsageResource (internal/api/app_resource_usage.go): one app's latest known CPU/memory/network reading, for the dashboard's "what's consuming the most resources right now" ranking. A nil field means telemetry has never recorded that metric for this app yet, not zero usage.
type AppScheduleHistoryEntry ¶ added in v0.2.0
type AppScheduleHistoryEntry struct {
ID string `json:"id"`
ScheduledFor time.Time `json:"scheduled_for"`
FiredAt time.Time `json:"fired_at"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
}
AppScheduleHistoryEntry mirrors internal/api's appScheduleHistoryResource (GET /api/v1/apps/{name}/schedule/history).
type AppScheduleResource ¶ added in v0.2.0
type AppScheduleResource struct {
ServiceName string `json:"service_name"`
Cron string `json:"cron"`
Branch string `json:"branch"`
Timezone string `json:"timezone"`
Enabled bool `json:"enabled"`
NextRunAt *time.Time `json:"next_run_at,omitempty"`
RunAt *time.Time `json:"run_at,omitempty"`
CompletedAt *time.Time `json:"completed_at,omitempty"`
}
AppScheduleResource mirrors internal/api's appScheduleResource (GET/PUT /api/v1/apps/{name}/schedule).
type AppSleepResource ¶ added in v0.2.0
type AppSleepResource struct {
Enabled bool `json:"enabled"`
IdleMinutes int `json:"idle_minutes"`
Sleeping bool `json:"sleeping"`
// Since is when the app went to sleep, set only while it is asleep.
Since *time.Time `json:"since,omitempty"`
// HoldRequests is function mode: a request that wakes the app waits for it.
HoldRequests bool `json:"hold_requests"`
Blockers []SleepItem `json:"blockers"`
Warnings []SleepItem `json:"warnings"`
Eligible bool `json:"eligible"`
Settings SleepSettings `json:"settings"`
PortWake SleepPortWake `json:"port_wake"`
Activity SleepActivity `json:"activity"`
// ColdStartMsP50 is nil when the app has no recorded wakes.
ColdStartMsP50 *int64 `json:"cold_start_ms_p50"`
// EstimatedMemoryFreedBytes is nil when the app has no memory limit.
EstimatedMemoryFreedBytes *int64 `json:"estimated_memory_freed_bytes"`
// WakeTiming has Samples 0 when the app has no timed wakes.
WakeTiming WakeTiming `json:"wake_timing"`
IdleLimits SleepIdleLimits `json:"idle_limits"`
}
AppSleepResource mirrors internal/api's appSleepResource.
type AppStatusEntry ¶ added in v0.2.0
type AppStatusEntry struct {
Name string `json:"name"`
Status struct {
Label string `json:"label"`
Variant string `json:"variant"`
} `json:"status"`
}
AppStatusEntry is one row of GET /api/v1/apps reduced to its name and status rollup (internal/api's appStatusSummary).
type AppStatusSummary ¶
AppStatusSummary mirrors internal/api's appStatusSummary (internal/api/app_status.go): a compact category rollup, not the raw conditions list ConditionResource carries.
type AppStorageResource ¶ added in v0.2.0
type AppStorageResource struct {
AppName string `json:"app_name"`
StorageTargetID string `json:"storage_target_id,omitempty"`
}
AppStorageResource mirrors internal/api's appStorageResource (internal/api/apps_storage.go): PUT/DELETE /api/v1/apps/{name}/storage's response.
type AppStreamResource ¶ added in v0.2.0
type AppStreamResource struct {
ID string `json:"id"`
App string `json:"app"`
ContainerPort int `json:"container_port"`
HostPort int `json:"host_port"`
Protocol string `json:"protocol"`
CreatedAt string `json:"created_at"`
}
AppStreamResource mirrors internal/api's appStreamResource.
type AppTrafficResource ¶
type AppTrafficResource struct {
App string `json:"app"`
Window string `json:"window"`
From time.Time `json:"from"`
To time.Time `json:"to"`
HasTraffic bool `json:"has_traffic"`
Requests float64 `json:"requests"`
RatePerSec float64 `json:"rate_per_sec"`
StatusClasses TrafficStatusClasses `json:"status_classes"`
ErrorRate4xx float64 `json:"error_rate_4xx"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
UpstreamErrors float64 `json:"upstream_errors"`
Latency TrafficLatency `json:"latency"`
Replicas []TrafficReplica `json:"replicas"`
SlowRoutes []TrafficRoute `json:"slow_routes"`
TopRoutes []TrafficRoute `json:"top_routes"`
Samples []TrafficSample `json:"samples"`
Referrers []TrafficLabel `json:"referrers"`
Countries []TrafficLabel `json:"countries"`
SLO *TrafficSLO `json:"slo,omitempty"`
Shield TrafficShield `json:"shield"`
Abuse AbuseCounters `json:"abuse"`
ErrorSpikes []TrafficErrorSpike `json:"error_spikes"`
}
AppTrafficResource is GET /api/v1/apps/{name}/traffic.
type AppURLAddress ¶
type AppURLAddress struct {
Kind string `json:"kind"`
Host string `json:"host,omitempty"`
URL string `json:"url,omitempty"`
Port int `json:"port,omitempty"`
ReachableHint string `json:"reachable_hint"`
}
AppURLAddress is one way to reach an app, from GET /api/v1/apps/{name}/urls.
type AppURLs ¶
type AppURLs struct {
App string `json:"app"`
ContainerPort int `json:"container_port"`
HostPort int `json:"host_port,omitempty"`
BindAddress string `json:"bind_address"`
Running bool `json:"running"`
Node string `json:"node,omitempty"`
LocalNode bool `json:"local_node"`
Addresses []AppURLAddress `json:"addresses"`
}
AppURLs is the response of GET /api/v1/apps/{name}/urls.
type AppVaultEnvRef ¶ added in v0.2.0
AppVaultEnvRef mirrors internal/api's appVaultEnvRef: one env var's { path, key } reference into an external Vault instance.
type AppVolumeMoveResource ¶ added in v0.2.0
type AppVolumeMoveResource struct {
ID string `json:"id"`
ServiceName string `json:"service_name"`
FromNodeID string `json:"from_node_id"`
ToNodeID string `json:"to_node_id"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
Steps []AppVolumeMoveStepResource `json:"steps"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
AppVolumeMoveResource mirrors internal/api's appVolumeMoveResource: one "move this app to another node, taking its volumes with it" attempt. MoveAppWithVolumes always returns this shape regardless of status code: 200 means it already finished (an app with no volumes, or already on the target node), 202 means Status is "running" and the caller should poll GetAppVolumeMove until it isn't.
type AppVolumeMoveStepResource ¶ added in v0.2.0
type AppVolumeMoveStepResource struct {
Name string `json:"name"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
AppVolumeMoveStepResource mirrors internal/api's appVolumeMoveStepResource (apps_move_with_volumes.go).
type AppVolumeResource ¶
type AppVolumeResource struct {
Name string `json:"name"`
ContainerPath string `json:"container_path"`
}
AppVolumeResource mirrors internal/api's appVolumeResource (app_volumes.go): one of an app's named Docker volumes, identified by its logical name (what an operator wrote in app.yaml), not the resolved, platform-prefixed Docker volume name.
type AppWatchResource ¶
type AppWatchResource struct {
DeployID string `json:"deploy_id,omitempty"`
Image string `json:"image,omitempty"`
Watch WatchStatusResource `json:"watch"`
Settings DeploySafetySettingsResource `json:"settings"`
}
AppWatchResource is GET /api/v1/apps/{name}/watch.
type ApplyAlertTemplateResult ¶
type ApplyAlertTemplateResult struct {
Profile string `json:"profile"`
Created []AlertRuleResource `json:"created"`
Skipped []string `json:"skipped"`
}
ApplyAlertTemplateResult lists the rules created and the names skipped as already present.
type ApplyPendingResult ¶ added in v0.2.0
type ApplyPendingResult struct {
AttemptID string `json:"attempt_id,omitempty"`
}
ApplyPendingResult mirrors internal/api's applyPendingResult.
type ApplyPolicyTemplateAttach ¶ added in v0.2.0
type ApplyPolicyTemplateAttach struct {
PrincipalType string `json:"principal_type"`
PrincipalID string `json:"principal_id"`
}
ApplyPolicyTemplateAttach names the user or token a template policy is attached to.
type ApplyPolicyTemplateRequest ¶ added in v0.2.0
type ApplyPolicyTemplateRequest struct {
Name string `json:"name,omitempty"`
Params map[string]string `json:"params,omitempty"`
Attach *ApplyPolicyTemplateAttach `json:"attach,omitempty"`
}
ApplyPolicyTemplateRequest mirrors internal/api's applyTemplateRequest.
type ApplyPolicyTemplateResponse ¶ added in v0.2.0
type ApplyPolicyTemplateResponse struct {
Policy PolicyResource `json:"policy"`
Attached bool `json:"attached"`
}
ApplyPolicyTemplateResponse mirrors internal/api's applyTemplateResponse.
type ApprovePreviewResult ¶ added in v0.2.0
type ApprovePreviewResult struct {
Status string `json:"status"`
}
ApprovePreviewResult is POST .../approve's body.
type AppsPage ¶ added in v0.2.0
type AppsPage struct {
Items []AppResource
NextOffset int
TotalCount int
}
AppsPage is one page of GET /api/v1/apps, returned by ListAppsPage. NextOffset is 0 when there is no further page; TotalCount is the server's own X-Total-Count header, the full match count before paging.
type AppsSummary ¶ added in v0.2.0
type AppsSummary struct {
Total int `json:"total"`
Running int `json:"running"`
Failing int `json:"failing"`
Deploying int `json:"deploying"`
Stopped int `json:"stopped"`
Unknown int `json:"unknown"`
}
AppsSummary is GET /api/v1/apps-summary's body.
type ArchiveBundle ¶
type ArchiveBundle struct {
ID string `json:"id"`
Kind string `json:"kind"`
CreatedAt string `json:"created_at"`
Cutoff string `json:"cutoff"`
Rows map[string]int `json:"rows"`
TotalRows int `json:"total_rows"`
SizeBytes int64 `json:"size_bytes"`
SHA256 string `json:"sha256"`
VerifiedAt string `json:"verified_at,omitempty"`
VerifiedOK *bool `json:"verified_ok,omitempty"`
RestoredAt string `json:"restored_at,omitempty"`
}
ArchiveBundle mirrors internal/archive.Bundle.
type ArchiveList ¶
type ArchiveList struct {
Bundles []ArchiveBundle `json:"bundles"`
Policy ArchivePolicy `json:"policy"`
HotRows map[string]int `json:"hot_rows"`
TotalSize int64 `json:"total_size_bytes"`
}
ArchiveList mirrors GET /api/v1/archives.
type ArchivePolicy ¶
type ArchivePolicy struct {
Enabled bool `json:"enabled"`
AuditHotDays int `json:"audit_hot_days"`
DeployHotDays int `json:"deploy_hot_days"`
PipelineHotDays int `json:"pipeline_hot_days"`
KeepDays int `json:"keep_days"`
LastRunAt string `json:"last_run_at,omitempty"`
LastRunError string `json:"last_run_error,omitempty"`
}
ArchivePolicy mirrors internal/store.ArchiveSettings.
type ArchiveRestoreResult ¶
type ArchiveRestoreResult struct {
Restored map[string]int `json:"restored"`
Existing int `json:"already_present"`
Skipped int `json:"skipped_missing_parent"`
}
ArchiveRestoreResult mirrors internal/archive.RestoreResult.
type ArchiveRows ¶
type ArchiveRows struct {
Table string `json:"table"`
Total int `json:"total"`
Rows []map[string]any `json:"rows"`
}
ArchiveRows mirrors internal/archive.Rows.
type ArchiveRunResult ¶
type ArchiveRunResult struct {
Created []ArchiveBundle `json:"created"`
Pruned int `json:"pruned"`
}
ArchiveRunResult mirrors internal/archive.RunResult.
type ArchiveVerifyResult ¶
type ArchiveVerifyResult struct {
Bundle ArchiveBundle `json:"bundle"`
OK bool `json:"ok"`
Error string `json:"error,omitempty"`
}
ArchiveVerifyResult is the verify-by-restore outcome.
type AttachAppIntegrationRequest ¶ added in v0.2.0
type AttachAppIntegrationRequest struct {
IntegrationKey string `json:"integration_key"`
Fields map[string]string `json:"fields"`
}
AttachAppIntegrationRequest mirrors internal/api's attachAppIntegrationRequest.
type AttachAppTagRequest ¶ added in v0.2.0
type AttachAppTagRequest struct {
Name string `json:"name"`
}
AttachAppTagRequest mirrors internal/api's attachAppTagRequest: POST /api/v1/apps/{name}/tags' body, a tag name rather than an ID (see that type's own doc comment for why).
type AttachPolicyRequest ¶
type AttachPolicyRequest struct {
PrincipalType string `json:"principal_type"`
PrincipalID string `json:"principal_id"`
}
AttachPolicyRequest mirrors internal/api's attachPolicyRequest.
type AttentionFeedItem ¶ added in v0.2.0
type AttentionFeedItem struct {
ID string `json:"id"`
Severity string `json:"severity"`
Kind string `json:"kind"`
Subject string `json:"subject"`
Title string `json:"title"`
Detail string `json:"detail"`
Action string `json:"action"`
Link string `json:"link"`
Params map[string]string `json:"params,omitempty"`
Class string `json:"class,omitempty"`
}
AttentionFeedItem is one server-built attention item (GET /api/v1/attention/feed), already limited to what the caller may see.
type AuditChainProblem ¶
AuditChainProblem mirrors store.AuditChainProblem.
type AuditChainReport ¶
type AuditChainReport struct {
OK bool `json:"ok"`
Checked int `json:"checked"`
Head int64 `json:"head"`
Checkpoints int `json:"checkpoints"`
Unverified int `json:"unverified"`
Unchained int `json:"unchained"`
Problems []AuditChainProblem `json:"problems"`
}
AuditChainReport mirrors store.AuditChainReport.
type AuditLogEntryResource ¶
type AuditLogEntryResource struct {
ID string `json:"id"`
ActorType string `json:"actor_type"`
ActorID string `json:"actor_id"`
ActorName string `json:"actor_name"`
Ability string `json:"ability"`
Method string `json:"method"`
Path string `json:"path"`
StatusCode int `json:"status_code"`
RemoteAddr string `json:"remote_addr"`
CreatedAt string `json:"created_at"`
ClientKind string `json:"client_kind"`
// AgentName labels the AI agent behind the token; AgentClient is the
// self-reported MCP client name and version.
AgentName string `json:"agent_name,omitempty"`
AgentClient string `json:"agent_client,omitempty"`
}
AuditLogEntryResource mirrors internal/api's auditLogEntryResource (internal/api/audit.go).
type AuthEngineStatusResource ¶ added in v0.2.0
type AuthEngineStatusResource struct {
LibraryVersion string `json:"library_version"`
TOTP bool `json:"totp"`
Passkeys bool `json:"passkeys"`
OAuth bool `json:"oauth"`
}
AuthEngineStatusResource mirrors internal/api's authEngineStatusResponse.
type AuthGateEvent ¶ added in v0.2.0
type AuthGateEvent struct {
At string `json:"at"`
UserID string `json:"user_id"`
UserEmail string `json:"user_email"`
Decision string `json:"decision"`
Reason string `json:"reason"`
IP string `json:"ip"`
Count int `json:"count"`
}
AuthGateEvent mirrors internal/api's authGateEventResource.
type AuthGateEventsResponse ¶ added in v0.2.0
type AuthGateEventsResponse struct {
Domain string `json:"domain"`
Since string `json:"since"`
Events []AuthGateEvent `json:"events"`
}
AuthGateEventsResponse mirrors internal/api's authGateEventsResponse.
type AuthGateRule ¶ added in v0.2.0
type AuthGateRule struct {
Kind string `json:"kind"`
Subject string `json:"subject"`
Label string `json:"label,omitempty"`
}
AuthGateRule is one built-in gate allow rule; Label is the email, team name or role name.
type AuthGateSessionsRevoked ¶ added in v0.2.0
type AuthGateSessionsRevoked struct {
Domain string `json:"domain"`
Revoked int64 `json:"revoked"`
}
AuthGateSessionsRevoked mirrors internal/api's gateSessionsRevokedResponse.
type AutoRollbackSLOBurnSettingResource ¶ added in v0.2.0
type AutoRollbackSLOBurnSettingResource struct {
Mode string `json:"mode"`
}
AutoRollbackSLOBurnSettingResource mirrors internal/api's autoRollbackSLOBurnSettingResource: both GET and PUT /api/v1/apps/{name}/auto-rollback-slo-burn's response, how this app reacts the next time a kind=slo_burn alert rule fires.
type AutoRollbackSettingResource ¶ added in v0.2.0
type AutoRollbackSettingResource struct {
Enabled bool `json:"enabled"`
}
AutoRollbackSettingResource mirrors internal/api's autoRollbackSettingResource: both GET and PUT /api/v1/apps/{name}/auto-rollback's response, whether this app rolls itself back automatically the next time a crashloop alert rule fires.
type AutomationRun ¶ added in v0.2.0
type AutomationRun struct {
ID string `json:"id"`
App string `json:"app"`
Domain string `json:"domain"`
Result string `json:"result"`
Steps []GoLiveStep `json:"steps"`
CreatedAt time.Time `json:"created_at"`
UndoneAt *time.Time `json:"undone_at,omitempty"`
Undoable bool `json:"undoable"`
}
AutomationRun is one entry of the automation history.
type BackupCoverageResponse ¶ added in v0.2.0
type BackupCoverageResponse struct {
Summary CoverageSummaryResource `json:"summary"`
Resources []CoverageRowResource `json:"resources"`
Targets []struct {
ID string `json:"id"`
Name string `json:"name"`
Provider string `json:"provider"`
} `json:"targets"`
Defaults BackupDefaults `json:"defaults"`
}
BackupCoverageResponse mirrors internal/api's backupCoverageResponse.
type BackupDefaults ¶ added in v0.2.0
type BackupDefaults struct {
Schedule string `json:"schedule"`
Retain int `json:"retain"`
RetainDays int `json:"retain_days"`
}
BackupDefaults mirrors internal/api's backupDefaults.
type BackupDrillResource ¶ added in v0.2.0
type BackupDrillResource struct {
ID string `json:"id"`
BackupID string `json:"backup_id"`
ResourceKind string `json:"resource_kind"`
DatabaseName string `json:"database_name,omitempty"`
ServiceName string `json:"service_name,omitempty"`
VolumeName string `json:"volume_name,omitempty"`
Trigger string `json:"trigger"`
Status string `json:"status"`
Stage string `json:"stage"`
ObjectOK bool `json:"object_ok"`
ChecksumOK bool `json:"checksum_ok"`
RestoreOK bool `json:"restore_ok"`
ContentOK bool `json:"content_ok"`
Files int64 `json:"files"`
Bytes int64 `json:"bytes"`
DurationMS int64 `json:"duration_ms"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
BackupDrillResource mirrors internal/api's drillResource.
type BackupHealthResponse ¶ added in v0.2.0
type BackupHealthResponse struct {
Resources []ResourceHealthResource `json:"resources"`
Targets []TargetProtectionResource `json:"targets"`
Encryption struct {
Enabled bool `json:"enabled"`
Recipient string `json:"recipient,omitempty"`
Codec string `json:"codec"`
} `json:"encryption"`
}
BackupHealthResponse mirrors internal/api's backupHealthResponse.
type BackupHistoryResource ¶
type BackupHistoryResource struct {
ID string `json:"id"`
ResourceKind string `json:"resource_kind"`
DatabaseName string `json:"database_name,omitempty"`
ServiceName string `json:"service_name,omitempty"`
VolumeName string `json:"volume_name,omitempty"`
TargetID string `json:"target_id"`
ObjectKey string `json:"object_key"`
SizeBytes int64 `json:"size_bytes"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
ChecksumSHA256 string `json:"checksum_sha256,omitempty"`
}
BackupHistoryResource mirrors internal/api's backupHistoryResource (internal/api/backups.go). ServiceName/VolumeName are set instead of DatabaseName for an app service volume backup, never alongside it.
type BackupScheduleResource ¶
type BackupScheduleResource struct {
DatabaseName string `json:"database_name"`
TargetID string `json:"target_id,omitempty"`
Schedule string `json:"schedule,omitempty"`
Retain int `json:"retain,omitempty"`
RetainDays int `json:"retain_days,omitempty"`
}
BackupScheduleResource mirrors internal/api's backupScheduleResource (internal/api/backups.go): PUT/DELETE .../backup-schedule only ever touch these three fields, never the full database resource.
type BackupSummaryResource ¶ added in v0.2.0
type BackupSummaryResource struct {
ID string `json:"id"`
At string `json:"at"`
Status string `json:"status"`
SizeBytes int64 `json:"size_bytes"`
Codec string `json:"codec,omitempty"`
Error string `json:"error,omitempty"`
}
BackupSummaryResource mirrors internal/api's backupSummaryResource.
type BackupTargetEncryptionResource ¶
type BackupTargetEncryptionResource struct {
TargetID string `json:"target_id"`
Enabled bool `json:"enabled"`
KeyAvailable bool `json:"key_available"`
Recipient string `json:"recipient,omitempty"`
KeyStoredOffBox bool `json:"key_stored_off_box"`
}
BackupTargetEncryptionResource mirrors internal/api's backupTargetEncryptionResource.
type BackupTargetResource ¶
type BackupTargetResource struct {
ID string `json:"id"`
Name string `json:"name"`
Provider string `json:"provider"`
Endpoint string `json:"endpoint,omitempty"`
Region string `json:"region,omitempty"`
Bucket string `json:"bucket"`
CreatedAt string `json:"created_at"`
// EncryptDumps is true when new database dumps are age-sealed.
EncryptDumps bool `json:"encrypt_dumps"`
}
BackupTargetResource mirrors internal/api's backupTargetResource (internal/api/backup_targets.go). No credential fields: access_key_id and secret_access_key are write-only, accepted through CreateBackupTargetRequest/UpdateBackupTargetRequest and never echoed back in any response.
type BackupVerificationResource ¶
type BackupVerificationResource struct {
ID string `json:"id"`
BackupHistoryID string `json:"backup_history_id"`
Status string `json:"status"`
ChecksumMatch bool `json:"checksum_match"`
SizeMatch bool `json:"size_match"`
FormatValid bool `json:"format_valid"`
DownloadedBytes int64 `json:"downloaded_bytes"`
Error string `json:"error,omitempty"`
CheckedBy string `json:"checked_by,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
BackupVerificationResource mirrors internal/api's backupVerificationResource (internal/api/backup_verify.go).
type BaseBackupHistoryResource ¶ added in v0.2.0
type BaseBackupHistoryResource struct {
ID string `json:"id"`
DatabaseName string `json:"database_name"`
TargetID string `json:"target_id"`
LSN string `json:"lsn,omitempty"`
SizeBytes int64 `json:"size_bytes"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
BaseBackupHistoryResource mirrors internal/api's baseBackupHistoryResource: GET/POST .../base-backups.
type BaseDomainBackfill ¶ added in v0.2.0
type BaseDomainBackfill struct {
DryRun bool `json:"dry_run"`
BaseDomain string `json:"base_domain"`
Items []BaseDomainBackfillItem `json:"items"`
}
BaseDomainBackfill is the backfill response.
type BaseDomainBackfillItem ¶ added in v0.2.0
type BaseDomainBackfillItem struct {
App string `json:"app"`
Domain string `json:"domain"`
Status string `json:"status"`
DNS *DomainDNSResult `json:"dns,omitempty"`
}
BaseDomainBackfillItem is one app of a backfill.
type BenchmarkList ¶
type BenchmarkList struct {
Runs []BenchmarkRunSummary `json:"runs"`
Keep int `json:"keep"`
}
BenchmarkList mirrors GET /api/v1/benchmarks.
type BenchmarkRun ¶
type BenchmarkRun struct {
Run BenchmarkRunSummary `json:"run"`
Report benchreport.Report `json:"report"`
Groups map[string]string `json:"groups"`
}
BenchmarkRun mirrors GET /api/v1/benchmarks/{id}.
type BenchmarkRunSummary ¶
type BenchmarkRunSummary struct {
ID string `json:"id"`
GeneratedAt time.Time `json:"generated_at"`
Version string `json:"version"`
Commit string `json:"commit"`
Dirty bool `json:"dirty"`
HostSummary string `json:"host_summary"`
HostOS string `json:"host_os"`
Repeat int `json:"repeat"`
Passed int `json:"passed"`
Failed int `json:"failed"`
Skipped int `json:"skipped"`
RecordedBy string `json:"recorded_by,omitempty"`
CreatedAt time.Time `json:"created_at"`
}
BenchmarkRunSummary mirrors one row of GET /api/v1/benchmarks.
type BetaFeature ¶ added in v0.2.0
type BetaFeature struct {
ID string `json:"id"`
Name string `json:"name"`
Summary string `json:"summary"`
Enabled bool `json:"enabled"`
EnabledBy string `json:"enabled_by"`
Toggleable bool `json:"toggleable"`
AppliesLive bool `json:"applies_live"`
PendingRestart bool `json:"pending_restart"`
RequiresRestart bool `json:"requires_restart"`
EnvHint string `json:"env_hint"`
DocsPath string `json:"docs_path"`
Maturity string `json:"maturity"`
Locked bool `json:"locked"`
}
BetaFeature is one gated feature as the API describes it.
type BoundEnvEntry ¶
type BoundEnvEntry struct {
Key string `json:"key"`
Source string `json:"source"`
SourceName string `json:"source_name"`
Field string `json:"field"`
Value string `json:"value,omitempty"`
Masked bool `json:"masked"`
}
BoundEnvEntry is one variable injected from a database link or bucket binding.
type BranchDeploy ¶
type BranchDeploy struct {
Branch string `json:"branch"`
Slug string `json:"slug"`
DeployAppID string `json:"deploy_app_id"`
URL string `json:"url,omitempty"`
Domain string `json:"domain,omitempty"`
HeadSHA string `json:"head_sha"`
HeadMessage string `json:"head_message,omitempty"`
Status string `json:"status"`
StatusReason string `json:"status_reason,omitempty"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
ExpiresAt string `json:"expires_at,omitempty"`
}
BranchDeploy is one live branch deployment.
type BranchDeploySettings ¶
type BranchDeploySettings struct {
Mode string `json:"mode"`
Patterns []string `json:"patterns"`
ProductionBranch string `json:"production_branch"`
IdleTTLHours int `json:"idle_ttl_hours"`
}
BranchDeploySettings mirrors GET /api/v1/apps/{name}/branch-deploys's settings object.
type BranchDeploys ¶
type BranchDeploys struct {
Settings BranchDeploySettings `json:"settings"`
Deploys []BranchDeploy `json:"deploys"`
}
BranchDeploys is the settings plus live branch deploys of one app.
type BucketAppRef ¶
BucketAppRef is one app a bucket is bound to.
type BucketObject ¶
type BucketObject struct {
Key string `json:"key"`
Size int64 `json:"size"`
LastModified time.Time `json:"last_modified"`
}
BucketObject is one object in a bucket.
type BucketObjects ¶
type BucketObjects struct {
Objects []BucketObject `json:"objects"`
Next string `json:"next,omitempty"`
}
BucketObjects is one page of a bucket listing.
type BucketPresign ¶
type BucketPresign struct {
URL string `json:"url"`
Method string `json:"method"`
ExpiresAt string `json:"expires_at"`
}
BucketPresign is a time-limited URL for one object.
type BucketSweepResult ¶
BucketSweepResult reports what a lifecycle sweep removed.
type BucketUsage ¶
type BucketUsage struct {
Bytes int64 `json:"bytes"`
Objects int64 `json:"objects"`
QuotaBytes int64 `json:"quota_bytes"`
}
BucketUsage is the stored size of a bucket against its quota.
type BuildCacheClearResult ¶ added in v0.2.0
BuildCacheClearResult reports a cache clear. More means run it again.
type BuildCachePruneRequest ¶
type BuildCachePruneRequest struct {
Node string `json:"node"`
OlderThanHours *int `json:"older_than_hours,omitempty"`
Apply bool `json:"apply"`
}
BuildCachePruneRequest is the body of POST /api/v1/builds/cache/prune.
type BuildCachePruneResource ¶
type BuildCachePruneResource struct {
Node string `json:"node"`
Applied bool `json:"applied"`
OlderThanHours int `json:"older_than_hours"`
Candidates []BuildCacheRecord `json:"candidates"`
CandidateCount int `json:"candidate_count"`
WouldFreeBytes int64 `json:"would_free_bytes"`
FreedBytes int64 `json:"freed_bytes"`
RemovedCount int `json:"removed_count"`
}
BuildCachePruneResource is the result of a prune preview or run.
type BuildCacheRecord ¶
type BuildCacheRecord struct {
ID string `json:"id"`
Type string `json:"type"`
Description string `json:"description"`
SizeBytes int64 `json:"size_bytes"`
InUse bool `json:"in_use"`
UsageCount int `json:"usage_count"`
LastUsedAt *time.Time `json:"last_used_at,omitempty"`
}
BuildCacheRecord is one BuildKit cache record.
type BuildCacheRequest ¶ added in v0.2.0
type BuildCacheRequest struct {
AppName string `json:"app_name"`
TargetID string `json:"target_id"`
Mode string `json:"mode,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
}
BuildCacheRequest sets a build cache setting. An empty AppName is the global default.
type BuildCacheResource ¶
type BuildCacheResource struct {
Node string `json:"node"`
Supported bool `json:"supported"`
Reason string `json:"reason,omitempty"`
TotalBytes int64 `json:"total_bytes"`
InUseBytes int64 `json:"in_use_bytes"`
ReclaimableBytes int64 `json:"reclaimable_bytes"`
RecordCount int `json:"record_count"`
Records []BuildCacheRecord `json:"records"`
}
BuildCacheResource is GET /api/v1/builds/cache.
type BuildCacheSetting ¶ added in v0.2.0
type BuildCacheSetting struct {
AppName string `json:"app_name"`
TargetID string `json:"target_id"`
Enabled bool `json:"enabled"`
Mode string `json:"mode"`
KeyPrefix string `json:"key_prefix,omitempty"`
LastBuildAt string `json:"last_build_at,omitempty"`
LastResult string `json:"last_result,omitempty"`
LastWarning string `json:"last_warning,omitempty"`
LastClearedAt string `json:"last_cleared_at,omitempty"`
UpdatedAt string `json:"updated_at"`
}
BuildCacheSetting points an app's (or the global) BuildKit remote cache at a storage destination. It never carries credentials.
type BuildCacheStats ¶ added in v0.2.0
type BuildCacheStats struct {
Prefix string `json:"prefix"`
Objects int `json:"objects"`
Bytes int64 `json:"bytes"`
LastModified time.Time `json:"last_modified"`
Truncated bool `json:"truncated"`
}
BuildCacheStats summarises the objects under an app's cache prefix.
type BuildCounts ¶
type BuildCounts struct {
Queued int `json:"queued"`
Running int `json:"running"`
Finished int `json:"finished"`
Failed int `json:"failed"`
}
BuildCounts summarises the build center rows.
type BuildHint ¶
type BuildHint struct {
Code string `json:"code"`
Title string `json:"title"`
Explanation string `json:"explanation"`
Suggestion string `json:"suggestion,omitempty"`
Fix string `json:"fix,omitempty"`
}
BuildHint is the deterministic diagnosis attached to a failed build.
type BuildHookResource ¶
type BuildHookResource struct {
ID string `json:"id"`
Name string `json:"name"`
Branch string `json:"branch,omitempty"`
CreatedAt time.Time `json:"created_at"`
LastTriggeredAt *time.Time `json:"last_triggered_at,omitempty"`
LastResult string `json:"last_result,omitempty"`
TriggerCount int `json:"trigger_count"`
Path string `json:"path,omitempty"`
Token string `json:"token,omitempty"`
}
BuildHookResource mirrors internal/api's buildHookResource; Path and Token are set only on create and rotate.
type BuildLimitOverrides ¶
type BuildLimitOverrides struct {
MaxConcurrent *int `json:"max_concurrent,omitempty"`
TimeoutSeconds *int `json:"timeout_seconds,omitempty"`
MemoryMB *int `json:"memory_mb,omitempty"`
CPUMillis *int `json:"cpu_millis,omitempty"`
}
BuildLimitOverrides are the limits set explicitly; nil means the default applies.
type BuildLimitValues ¶
type BuildLimitValues struct {
MaxConcurrent int `json:"max_concurrent"`
TimeoutSeconds int `json:"timeout_seconds"`
MemoryMB int `json:"memory_mb"`
CPUMillis int `json:"cpu_millis"`
}
BuildLimitValues are build limits; 0 means unlimited.
type BuildLimits ¶
type BuildLimits struct {
Effective BuildLimitValues `json:"effective"`
Default BuildLimitValues `json:"default"`
Overrides BuildLimitOverrides `json:"overrides"`
}
BuildLimits is the response of /api/v1/build-limits.
type BuildLimitsRequest ¶
type BuildLimitsRequest = BuildLimitOverrides
BuildLimitsRequest sets build limit overrides; nil fields are left alone.
type BuildListResource ¶
type BuildListResource struct {
Rows []BuildResource `json:"rows"`
Counts BuildCounts `json:"counts"`
Nodes []BuildNodeLoad `json:"nodes"`
Limit int `json:"max_concurrent_per_node"`
Platforms struct {
Host string `json:"host"`
MultiPlatform bool `json:"multi_platform"`
} `json:"platforms"`
}
BuildListResource is GET /api/v1/builds.
type BuildNodeLoad ¶
type BuildNodeLoad struct {
Node string `json:"node"`
Running int `json:"running"`
Waiting int `json:"waiting"`
Limit int `json:"limit"`
}
BuildNodeLoad is one node's build slot usage.
type BuildResource ¶
type BuildResource struct {
ID string `json:"id"`
App string `json:"app"`
Status string `json:"status"`
Source string `json:"source"`
Branch string `json:"branch,omitempty"`
CommitSHA string `json:"commit_sha,omitempty"`
Image string `json:"image,omitempty"`
QueuedAt *time.Time `json:"queued_at,omitempty"`
StartedAt time.Time `json:"started_at"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
DurationSeconds *float64 `json:"duration_seconds,omitempty"`
QueuePosition int `json:"queue_position,omitempty"`
CacheHitRatio *float64 `json:"cache_hit_ratio,omitempty"`
ImageBytes int64 `json:"image_bytes,omitempty"`
ImageDeltaBytes *int64 `json:"image_delta_bytes,omitempty"`
Node string `json:"node,omitempty"`
Platform string `json:"platform,omitempty"`
Error string `json:"error,omitempty"`
Hint *BuildHint `json:"hint,omitempty"`
LogsPath string `json:"logs_path"`
CanCancel bool `json:"can_cancel"`
CanRetry bool `json:"can_retry"`
}
BuildResource is one row of the build center.
type BuildRun ¶
type BuildRun struct {
StartedAt time.Time `json:"started_at"`
Tag string `json:"tag"`
Status string `json:"status"`
DurationSeconds float64 `json:"duration_seconds"`
QueueWaitSecs float64 `json:"queue_wait_seconds"`
CachedSteps int `json:"cached_steps"`
TotalSteps int `json:"total_steps"`
Error string `json:"error,omitempty"`
}
BuildRun is one recorded build.
type BuildSpeed ¶
type BuildSpeed struct {
Builds int `json:"builds"`
WarmP50Seconds float64 `json:"warm_p50_seconds"`
ColdP50Seconds float64 `json:"cold_p50_seconds"`
WarmKnown bool `json:"warm_known"`
TimeSavedSeconds float64 `json:"time_saved_seconds"`
Findings []BuildSpeedFinding `json:"findings"`
}
BuildSpeed is the response of GET /api/v1/apps/{name}/build-speed.
type BuildSpeedFinding ¶
type BuildSpeedFinding struct {
Code string `json:"code"`
Severity string `json:"severity"`
FixKind string `json:"fix_kind"`
TargetID string `json:"target_id,omitempty"`
}
BuildSpeedFinding is one suggestion to make an app's builds faster.
type BuildStats ¶
type BuildStats struct {
App string `json:"app"`
Limit int `json:"limit"`
Trend BuildTrend `json:"trend"`
Runs []BuildRun `json:"runs"`
}
BuildStats is the response of GET /api/v1/apps/{name}/build-stats.
type BuildTrend ¶
type BuildTrend struct {
Builds int `json:"builds"`
Succeeded int `json:"succeeded"`
Failed int `json:"failed"`
TimedOut int `json:"timed_out"`
Canceled int `json:"canceled"`
Skewed int `json:"skewed"`
P50Seconds float64 `json:"p50_seconds"`
P95Seconds float64 `json:"p95_seconds"`
MinSeconds float64 `json:"min_seconds"`
MaxSeconds float64 `json:"max_seconds"`
CacheHitRatio float64 `json:"cache_hit_ratio"`
CacheKnown bool `json:"cache_known"`
}
BuildTrend summarises an app's recent builds.
type BuildTriggerRequest ¶
type BuildTriggerRequest struct {
RepoURL string `json:"repo_url"`
Ref string `json:"ref"`
ImageRepo string `json:"image_repo,omitempty"`
Build BuildTriggerRequestBuild `json:"build,omitempty"`
// DetectedFramework mirrors triggerBuildRequest.DetectedFramework: the
// human-readable framework name a prior DetectFramework call reported
// for this exact repo/ref, stored on the resulting deploy_attempts row.
DetectedFramework string `json:"detected_framework,omitempty"`
// UploadHash builds a directory sent with UploadSource instead of a git checkout; RepoURL and Ref stay empty.
UploadHash string `json:"upload_hash,omitempty"`
}
BuildTriggerRequest mirrors internal/api's triggerBuildRequest (internal/api/builds.go). Ref is required server-side (handleTriggerBuild rejects an empty one with 400), so every caller of TriggerBuild must resolve a real ref before sending this, never leave it blank.
type BuildTriggerRequestBuild ¶
type BuildTriggerRequestBuild struct {
Type string `json:"type,omitempty"`
Path string `json:"path,omitempty"`
// BaseDirectory scopes the build context to a subdirectory of the
// repo, for a monorepo. Not meaningful for Type == "image".
BaseDirectory string `json:"base_directory,omitempty"`
Image string `json:"image,omitempty"`
// Args are Dockerfile build-time ARG values. Only meaningful for
// Type == "dockerfile".
Args map[string]string `json:"args,omitempty"`
}
BuildTriggerRequestBuild is BuildTriggerRequest's nested build.* input (internal/api/builds.go's triggerBuildBuildInput), matching the same fields app.yaml's own build: block has. Type left empty defaults server-side to a Dockerfile build. Image is only meaningful for Type == "image": a prebuilt registry reference deployed as-is, no repo/ref/build needed.
type BuildTriggerResponse ¶
type BuildTriggerResponse struct {
ID string `json:"id,omitempty"`
// Status is "queued" when the build waits behind another deploy.
Status string `json:"status,omitempty"`
QueuePosition int `json:"queue_position,omitempty"`
WaitReason string `json:"wait_reason,omitempty"`
}
BuildTriggerResponse mirrors internal/api's triggerBuildResponse: handleTriggerBuild is asynchronous (202 Accepted, the fetch and build run in a background goroutine), so this carries only the new deploy attempt's id, not a finished image tag. Poll its outcome via "apps deploys list"/"apps deploys logs", the same deploy_attempts row a git-push-triggered deploy produces.
type BulkAppResult ¶ added in v0.2.0
type BulkAppResult struct {
Name string `json:"name"`
Status string `json:"status"`
Message string `json:"message,omitempty"`
}
BulkAppResult is one app's outcome in a bulk response.
type BulkAppsRequest ¶ added in v0.2.0
type BulkAppsRequest struct {
Action string `json:"action"`
Names []string `json:"names,omitempty"`
Tag string `json:"tag,omitempty"`
Environment string `json:"environment,omitempty"`
Value string `json:"value,omitempty"`
DryRun bool `json:"dry_run,omitempty"`
ConfirmNames []string `json:"confirm_names,omitempty"`
ConfirmCount int `json:"confirm_count,omitempty"`
}
BulkAppsRequest is POST /api/v1/apps/bulk's body.
type BulkAppsResponse ¶ added in v0.2.0
type BulkAppsResponse struct {
Action string `json:"action"`
DryRun bool `json:"dry_run"`
Results []BulkAppResult `json:"results"`
Counts map[string]int `json:"counts"`
}
BulkAppsResponse is the 207 body of POST /api/v1/apps/bulk.
type CDNCache ¶
type CDNCache struct {
CoveredMinutes int `json:"covered_minutes"`
Hits uint64 `json:"hits"`
Misses uint64 `json:"misses"`
HitRate float64 `json:"hit_rate"`
HitBytes uint64 `json:"hit_bytes"`
OriginBytes uint64 `json:"origin_bytes"`
}
CDNCache is the edge cache part of CDNOverview.
type CDNNode ¶
type CDNNode struct {
ID string `json:"id"`
Name string `json:"name"`
Region string `json:"region,omitempty"`
Requests float64 `json:"requests"`
Apps int `json:"apps"`
}
CDNNode is one node's share of traffic in CDNOverview.
type CDNOverview ¶
type CDNOverview struct {
Window string `json:"window"`
From time.Time `json:"from"`
To time.Time `json:"to"`
HasTraffic bool `json:"has_traffic"`
Requests float64 `json:"requests"`
RatePerSec float64 `json:"rate_per_sec"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
BytesOut float64 `json:"bytes_out"`
Cache CDNCache `json:"cache"`
Nodes []CDNNode `json:"nodes"`
RegionsLabeled bool `json:"regions_labeled"`
}
CDNOverview mirrors GET /api/v1/cdn/overview.
type CITrust ¶
type CITrust struct {
ID string `json:"id"`
Repository string `json:"repository"`
RefPattern string `json:"ref_pattern"`
Environment string `json:"environment"`
CreatedAt time.Time `json:"created_at"`
}
CITrust mirrors internal/api's ciTrustResource.
type CITrustRequest ¶
type CITrustRequest struct {
Repository string `json:"repository"`
RefPattern string `json:"ref_pattern"`
Environment string `json:"environment,omitempty"`
}
CITrustRequest is the body of POST /api/v1/apps/{name}/ci/trusts.
type CIWorkflow ¶
type CIWorkflow struct {
YAML string `json:"yaml"`
APIURL string `json:"api_url"`
HasTrust bool `json:"has_trust"`
NeedsDomain bool `json:"needs_dashboard_url"`
}
CIWorkflow mirrors internal/api's ciWorkflowResource.
type CLIPairRequest ¶
type CLIPairRequest struct {
Code string `json:"code"`
ClientName string `json:"client_name,omitempty"`
}
CLIPairRequest is the body of POST /api/v1/auth/cli-pairing/redeem.
type CLIPairResponse ¶
type CLIPairResponse struct {
Token string `json:"token"`
TokenID string `json:"token_id"`
Username string `json:"username"`
Abilities []string `json:"abilities"`
ExpiresAt time.Time `json:"expires_at"`
}
CLIPairResponse mirrors internal/api's cliPairResponse.
type CPHealth ¶
type CPHealth struct {
CheckedAt time.Time `json:"checked_at"`
Status string `json:"status"`
Runtime struct {
Goroutines int `json:"goroutines"`
HeapBytes uint64 `json:"heap_bytes"`
GCPauseMS float64 `json:"gc_pause_ms"`
CPUs int `json:"cpus"`
} `json:"runtime"`
DB struct {
Queries int64 `json:"queries"`
SlowQueries int64 `json:"slow_queries"`
P50MS float64 `json:"p50_ms"`
P95MS float64 `json:"p95_ms"`
P99MS float64 `json:"p99_ms"`
WaitCount int64 `json:"wait_count"`
WaitMS float64 `json:"wait_ms"`
ReadPoolEnabled bool `json:"read_pool_enabled"`
ReadPoolSize int `json:"read_pool_size"`
ReadInUse int `json:"read_in_use"`
ReadWaitCount int64 `json:"read_wait_count"`
ReadWaitMS float64 `json:"read_wait_ms"`
WALBytes int64 `json:"wal_bytes"`
DBBytes int64 `json:"db_bytes"`
} `json:"db"`
Reconcile struct {
Passes int64 `json:"passes"`
Controllers int `json:"controllers"`
LastPassMS float64 `json:"last_pass_ms"`
P95MS float64 `json:"p95_ms"`
LagSeconds float64 `json:"lag_seconds"`
Guard struct {
PassesDeferred int64 `json:"passes_deferred"`
RecentLimited int `json:"recent_limited"`
OpenBreakers int `json:"open_breakers"`
Breakers []CPHealthBreaker `json:"breakers"`
} `json:"guard"`
} `json:"reconcile"`
Streams struct {
Active int64 `json:"active"`
Cap int64 `json:"cap"`
} `json:"streams"`
Footprint struct {
RSSBytes uint64 `json:"rss_bytes"`
Threads int `json:"threads"`
OpenFDs int `json:"open_fds"`
CPUPercent float64 `json:"cpu_percent"`
TelemetryBytes int64 `json:"telemetry_bytes"`
MemoryLimit struct {
LimitBytes int64 `json:"limit_bytes"`
Source string `json:"source"`
Percent int `json:"percent"`
} `json:"memory_limit"`
Loops []CPHealthLoop `json:"loops"`
} `json:"footprint"`
Idle footprint.Assessment `json:"idle_footprint"`
Findings []CPHealthFinding `json:"findings"`
}
CPHealth is the /api/v1/system/control-plane-health resource.
type CPHealthBreaker ¶
type CPHealthBreaker struct {
Name string `json:"name"`
State string `json:"state"`
Failures int `json:"failures"`
OpenUntil time.Time `json:"open_until"`
LastError string `json:"last_error,omitempty"`
Trips int64 `json:"trips"`
Panics int64 `json:"panics"`
Throttled int64 `json:"throttled"`
Skipped int64 `json:"skipped"`
}
CPHealthBreaker is one controller's circuit breaker.
type CPHealthFinding ¶
type CPHealthFinding struct {
ID string `json:"id"`
Severity string `json:"severity"`
Value float64 `json:"value"`
Threshold float64 `json:"threshold"`
Fix string `json:"fix,omitempty"`
}
CPHealthFinding is one saturated measurement on the control plane.
type CPHealthLoop ¶
type CPHealthLoop struct {
Name string `json:"name"`
IntervalSecs float64 `json:"interval_seconds"`
Runs int64 `json:"runs"`
Errors int64 `json:"errors"`
LastRunAt time.Time `json:"last_run_at"`
LastDuration float64 `json:"last_duration_ms"`
CostPercent float64 `json:"cost_percent"`
Running bool `json:"running"`
LastError string `json:"last_error,omitempty"`
}
CPHealthLoop is one background loop with its last run and cost.
type CPUBounds ¶
type CPUBounds struct {
DefaultCPUMilli int `json:"default_cpu_milli"`
DefaultMemoryMiB int `json:"default_memory_mib"`
MaxCPUMilli int `json:"max_cpu_milli"`
MaxMemoryMiB int `json:"max_memory_mib"`
FreeRAMFloorMiB int64 `json:"free_ram_floor_mib"`
}
CPUBounds mirrors internal/models.CPUBounds.
type CPUFit ¶
type CPUFit struct {
Verdict string `json:"verdict"`
Reason string `json:"reason"`
Suggestion string `json:"suggestion,omitempty"`
SuggestedID string `json:"suggested_id,omitempty"`
CPUMilli int `json:"cpu_milli"`
MemoryMiB int `json:"memory_mib"`
ContextTokens int `json:"context_tokens"`
WeightsBytes int64 `json:"weights_bytes"`
WeightsSource string `json:"weights_source"`
KVBytes int64 `json:"kv_bytes"`
OverheadBytes int64 `json:"overhead_bytes"`
NeedBytes int64 `json:"need_bytes"`
CapBytes int64 `json:"cap_bytes"`
DiskBytes int64 `json:"disk_bytes"`
DiskOK *bool `json:"disk_ok"`
TokensPerSecLo float64 `json:"tokens_per_sec_low"`
TokensPerSecHi float64 `json:"tokens_per_sec_high"`
Estimate bool `json:"estimate"`
Arithmetic string `json:"arithmetic"`
Warnings []string `json:"warnings"`
Note string `json:"note"`
}
CPUFit mirrors internal/models.CPUFit.
type CPUFitReport ¶
type CPUFitReport struct {
CPUFit
NodeID string `json:"node_id"`
HostKnown bool `json:"host_known"`
HostCPUs int `json:"host_cpus"`
HostMemBytes int64 `json:"host_memory_bytes"`
HostMemFree int64 `json:"host_memory_available_bytes"`
DiskFreeBytes *int64 `json:"disk_free_bytes"`
Entry *LocalModel `json:"entry,omitempty"`
LicenseCurated bool `json:"license_curated"`
LicenseNotice string `json:"license_notice,omitempty"`
}
CPUFitReport mirrors internal/models.CPUFitReport.
type CacheBucket ¶ added in v0.2.0
type CacheBucket struct {
Minute int64 `json:"minute"`
Hits uint64 `json:"hits"`
Misses uint64 `json:"misses"`
HitBytes uint64 `json:"hit_bytes"`
MissBytes uint64 `json:"miss_bytes"`
}
CacheBucket is one minute of cache activity.
type CacheLimits ¶
type CacheLimits struct {
MaxBytes int64 `json:"max_bytes"`
UsedBytes int64 `json:"used_bytes"`
MaxObjectBytes int64 `json:"max_object_bytes"`
TagHeader string `json:"tag_header"`
Location string `json:"location"`
}
CacheLimits are the instance caps and where entries live.
type CacheNumbers ¶
type CacheNumbers struct {
Hits uint64 `json:"hits"`
Misses uint64 `json:"misses"`
Stale uint64 `json:"stale"`
Bypasses uint64 `json:"bypasses"`
HitRate float64 `json:"hit_rate"`
HitBytes uint64 `json:"hit_bytes"`
OriginBytes uint64 `json:"origin_bytes"`
Entries int `json:"entries"`
Bytes int64 `json:"bytes"`
}
CacheNumbers are hit, miss, stale and bypass counters plus bytes.
type CachePolicyResource ¶ added in v0.2.0
type CachePolicyResource struct {
Domain string `json:"domain"`
Kind string `json:"kind"`
Configured bool `json:"configured"`
Spec trafficpolicy.Cache `json:"spec"`
UpdatedAt string `json:"updated_at,omitempty"`
}
CachePolicyResource is GET/PUT .../domains/{domain}/cache.
type CachePresetResource ¶
type CachePresetResource struct {
App string `json:"app"`
Domains []struct {
Domain string `json:"domain"`
Applied bool `json:"applied"`
Rules int `json:"rules"`
} `json:"domains"`
}
CachePresetResource reports which domains the preset changed.
type CachePurgeRecord ¶
type CachePurgeRecord struct {
Domain string `json:"domain"`
Scope string `json:"scope"`
Value string `json:"value,omitempty"`
Removed int `json:"removed"`
Actor string `json:"actor"`
At string `json:"at"`
}
CachePurgeRecord is one row of the purge history.
type CachePurgesResource ¶
type CachePurgesResource struct {
App string `json:"app"`
Purges []CachePurgeRecord `json:"purges"`
}
CachePurgesResource is GET /api/v1/apps/{name}/cache/purges.
type CacheStats ¶ added in v0.2.0
type CacheStats struct {
Hits uint64 `json:"hits"`
Misses uint64 `json:"misses"`
Bypasses uint64 `json:"bypasses"`
Stale uint64 `json:"stale"`
// HitBytes were served from the cache, OriginBytes fetched from the app.
HitBytes uint64 `json:"hit_bytes"`
OriginBytes uint64 `json:"origin_bytes"`
Entries int `json:"entries"`
Bytes int64 `json:"bytes"`
Series []CacheBucket `json:"series"`
}
CacheStats is one domain's in-process cache activity.
type CanaryOutcome ¶
type CanaryOutcome struct {
Outcome string `json:"outcome"`
Reason string `json:"reason,omitempty"`
Image string `json:"image,omitempty"`
At time.Time `json:"at"`
}
CanaryOutcome is how an app's last canary ended.
type CanaryProgress ¶
type CanaryProgress struct {
Stage int `json:"stage"`
StageCount int `json:"stage_count"`
ElapsedSecs int `json:"elapsed_secs"`
IntervalSecs int `json:"interval_secs"`
CanaryRequests uint64 `json:"canary_requests"`
CanaryErrRate float64 `json:"canary_error_rate"`
CanaryP95MS float64 `json:"canary_p95_ms"`
StableRequests uint64 `json:"stable_requests"`
StableErrRate float64 `json:"stable_error_rate"`
StableP95MS float64 `json:"stable_p95_ms"`
Next string `json:"next"`
Breaching bool `json:"breaching"`
}
CanaryProgress mirrors internal/canary's Progress.
type CanaryResource ¶ added in v0.2.0
type CanaryResource struct {
Active bool `json:"active"`
Image string `json:"image,omitempty"`
Weight int `json:"weight"`
CreatedAt *time.Time `json:"created_at,omitempty"`
Staged bool `json:"staged,omitempty"`
Stages []int `json:"stages,omitempty"`
Stage int `json:"stage,omitempty"`
IntervalSecs int `json:"interval_secs,omitempty"`
MaxErrorRate float64 `json:"max_error_rate,omitempty"`
MaxP95Ratio float64 `json:"max_p95_ratio,omitempty"`
StatusReason string `json:"status_reason,omitempty"`
Progress *CanaryProgress `json:"progress,omitempty"`
LastOutcome *CanaryOutcome `json:"last_outcome,omitempty"`
}
CanaryResource mirrors internal/api's canaryResource.
type CanaryStartRequest ¶
type CanaryStartRequest struct {
Image string `json:"image"`
Weight int `json:"weight,omitempty"`
Staged bool `json:"staged,omitempty"`
Stages []int `json:"stages,omitempty"`
Interval string `json:"interval,omitempty"`
MaxErrorRate float64 `json:"max_error_rate,omitempty"`
MaxP95Ratio float64 `json:"max_p95_ratio,omitempty"`
}
CanaryStartRequest is the body of POST /api/v1/apps/{name}/canary. Weight starts a manual canary; Stages (or Staged) starts one the control plane walks up and rolls back on its own. Zero values use the server defaults.
type CancelSupersededResource ¶ added in v0.2.0
type CancelSupersededResource struct {
Enabled bool `json:"enabled"`
}
CancelSupersededResource mirrors internal/api's cancelSupersededResource.
type CanonicalRequest ¶ added in v0.2.0
type CanonicalRequest struct {
Preset string `json:"preset"`
StatusCode int `json:"status_code,omitempty"`
Attach *bool `json:"attach,omitempty"`
Replace bool `json:"replace,omitempty"`
}
CanonicalRequest applies a www and apex preset.
type CanonicalState ¶ added in v0.2.0
type CanonicalState struct {
Counterpart string `json:"counterpart,omitempty"`
CounterpartAttached bool `json:"counterpart_attached"`
AttachedElsewhere string `json:"counterpart_app,omitempty"`
Preset string `json:"preset"`
DNSHint string `json:"dns_hint,omitempty"`
}
CanonicalState is the www and apex setup for a domain.
type CapacityForecastMetric ¶ added in v0.2.0
type CapacityForecastMetric struct {
CurrentUsedBytes float64 `json:"current_used_bytes"`
TotalBytes float64 `json:"total_bytes"`
SlopeBytesPerDay float64 `json:"slope_bytes_per_day"`
DaysUntilFull float64 `json:"days_until_full"`
ProjectedFullAt time.Time `json:"projected_full_at"`
SampleCount int `json:"sample_count"`
CoverageWindow string `json:"coverage_window"`
}
CapacityForecastMetric mirrors internal/api's capacityForecastMetric: one resource's (disk or memory) rough days-until-full projection from internal/forecast's ordinary-least-squares trend fit. Absent (nil) from NodeCapacityForecastResource whenever the fitted trend is flat or improving, or there isn't enough history yet, never a zero-value struct with DaysUntilFull: 0.
type CascadeDeleteFailure ¶ added in v0.2.0
type CascadeDeleteFailure struct {
Kind string `json:"kind"`
Name string `json:"name"`
Error string `json:"error"`
}
CascadeDeleteFailure is one member a cascading delete could not remove.
type CascadeDeleteResult ¶ added in v0.2.0
type CascadeDeleteResult struct {
Status string `json:"status"`
DeletedApps []string `json:"deleted_apps"`
DeletedDatabases []string `json:"deleted_databases"`
TeardownPending []string `json:"teardown_pending,omitempty"`
Failed []CascadeDeleteFailure `json:"failed,omitempty"`
}
CascadeDeleteResult mirrors internal/api's cascadeResponse. The zero value is what a 204 (nothing inside) decodes to.
type CertExpiryPayload ¶
type CertExpiryPayload struct {
Domain string `json:"domain"`
Issuer string `json:"issuer,omitempty"`
NotAfter time.Time `json:"not_after"`
DaysLeft int `json:"days_left"`
FailureKind string `json:"failure_kind"`
}
CertExpiryPayload mirrors internal/api's certPayloadResource.
type CertPreflight ¶
type CertPreflight struct {
Domain string `json:"domain"`
Staging bool `json:"staging"`
Email string `json:"email"`
Ready bool `json:"ready"`
Items []CertPreflightItem `json:"items"`
NextSafeAt *time.Time `json:"next_safe_at,omitempty"`
}
CertPreflight mirrors GET /api/v1/domains/{domain}/cert/preflight.
type CertPreflightItem ¶
type CertPreflightItem struct {
Code string `json:"code"`
State string `json:"state"`
Detail string `json:"detail"`
Fix string `json:"fix,omitempty"`
}
CertPreflightItem is one preflight finding for a public certificate request.
type CertRenewal ¶
type CertRenewal struct {
At time.Time `json:"at"`
Result string `json:"result"`
Error string `json:"error,omitempty"`
}
CertRenewal is the last issue or renewal attempt.
type CertificateResource ¶ added in v0.2.0
type CertificateResource struct {
Domain string `json:"domain"`
SANs []string `json:"sans,omitempty"`
Issuer string `json:"issuer,omitempty"`
NotBefore time.Time `json:"not_before"`
NotAfter time.Time `json:"not_after"`
Status string `json:"status"`
// Renewal is "ok" or "stalled".
Renewal string `json:"renewal"`
// Apps is every app or static site owning Domain; see
// certificateStatus.Apps's own doc comment.
Apps []string `json:"apps,omitempty"`
// Source is "acme", "custom" or "proxy"; see certificateStatus.Source.
Source string `json:"source"`
// TLSOwner is who terminates TLS: acme, internal, proxy or custom.
TLSOwner string `json:"tls_owner,omitempty"`
// ACMEFailure is the CA's last error for this domain, when it has one.
ACMEFailure *ACMEFailure `json:"acme_failure,omitempty"`
// ExpiryClass is "incident" when this certificate's expiry needs an
// operator, empty otherwise.
ExpiryClass string `json:"expiry_class,omitempty"`
// Kind is who signed it: internal, staging, letsencrypt, custom, proxy or other.
Kind string `json:"kind,omitempty"`
DaysLeft int `json:"days_left"`
// LastRenewal is the last issue or renewal attempt.
LastRenewal *CertRenewal `json:"last_renewal,omitempty"`
NextRetryAt *time.Time `json:"next_retry_at,omitempty"`
}
CertificateResource mirrors internal/api's certificateStatus (internal/api/certificates.go): one entry of GET /api/v1/certificates. Status is "healthy", "expiring_soon", or "expired".
type ChangelogEntryResource ¶ added in v0.2.0
type ChangelogEntryResource struct {
Version string `json:"version"`
Date string `json:"date"`
Bullets []string `json:"bullets"`
}
ChangelogEntryResource mirrors internal/api's changelogEntryResource: one released version's notes.
type ChangelogResource ¶ added in v0.2.0
type ChangelogResource struct {
CurrentVersion string `json:"current_version"`
Entries []ChangelogEntryResource `json:"entries"`
}
ChangelogResource mirrors internal/api's changelogResource (GET /api/v1/changelog): the running version plus the most recent entries parsed from the repo's own CHANGELOG.md.
type ChecklistAction ¶
type ChecklistAction struct {
Kind string `json:"kind"`
Label string `json:"label"`
FixID string `json:"fix_id,omitempty"`
API string `json:"api,omitempty"`
Href string `json:"href,omitempty"`
Value string `json:"value,omitempty"`
Blocked string `json:"blocked,omitempty"`
}
ChecklistAction mirrors internal/golive's Action.
type ChecklistEvent ¶
type ChecklistEvent struct {
ID string `json:"id"`
At time.Time `json:"at"`
Kind string `json:"kind"`
Title string `json:"title"`
Detail string `json:"detail,omitempty"`
Failed bool `json:"failed,omitempty"`
Future bool `json:"future,omitempty"`
}
ChecklistEvent is one timeline entry.
type ChecklistEvidence ¶
ChecklistEvidence is one fact behind a step.
type ChecklistFirewallFix ¶
type ChecklistFirewallFix struct {
FixID string `json:"fix_id"`
Kind string `json:"kind"`
Commands []string `json:"commands"`
Undo []string `json:"undo"`
Persistent bool `json:"persistent"`
Note string `json:"note,omitempty"`
Refusal string `json:"refusal,omitempty"`
}
ChecklistFirewallFix mirrors golive.FixPreview.
type ChecklistProvider ¶
type ChecklistProvider struct {
Name string `json:"name"`
DocsURL string `json:"docs_url"`
Steps []string `json:"steps"`
Note string `json:"note,omitempty"`
}
ChecklistProvider is the cloud provider's firewall guidance.
type ChecklistStep ¶
type ChecklistStep struct {
ID string `json:"id"`
Title string `json:"title"`
Status string `json:"status"`
Summary string `json:"summary"`
Evidence []ChecklistEvidence `json:"evidence"`
Primary *ChecklistAction `json:"primary,omitempty"`
NextCheckAt *time.Time `json:"next_check_at,omitempty"`
FirewallFix *ChecklistFirewallFix `json:"firewall_fix,omitempty"`
Provider *ChecklistProvider `json:"provider,omitempty"`
Scope string `json:"scope,omitempty"`
}
ChecklistStep mirrors golive.Step.
type ClaimOrphanedContainerRequest ¶ added in v0.2.0
type ClaimOrphanedContainerRequest struct {
Name string `json:"name,omitempty"`
}
ClaimOrphanedContainerRequest is POST /api/v1/system/containers/{name}/claim's optional request body. A blank Name lets the server derive one from the container's own name.
type CleanupImpact ¶
CleanupImpact is the body of POST /api/v1/cleanup/{id}/preview.
type CleanupListResource ¶
type CleanupListResource struct {
Targets []CleanupTargetResource `json:"targets"`
Scheduler CleanupScheduler `json:"scheduler"`
}
CleanupListResource is the body of GET /api/v1/cleanup.
type CleanupOrphanedVolumesRequest ¶ added in v0.2.0
type CleanupOrphanedVolumesRequest struct {
Names []string `json:"names"`
}
CleanupOrphanedVolumesRequest mirrors internal/api's cleanupOrphanedVolumesRequest: the exact, operator-confirmed set of volume names to remove.
type CleanupOrphanedVolumesResult ¶ added in v0.2.0
type CleanupOrphanedVolumesResult struct {
Removed []string `json:"removed"`
ReclaimedBytes uint64 `json:"reclaimed_bytes"`
Skipped []string `json:"skipped,omitempty"`
Errors []string `json:"errors,omitempty"`
}
CleanupOrphanedVolumesResult mirrors internal/api's cleanupOrphanedVolumesResponse.
type CleanupRunResource ¶
type CleanupRunResource struct {
ID int64 `json:"id"`
Target string `json:"target"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
Days int `json:"days"`
DryRun bool `json:"dry_run"`
Rows int64 `json:"rows"`
Bytes int64 `json:"bytes"`
Trigger string `json:"trigger"`
Actor string `json:"actor,omitempty"`
Error string `json:"error,omitempty"`
}
CleanupRunResource is one entry in the cleanup run history.
type CleanupRunResult ¶
type CleanupRunResult struct {
Target string `json:"target"`
Days int `json:"days"`
DryRun bool `json:"dry_run"`
Rows int64 `json:"rows"`
Bytes int64 `json:"bytes"`
MoreRemaining bool `json:"more_remaining,omitempty"`
Error string `json:"error,omitempty"`
}
CleanupRunResult is the body of POST /api/v1/cleanup/{id}/run.
type CleanupRunsPage ¶
type CleanupRunsPage struct {
Runs []CleanupRunResource `json:"runs"`
NextCursor string `json:"next_cursor,omitempty"`
}
CleanupRunsPage is the body of GET /api/v1/cleanup/runs.
type CleanupRunsQuery ¶
CleanupRunsQuery filters ListCleanupRuns. Empty fields are not sent.
type CleanupScheduler ¶
CleanupScheduler reports whether the cleanup scheduler runs and how often.
type CleanupTargetResource ¶
type CleanupTargetResource struct {
ID string `json:"id"`
Category string `json:"category"`
Title string `json:"title"`
Description string `json:"description"`
PolicyKey string `json:"policy_key"`
Days int `json:"days"`
Source string `json:"source,omitempty"`
Mode string `json:"mode"`
Origin string `json:"origin"`
Destructive bool `json:"destructive"`
Floor int `json:"floor"`
Usage CleanupUsage `json:"usage"`
LastRun *CleanupRunResource `json:"last_run,omitempty"`
NextRun string `json:"next_run,omitempty"`
}
CleanupTargetResource is one cleanup target as listed by GET /api/v1/cleanup.
type CleanupUsage ¶
type CleanupUsage struct {
Rows int64 `json:"rows"`
Bytes int64 `json:"bytes"`
Oldest string `json:"oldest,omitempty"`
}
CleanupUsage is the measured reclaimable data for one cleanup target.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is a minimal HTTP client for the control plane's versioned API (internal/api, mounted at /api/v1). It carries no session/cookie state: every request is a single bearer-token call, matching how this project's own token scheme (internal/api/abilities.go) is meant to be used by a non-interactive caller.
func NewClient ¶
NewClient builds a Client. baseURL should not have a trailing slash (trimmed defensively if it does). The timeout is long, not the usual few seconds a typical REST call would use: POST .../builds is synchronous and blocking (internal/api/builds.go's own doc comment), and a real Dockerfile build can legitimately take minutes.
func (*Client) AbortCanary ¶ added in v0.2.0
AbortCanary calls DELETE /api/v1/apps/{name}/canary.
func (*Client) AcceptTeamInvite ¶ added in v0.2.0
func (c *Client) AcceptTeamInvite(ctx context.Context, req AcceptTeamInviteRequest) error
AcceptTeamInvite calls POST /api/v1/team-invites/accept.
func (*Client) AccountExportStatus ¶
AccountExportStatus calls GET /api/v1/auth/export/{id}.
func (*Client) AckControlPlaneEscrow ¶ added in v0.2.0
func (c *Client) AckControlPlaneEscrow(ctx context.Context) (ControlPlaneDR, error)
AckControlPlaneEscrow calls POST /api/v1/system/control-plane-dr/escrow/ack.
func (*Client) AckUpgrade ¶ added in v0.2.0
AckUpgrade calls POST /api/v1/updates/history/{id}/ack.
func (*Client) AddMarketplaceSource ¶
func (c *Client) AddMarketplaceSource(ctx context.Context, name, url, rootKey string) (MarketplaceSource, error)
AddMarketplaceSource calls POST /api/v1/plugin-marketplace/sources.
func (*Client) AddPluginKey ¶
AddPluginKey calls POST /api/v1/plugin-keys.
func (*Client) AdoptExternalDatabase ¶ added in v0.2.0
func (c *Client) AdoptExternalDatabase(ctx context.Context, req ExternalDatabaseRequest) (ExternalDatabase, error)
AdoptExternalDatabase calls POST /api/v1/external-databases/adopt.
func (*Client) AllowFirewallEdgeIP ¶
func (c *Client) AllowFirewallEdgeIP(ctx context.Context, e FirewallEdgeIPEntry) (FirewallEdgeRule, error)
AllowFirewallEdgeIP calls POST .../firewall/edge/allow.
func (*Client) AllowSecretFingerprint ¶
func (c *Client) AllowSecretFingerprint(ctx context.Context, name, fingerprint, reason string) (SecretScanAllowEntry, error)
AllowSecretFingerprint calls POST /api/v1/apps/{name}/secret-scan/allow.
func (*Client) AnalyzeGitSource ¶
func (c *Client) AnalyzeGitSource(ctx context.Context, req ImportAnalyzeRequest) (ImportAnalysis, error)
AnalyzeGitSource calls POST /api/v1/git-sources/analyze. It creates nothing.
func (*Client) AnalyzeIAM ¶ added in v0.2.0
func (c *Client) AnalyzeIAM(ctx context.Context) (IAMAnalysis, error)
AnalyzeIAM calls GET /api/v1/iam/analyze.
func (*Client) AnalyzeImport ¶ added in v0.2.0
func (c *Client) AnalyzeImport(ctx context.Context, req ImportAnalyzeRequest) (ImportAnalysis, error)
AnalyzeImport calls POST /api/v1/imports/analyze. It creates nothing.
func (*Client) AppImportCutoverPlan ¶ added in v0.2.0
func (c *Client) AppImportCutoverPlan(ctx context.Context, session, item string) (ImportCutoverPlan, error)
AppImportCutoverPlan calls GET .../items/{item}/cutover/plan.
func (*Client) AppImportCutoverRun ¶ added in v0.2.0
func (c *Client) AppImportCutoverRun(ctx context.Context, session, item, run string) (ImportCutoverRun, error)
AppImportCutoverRun calls GET .../items/{item}/cutover/runs/{run}.
func (*Client) AppImportCutoverRuns ¶ added in v0.2.0
func (c *Client) AppImportCutoverRuns(ctx context.Context, session, item string) ([]ImportCutoverRun, error)
AppImportCutoverRuns calls GET .../items/{item}/cutover/runs, newest first.
func (*Client) AppImportExitReport ¶
AppImportExitReport calls GET /api/v1/migration/apps/sessions/{id}/exit-report.
func (*Client) AppImportImages ¶ added in v0.2.0
AppImportImages calls GET .../sessions/{id}/images.
func (*Client) AppImportImagesStatus ¶ added in v0.2.0
AppImportImagesStatus calls GET .../sessions/{id}/images/status.
func (*Client) AppImportReceipt ¶ added in v0.2.0
AppImportReceipt calls GET .../sessions/{id}/receipt and returns the JSON as is.
func (*Client) AppImportVolumeCopyStatus ¶
func (c *Client) AppImportVolumeCopyStatus(ctx context.Context, id string) (AppImportVolumeCopy, error)
AppImportVolumeCopyStatus calls GET .../sessions/{id}/volumes/copy.
func (*Client) ApplyAdvisorFinding ¶ added in v0.2.0
func (c *Client) ApplyAdvisorFinding(ctx context.Context, id string, confirm bool) (AdvisorApplyResult, error)
ApplyAdvisorFinding previews (confirm false) or applies a finding's action.
func (*Client) ApplyAlertTemplate ¶
func (c *Client) ApplyAlertTemplate(ctx context.Context, name, profile, channelID string) (ApplyAlertTemplateResult, error)
ApplyAlertTemplate calls POST /api/v1/apps/{name}/alerts/apply-template.
func (*Client) ApplyAppCachePreset ¶
func (c *Client) ApplyAppCachePreset(ctx context.Context, name, domain string) (CachePresetResource, error)
ApplyAppCachePreset calls POST /api/v1/apps/{name}/cache/preset; domain may be empty for every domain of the app.
func (*Client) ApplyDNSTemplate ¶ added in v0.2.0
func (c *Client) ApplyDNSTemplate(ctx context.Context, provider, zone, id string, params map[string]string, apply bool) (DNSImportResult, error)
ApplyDNSTemplate calls POST /api/v1/dns/zones/{zone}/templates/{id}.
func (*Client) ApplyDatabaseRules ¶ added in v0.2.0
func (c *Client) ApplyDatabaseRules(ctx context.Context, name string, req DatabaseRulesRequest) (DatabaseRulesPlan, error)
ApplyDatabaseRules calls PUT /api/v1/databases/{name}/network/rules.
func (*Client) ApplyDetectedProxy ¶
func (c *Client) ApplyDetectedProxy(ctx context.Context) (EdgeSettings, error)
ApplyDetectedProxy calls POST .../edge/trusted-proxies/apply-detected.
func (*Client) ApplyDiagnosisFix ¶ added in v0.2.0
func (c *Client) ApplyDiagnosisFix(ctx context.Context, name string, fix DiagnosisFix, inputs map[string]string, redeploy bool) ([]string, error)
ApplyDiagnosisFix applies a patch or input fix to the app through the ordinary GET then PUT path, so the caller's own permissions and the audit log apply. inputs supplies values for changes marked NeedsInput, keyed by field. It returns the fields changed. The app is round-tripped as raw JSON so fields this client does not model are never dropped.
func (*Client) ApplyDoctorAction ¶
func (c *Client) ApplyDoctorAction(ctx context.Context, a DoctorAction) error
ApplyDoctorAction runs a request action a diagnosis offered, such as creating the missing DNS record. Only "METHOD /api/v1/..." actions apply.
func (*Client) ApplyExposureRestriction ¶ added in v0.2.0
func (c *Client) ApplyExposureRestriction(ctx context.Context, req ExposureRestrictRequest) (ExposurePlan, error)
ApplyExposureRestriction calls PUT .../exposure/restrictions/{protocol}/{port}.
func (*Client) ApplyFix ¶
func (c *Client) ApplyFix(ctx context.Context, id string, params map[string]string) (FixResult, error)
ApplyFix calls POST /api/v1/fixes/{id}/apply.
func (*Client) ApplyIaC ¶ added in v0.2.0
func (c *Client) ApplyIaC(ctx context.Context, req IaCRequest) (iac.ApplyResult, error)
ApplyIaC calls POST /api/v1/apply.
func (*Client) ApplyImportRepo ¶
func (c *Client) ApplyImportRepo(ctx context.Context, req ImportRepoApplyRequest) (ImportRepoApplyResponse, error)
ApplyImportRepo calls POST /api/v1/imports/repo/apply.
func (*Client) ApplyMigrationSession ¶ added in v0.2.0
func (c *Client) ApplyMigrationSession(ctx context.Context, id, password string) (HubSession, error)
ApplyMigrationSession starts the bulk copy. A non-empty password replaces the one held in memory.
func (*Client) ApplyPendingChanges ¶ added in v0.2.0
ApplyPendingChanges calls POST /api/v1/apps/{name}/apply-pending.
func (*Client) ApplyPipelineRunFix ¶
func (c *Client) ApplyPipelineRunFix(ctx context.Context, app, runID, kind, job string, rerun bool) (PipelineFixResult, error)
ApplyPipelineRunFix calls POST .../pipeline-runs/{id}/fixes/apply.
func (*Client) ApplyPlatformImport ¶ added in v0.2.0
func (c *Client) ApplyPlatformImport(ctx context.Context, req PlatformImportRequest) (PlatformImportReport, error)
ApplyPlatformImport calls POST /api/v1/imports/platform/apply.
func (*Client) ApplyPolicyTemplate ¶ added in v0.2.0
func (c *Client) ApplyPolicyTemplate(ctx context.Context, id string, req ApplyPolicyTemplateRequest) (ApplyPolicyTemplateResponse, error)
ApplyPolicyTemplate calls POST /api/v1/iam/policy-templates/{id}/apply.
func (*Client) ApplyPrivateNetworks ¶
func (c *Client) ApplyPrivateNetworks(ctx context.Context) (PrivateNetworkChange, error)
ApplyPrivateNetworks calls POST /api/v1/private-networks/apply.
func (*Client) ApplyProxyIntegration ¶ added in v0.2.0
func (c *Client) ApplyProxyIntegration(ctx context.Context) (ProxyIntegration, error)
ApplyProxyIntegration rewrites the managed route files now.
func (*Client) ApplyReachFix ¶
ApplyReachFix makes the same call the dashboard's Fix button makes for an auto fix.
func (*Client) ApplyRecommendedShield ¶
func (c *Client) ApplyRecommendedShield(ctx context.Context, app string, dryRun, blockBots bool) (ShieldRecommendedResource, error)
ApplyRecommendedShield calls POST /api/v1/apps/{name}/shield/recommended.
func (*Client) ApplyRuntimeSettings ¶
ApplyRuntimeSettings calls POST /api/v1/settings/runtime/apply.
func (*Client) ApproveDeployApproval ¶ added in v0.2.0
func (c *Client) ApproveDeployApproval(ctx context.Context, id string) (DeployApprovalDecisionResult, error)
ApproveDeployApproval calls POST /api/v1/deploy-approvals/{id}/approve: applies the gated deploy/promote through the normal reconcile path. Fails with 403 if the caller is the same actor who requested it, or 409 if it's no longer pending (already decided, or expired).
func (*Client) ApprovePlugin ¶
func (c *Client) ApprovePlugin(ctx context.Context, name string, abilities []string) (Plugin, error)
ApprovePlugin calls POST /api/v1/plugins/{name}/approve.
func (*Client) ApprovePreviewEnvironment ¶ added in v0.2.0
func (c *Client) ApprovePreviewEnvironment(ctx context.Context, appName string, prNumber int) (ApprovePreviewResult, error)
ApprovePreviewEnvironment calls POST /api/v1/apps/{name}/previews/{number}/approve with the confirmation the server requires.
func (*Client) ApprovePreviewEnvironmentShared ¶ added in v0.2.0
func (c *Client) ApprovePreviewEnvironmentShared(ctx context.Context, appName string, prNumber int, shareSecrets bool) (ApprovePreviewResult, error)
ApprovePreviewEnvironmentShared is ApprovePreviewEnvironment that can also give this one deploy the app's environment variables and secrets.
func (*Client) ArchiveInbox ¶
ArchiveInbox calls POST /api/v1/inbox/archive; restore undoes an archive.
func (*Client) AttachAppIntegration ¶ added in v0.2.0
func (c *Client) AttachAppIntegration(ctx context.Context, name, integrationKey string, fields map[string]string) (AppIntegrationResource, error)
AttachAppIntegration calls POST /api/v1/apps/{name}/integrations: attaches integrationKey with the given field values, storing them through the same envelope encryption every other app secret uses.
func (*Client) AttachAppTag ¶ added in v0.2.0
AttachAppTag calls POST /api/v1/apps/{name}/tags: attaches tagName, creating it first if this is the first time it's been used.
func (*Client) AttachPolicy ¶
AttachPolicy calls POST /api/v1/iam/policies/{id}/attachments.
func (*Client) BackfillBaseDomain ¶ added in v0.2.0
BackfillBaseDomain calls POST /api/v1/settings/ingress/apps-base-domain/backfill.
func (*Client) BackupCoverage ¶ added in v0.2.0
func (c *Client) BackupCoverage(ctx context.Context) (BackupCoverageResponse, error)
BackupCoverage calls GET /api/v1/backups/coverage.
func (*Client) BackupHealth ¶ added in v0.2.0
func (c *Client) BackupHealth(ctx context.Context) (BackupHealthResponse, error)
BackupHealth calls GET /api/v1/backups/health.
func (*Client) BenchmarkModel ¶
BenchmarkModel calls POST /api/v1/models/{name}/benchmark.
func (*Client) BindAppBucket ¶
func (c *Client) BindAppBucket(ctx context.Context, app, id, envPrefix string) (StorageBucket, error)
BindAppBucket calls PUT /api/v1/apps/{name}/buckets/{id}.
func (*Client) BlockFirewallEdgeIP ¶
func (c *Client) BlockFirewallEdgeIP(ctx context.Context, e FirewallEdgeIPEntry, force bool) (FirewallEdgeRule, error)
BlockFirewallEdgeIP calls POST .../firewall/edge/block.
func (*Client) BrandShortName ¶ added in v0.2.0
BrandShortName reads the control plane's brand short name from the public GET /api/v1/brand, used to find the branded pipeline directory in a repo.
func (*Client) BrowseArchive ¶
func (c *Client) BrowseArchive(ctx context.Context, id, table string, offset, limit int) (ArchiveRows, error)
BrowseArchive calls GET /api/v1/archives/{id}/rows.
func (*Client) BucketUsage ¶
BucketUsage calls GET /api/v1/storage/buckets/{id}/usage.
func (*Client) BuildControlPlaneEscrow ¶ added in v0.2.0
func (c *Client) BuildControlPlaneEscrow(ctx context.Context, recipients []string, upload bool) (ControlPlaneEscrowBundle, error)
BuildControlPlaneEscrow calls POST /api/v1/system/control-plane-dr/escrow. recipients, when non-empty, replace the configured ones for this bundle.
func (*Client) BulkApps ¶ added in v0.2.0
func (c *Client) BulkApps(ctx context.Context, req BulkAppsRequest) (BulkAppsResponse, error)
BulkApps calls POST /api/v1/apps/bulk.
func (*Client) BulkTagResources ¶
func (c *Client) BulkTagResources(ctx context.Context, req ConsoleBulkTagRequest) (ConsoleBulkTagResponse, error)
BulkTagResources calls POST /api/v1/resources/tags/bulk.
func (*Client) CancelAppImportImages ¶ added in v0.2.0
CancelAppImportImages calls POST .../sessions/{id}/images/cancel.
func (*Client) CancelBuild ¶
CancelBuild calls POST /api/v1/apps/{app}/builds/{id}/cancel.
func (*Client) CancelDeploy ¶ added in v0.2.0
func (c *Client) CancelDeploy(ctx context.Context, appName, deployID string) (DeployAttemptResource, error)
CancelDeploy calls POST /api/v1/apps/{name}/deploys/{deployId}/cancel and returns the attempt as it is after the cancel.
func (*Client) CancelIntegrityRestore ¶
CancelIntegrityRestore calls DELETE /api/v1/system/integrity/restore.
func (*Client) CancelPipelineRun ¶ added in v0.2.0
CancelPipelineRun calls POST .../pipeline-runs/{id}/cancel.
func (*Client) CancelUpgradeSchedule ¶ added in v0.2.0
func (c *Client) CancelUpgradeSchedule(ctx context.Context) (UpgradeSchedule, error)
CancelUpgradeSchedule calls DELETE /api/v1/updates/schedule.
func (*Client) CapturePreview ¶ added in v0.2.0
CapturePreview calls POST /api/v1/apps/{name}/preview/capture.
func (*Client) CertPreflight ¶
func (c *Client) CertPreflight(ctx context.Context, domain, email string, staging bool) (CertPreflight, error)
CertPreflight runs the preflight for a public certificate.
func (*Client) CheckAppExposure ¶
CheckAppExposure calls POST /api/v1/apps/{name}/exposure/check.
func (*Client) CheckCPUModelFit ¶
func (c *Client) CheckCPUModelFit(ctx context.Context, req ModelFitRequest) (CPUFitReport, error)
CheckCPUModelFit calls POST /api/v1/models/fit in CPU mode.
func (*Client) CheckDeployPolicy ¶
func (c *Client) CheckDeployPolicy(ctx context.Context, req PolicyCheckRequest) (PolicyCheckResult, error)
CheckDeployPolicy calls POST /api/v1/deploy-policies/check.
func (*Client) CheckDomain ¶ added in v0.2.0
CheckDomain calls GET /api/v1/apps/{name}/domains/{domain}/check: a real DNS lookup reporting whether domain currently resolves to this control plane's own advertised address.
func (*Client) CheckEmailDomain ¶
CheckEmailDomain calls GET /api/v1/settings/email/domain-check; an empty domain uses the From address's domain.
func (*Client) CheckImageAutoUpdate ¶ added in v0.2.0
func (c *Client) CheckImageAutoUpdate(ctx context.Context, appName string) (ImageAutoUpdateResource, error)
CheckImageAutoUpdate calls POST /api/v1/apps/{name}/auto-update/check: one registry check now, redeploying if the tag moved.
func (*Client) CheckIntegrity ¶
CheckIntegrity calls POST /api/v1/system/integrity/check.
func (*Client) CheckLoadBalancer ¶ added in v0.2.0
CheckLoadBalancer calls POST /api/v1/apps/{name}/loadbalancer/check.
func (*Client) CheckModelFit ¶ added in v0.2.0
func (c *Client) CheckModelFit(ctx context.Context, req ModelFitRequest) (ModelFitReport, error)
CheckModelFit calls POST /api/v1/models/fit.
func (*Client) ClaimOrphanedContainer ¶ added in v0.2.0
func (c *Client) ClaimOrphanedContainer(ctx context.Context, name string, req ClaimOrphanedContainerRequest) (AppResource, error)
ClaimOrphanedContainer calls POST /api/v1/system/containers/{name}/claim: creates a real app (build.type: image) from the container's own image, same path POST /api/v1/apps itself uses. Returns the created app.
func (*Client) CleanupNode ¶
func (c *Client) CleanupNode(ctx context.Context, id string, dryRun bool) (NodeCleanupResult, error)
CleanupNode calls POST /api/v1/nodes/{id}/cleanup: a preview with dryRun, otherwise a confirmed removal.
func (*Client) CleanupOrphanedVolumes ¶ added in v0.2.0
func (c *Client) CleanupOrphanedVolumes(ctx context.Context, names []string) (CleanupOrphanedVolumesResult, error)
CleanupOrphanedVolumes calls POST /api/v1/system/volumes/orphaned/cleanup: removes exactly the named volumes, after the control plane re-confirms each one is still genuinely orphaned.
func (*Client) CleanupTokens ¶
CleanupTokens calls POST /api/v1/auth/tokens/cleanup (root ability). It removes revoked tokens older than olderThanDays; 0 removes every revoked token and is confirmed here.
func (*Client) ClearAppAutoscale ¶
ClearAppAutoscale calls DELETE /api/v1/apps/{name}/autoscale.
func (*Client) ClearAppBudget ¶
ClearAppBudget calls DELETE /api/v1/apps/{name}/budget.
func (*Client) ClearAppContext ¶
ClearAppContext calls DELETE /api/v1/apps/{name}/contexts?context=.
func (*Client) ClearAppDatabaseAttachment ¶
ClearAppDatabaseAttachment calls DELETE /api/v1/apps/{name}/database.
func (*Client) ClearAppEgressPolicy ¶ added in v0.2.0
ClearAppEgressPolicy calls DELETE /api/v1/apps/{name}/egress-policy, opting name back out to unrestricted egress.
func (*Client) ClearAppHealth ¶ added in v0.2.0
ClearAppHealth calls DELETE /api/v1/apps/{name}/health.
func (*Client) ClearAppMaintenance ¶
func (c *Client) ClearAppMaintenance(ctx context.Context, name string) (AppMaintenanceResource, error)
ClearAppMaintenance calls DELETE /api/v1/apps/{name}/maintenance: ends maintenance on every domain.
func (*Client) ClearAppPreviewEnvOverride ¶ added in v0.2.0
ClearAppPreviewEnvOverride calls DELETE /api/v1/apps/{name}/preview-env/{key}.
func (*Client) ClearAppStorage ¶ added in v0.2.0
ClearAppStorage calls DELETE /api/v1/apps/{name}/storage: detaches name's object-storage credential source.
func (*Client) ClearAppVaultEnv ¶ added in v0.2.0
ClearAppVaultEnv calls DELETE /api/v1/apps/{name}/vault-env/{key}.
func (*Client) ClearBackupSchedule ¶
ClearBackupSchedule calls DELETE /api/v1/databases/{name}/backup-schedule: returns name to its default "no scheduled backup configured" state. Past backup_history rows are untouched, only the going-forward configuration.
func (*Client) ClearBuildCache ¶ added in v0.2.0
ClearBuildCache calls POST /api/v1/build-cache/clear.
func (*Client) ClearChannelQuietHours ¶
ClearChannelQuietHours calls DELETE /api/v1/notification-channels/{id}/quiet-hours.
func (*Client) ClearDatabasePublicAccess ¶ added in v0.2.0
ClearDatabasePublicAccess calls DELETE /api/v1/databases/{name}/public-access: returns name to internal-network-only, the reverse of SetDatabasePublicAccess.
func (*Client) ClearDomainAuthGate ¶ added in v0.2.0
func (c *Client) ClearDomainAuthGate(ctx context.Context, name, domain string) (DomainAuthGateResource, error)
ClearDomainAuthGate calls DELETE /api/v1/apps/{name}/domains/{domain}/auth-gate.
func (*Client) ClearDomainBasicAuth ¶
func (c *Client) ClearDomainBasicAuth(ctx context.Context, name, domain string) (DomainBasicAuthResource, error)
ClearDomainBasicAuth calls DELETE /api/v1/apps/{name}/domains/{domain}/auth: removes basic auth protection from domain.
func (*Client) ClearDomainCache ¶ added in v0.2.0
func (c *Client) ClearDomainCache(ctx context.Context, name, domain string) (CachePolicyResource, error)
ClearDomainCache calls DELETE .../domains/{domain}/cache.
func (*Client) ClearDomainErrorPage ¶ added in v0.2.0
func (c *Client) ClearDomainErrorPage(ctx context.Context, name, domain string, statusCode int) (DomainErrorPagesResource, error)
ClearDomainErrorPage calls DELETE /api/v1/apps/{name}/domains/{domain}/error-pages?status_code=<code>: removes domain's mapping for one status code.
func (*Client) ClearDomainErrorPages ¶ added in v0.2.0
func (c *Client) ClearDomainErrorPages(ctx context.Context, name, domain string) (DomainErrorPagesResource, error)
ClearDomainErrorPages calls DELETE /api/v1/apps/{name}/domains/{domain}/error-pages: removes every custom error page configured for domain.
func (*Client) ClearDomainForwarders ¶ added in v0.2.0
func (c *Client) ClearDomainForwarders(ctx context.Context, name, domain string) (ForwardersPolicyResource, error)
ClearDomainForwarders calls DELETE .../domains/{domain}/forwarders.
func (*Client) ClearDomainGeo ¶ added in v0.2.0
func (c *Client) ClearDomainGeo(ctx context.Context, name, domain string) (GeoPolicyResource, error)
ClearDomainGeo calls DELETE .../domains/{domain}/geo.
func (*Client) ClearDomainHeaders ¶ added in v0.2.0
func (c *Client) ClearDomainHeaders(ctx context.Context, name, domain string) (HeadersPolicyResource, error)
ClearDomainHeaders calls DELETE .../domains/{domain}/headers.
func (*Client) ClearDomainMaintenance ¶
func (c *Client) ClearDomainMaintenance(ctx context.Context, name, domain string) (DomainMaintenanceResource, error)
ClearDomainMaintenance calls DELETE /api/v1/apps/{name}/domains/{domain}/maintenance: disables maintenance mode on domain.
func (*Client) ClearDomainRedirect ¶ added in v0.2.0
func (c *Client) ClearDomainRedirect(ctx context.Context, name, domain string) (DomainRedirectResource, error)
ClearDomainRedirect calls DELETE /api/v1/apps/{name}/domains/{domain}/redirect: removes domain's redirect.
func (*Client) ClearDomainRedirectSettings ¶ added in v0.2.0
func (c *Client) ClearDomainRedirectSettings(ctx context.Context, name, domain string) (DomainRedirectsResource, error)
ClearDomainRedirectSettings calls DELETE .../domains/{domain}/redirects.
func (*Client) ClearDomainShield ¶
func (c *Client) ClearDomainShield(ctx context.Context, name, domain string) (ShieldPolicyResource, error)
ClearDomainShield calls DELETE .../domains/{domain}/shield.
func (*Client) ClearDomainTLSCert ¶
func (c *Client) ClearDomainTLSCert(ctx context.Context, name, domain string) (DomainTLSCertResource, error)
ClearDomainTLSCert calls DELETE /api/v1/apps/{name}/domains/{domain}/tls-cert: removes domain's BYO certificate, reverting it to automatic ACME/internal issuance.
func (*Client) ClearDomainWAF ¶ added in v0.2.0
func (c *Client) ClearDomainWAF(ctx context.Context, name, domain string) (DomainWAFResource, error)
ClearDomainWAF calls DELETE /api/v1/apps/{name}/domains/{domain}/waf: resets domain to no WAF and no rate limiting.
func (*Client) ClearInbox ¶
func (c *Client) ClearInbox(ctx context.Context, req InboxClearRequest) (InboxClearResult, error)
ClearInbox calls POST /api/v1/inbox/clear.
func (*Client) ClearLogDrain ¶
ClearLogDrain calls DELETE /api/v1/apps/{name}/log-drain. No response body (204 on success), matching SetSecret's own "no body beyond the status" shape above.
func (*Client) ClearQuota ¶
ClearQuota calls DELETE /api/v1/{teams|projects}/{id}/quota.
func (*Client) ClearSessionPolicy ¶
ClearSessionPolicy calls DELETE /api/v1/security/session-policies/{team_id}.
func (*Client) ClearStorageDefault ¶
ClearStorageDefault calls DELETE /api/v1/storage/defaults/{class}.
func (*Client) ClearVolumeBackupSchedule ¶
ClearVolumeBackupSchedule calls DELETE /api/v1/apps/{name}/volumes/{volume}/backup-schedule: the app service volume counterpart of ClearBackupSchedule.
func (*Client) CloneApp ¶ added in v0.2.0
CloneApp calls POST /api/v1/apps/{name}/clone: duplicates name's desired state under newName. Domains, secret values, and node placement are never copied (see internal/api/apps_clone.go's own doc comment for why).
func (*Client) CloneAppWith ¶ added in v0.2.0
func (c *Client) CloneAppWith(ctx context.Context, name string, req CloneAppRequest) (AppResource, error)
CloneAppWith is CloneApp with the secret, domain and environment options.
func (*Client) CloneEnvironment ¶ added in v0.2.0
func (c *Client) CloneEnvironment(ctx context.Context, id string, req EnvironmentCloneRequest) (EnvironmentCloneResultResource, error)
CloneEnvironment calls POST /api/v1/environments/{id}/clone: creates a new environment in id's own project plus a real, deployed copy of every app tagged with id.
func (*Client) CompareBenchmarks ¶
func (c *Client) CompareBenchmarks(ctx context.Context, base, head string) (benchreport.Comparison, error)
CompareBenchmarks calls GET /api/v1/benchmarks/compare.
func (*Client) CompareDeployEventTimelines ¶
func (c *Client) CompareDeployEventTimelines(ctx context.Context, id, other string) (DeployEventComparison, error)
CompareDeployEventTimelines calls GET /api/v1/deployments/{id}/timeline/compare?with={other}.
func (*Client) CompareDeploys ¶
func (c *Client) CompareDeploys(ctx context.Context, name, from, to string) (DeployCompareResource, error)
CompareDeploys calls GET /api/v1/apps/{name}/deploys/compare: a before/after diff of deploy attempt from against to, or against the app's current live state when to is empty.
func (*Client) CompareEnvironmentEnv ¶ added in v0.2.0
func (c *Client) CompareEnvironmentEnv(ctx context.Context, projectID, a, b string) (EnvironmentCompareResource, error)
CompareEnvironmentEnv calls GET /api/v1/projects/{id}/environments/compare?a=...&b=...: each of environment a and b's resolved effective env vars, secret values always redacted, plus the keys that differ between them.
func (*Client) CompleteAccessReview ¶
func (c *Client) CompleteAccessReview(ctx context.Context, id string) (CompleteAccessReviewResult, error)
CompleteAccessReview calls POST .../access-reviews/{id}/complete.
func (*Client) ComposeDown ¶ added in v0.2.0
func (c *Client) ComposeDown(ctx context.Context, name string, removeVolumes bool) (ComposeDownResult, error)
ComposeDown calls DELETE /api/v1/apps/{name}/compose.
func (*Client) ConfirmAppImportCutoverDNS ¶ added in v0.2.0
func (c *Client) ConfirmAppImportCutoverDNS(ctx context.Context, session, item, run string) (ImportCutoverRun, error)
ConfirmAppImportCutoverDNS calls POST .../cutover/runs/{run}/confirm-dns.
func (*Client) ConnectAppImportSession ¶
func (c *Client) ConnectAppImportSession(ctx context.Context, id string, req AppImportRequest) (AppImportView, error)
ConnectAppImportSession calls POST .../sessions/{id}/connect: it re-attaches the source credential to an existing job after a restart. The credential stays in server memory and is never stored.
func (*Client) ConnectDatabaseApp ¶
func (c *Client) ConnectDatabaseApp(ctx context.Context, database, app, envVar, field string) (AppConnectionResource, error)
ConnectDatabaseApp calls POST /api/v1/databases/{name}/links.
func (*Client) ConnectExternalDatabase ¶ added in v0.2.0
func (c *Client) ConnectExternalDatabase(ctx context.Context, req ExternalDatabaseRequest) (ExternalDatabase, error)
ConnectExternalDatabase calls POST /api/v1/external-databases.
func (*Client) ConvertEnvToSecret ¶ added in v0.2.0
ConvertEnvToSecret calls POST /api/v1/apps/{name}/env/{key}/convert-to-secret.
func (*Client) CoolifyExitReport ¶
func (c *Client) CoolifyExitReport(ctx context.Context, req PlatformImportRequest) (coolifyexit.Report, error)
CoolifyExitReport calls POST /api/v1/migration/coolify/exit-report. The source token goes in the body only.
func (*Client) CordonNode ¶
CordonNode calls POST /api/v1/nodes/{id}/cordon: marks id unschedulable for new placements without evacuating anything already running there.
func (*Client) CreateAIChatSession ¶ added in v0.2.0
func (c *Client) CreateAIChatSession(ctx context.Context) (AIChatSessionCreatedResource, error)
CreateAIChatSession calls POST /api/v1/ai/sessions.
func (*Client) CreateAccessReview ¶
func (c *Client) CreateAccessReview(ctx context.Context, req CreateAccessReviewRequest) (AccessReviewResource, error)
CreateAccessReview calls POST /api/v1/compliance/access-reviews.
func (*Client) CreateAlertRule ¶
func (c *Client) CreateAlertRule(ctx context.Context, name string, req CreateAlertRuleRequest) (AlertRuleResource, error)
CreateAlertRule calls POST /api/v1/apps/{name}/alerts.
func (*Client) CreateAlertSilence ¶ added in v0.2.0
func (c *Client) CreateAlertSilence(ctx context.Context, req CreateSilenceRequest) (SilenceResource, error)
CreateAlertSilence calls POST /api/v1/alert-silences.
func (*Client) CreateApp ¶
func (c *Client) CreateApp(ctx context.Context, req AppResource) (AppResource, error)
CreateApp calls POST /api/v1/apps.
func (*Client) CreateAppConnection ¶ added in v0.2.0
func (c *Client) CreateAppConnection(ctx context.Context, name string, req CreateAppConnectionRequest) (AppConnectionResource, error)
CreateAppConnection calls POST /api/v1/apps/{name}/connections: adds (or replaces) one entry in name's DatabaseEnv map, the multi- connection sibling of SetAppDatabaseAttachment above.
func (*Client) CreateAppImportSession ¶ added in v0.2.0
func (c *Client) CreateAppImportSession(ctx context.Context, req AppImportRequest) (AppImportView, error)
CreateAppImportSession calls POST /api/v1/migration/apps/sessions.
func (*Client) CreateAppStream ¶ added in v0.2.0
func (c *Client) CreateAppStream(ctx context.Context, name string, req CreateAppStreamRequest) (AppStreamResource, error)
CreateAppStream calls POST /api/v1/apps/{name}/streams.
func (*Client) CreateArchive ¶
func (c *Client) CreateArchive(ctx context.Context, kind string, olderThanDays int) (ArchiveRunResult, error)
CreateArchive calls POST /api/v1/archives. An empty kind runs the whole policy.
func (*Client) CreateBackupTarget ¶
func (c *Client) CreateBackupTarget(ctx context.Context, req CreateBackupTargetRequest) (BackupTargetResource, error)
CreateBackupTarget calls POST /api/v1/backup-targets.
func (*Client) CreateBuildHook ¶
func (c *Client) CreateBuildHook(ctx context.Context, appName, name, branch string) (BuildHookResource, error)
CreateBuildHook calls POST /api/v1/apps/{name}/build-hooks; the secret URL comes back once.
func (*Client) CreateCITrust ¶
func (c *Client) CreateCITrust(ctx context.Context, name string, req CITrustRequest) (CITrust, error)
CreateCITrust calls POST /api/v1/apps/{name}/ci/trusts.
func (*Client) CreateControlPlaneBackup ¶ added in v0.2.0
func (c *Client) CreateControlPlaneBackup(ctx context.Context) (ControlPlaneBackup, error)
CreateControlPlaneBackup calls POST /api/v1/system/backups.
func (*Client) CreateCostBudget ¶
func (c *Client) CreateCostBudget(ctx context.Context, body map[string]any) (costbudget.Budget, error)
CreateCostBudget calls POST /api/v1/costs/budgets.
func (*Client) CreateDNSHealthCheck ¶ added in v0.2.0
func (c *Client) CreateDNSHealthCheck(ctx context.Context, hc DNSHealthCheck) (DNSHealthCheck, error)
CreateDNSHealthCheck calls POST /api/v1/dns/health-checks.
func (*Client) CreateDNSRecord ¶ added in v0.2.0
func (c *Client) CreateDNSRecord(ctx context.Context, name, domain string, record DNSRecordResource) (DNSRecordsResponse, error)
CreateDNSRecord calls POST .../dns-records: appends a new record to domain's zone, leaving any existing record with the same name and type untouched.
func (*Client) CreateDNSZone ¶ added in v0.2.0
func (c *Client) CreateDNSZone(ctx context.Context, provider, name, accountID string) (DNSZone, error)
CreateDNSZone calls POST /api/v1/dns/zones.
func (*Client) CreateDNSZoneRecord ¶ added in v0.2.0
func (c *Client) CreateDNSZoneRecord(ctx context.Context, provider, zone string, rs DNSRecordSet) (DNSRecordWrite, error)
CreateDNSZoneRecord calls POST /api/v1/dns/zones/{zone}/records.
func (*Client) CreateDashboard ¶
func (c *Client) CreateDashboard(ctx context.Context, in DashboardWrite) (DashboardResource, error)
CreateDashboard calls POST /api/v1/dashboards.
func (*Client) CreateDatabase ¶
func (c *Client) CreateDatabase(ctx context.Context, req DatabaseResource) (DatabaseResource, error)
CreateDatabase calls POST /api/v1/databases.
func (*Client) CreateDatabaseUser ¶ added in v0.2.0
func (c *Client) CreateDatabaseUser(ctx context.Context, name string, req DatabaseUserCreateRequest) (DatabaseUserCreated, error)
CreateDatabaseUser calls POST /api/v1/databases/{name}/users.
func (*Client) CreateDeployNotifyTarget ¶ added in v0.2.0
func (c *Client) CreateDeployNotifyTarget(ctx context.Context, name string, req CreateDeployNotifyTargetRequest) (DeployNotifyTargetResource, error)
CreateDeployNotifyTarget calls POST /api/v1/apps/{name}/deploy-notify-targets.
func (*Client) CreateEmailProvider ¶
func (c *Client) CreateEmailProvider(ctx context.Context, req EmailProvider) (EmailProvider, error)
CreateEmailProvider calls POST /api/v1/settings/email/providers.
func (*Client) CreateEnvironment ¶
func (c *Client) CreateEnvironment(ctx context.Context, projectID string, req CreateEnvironmentRequest) (EnvironmentResource, error)
CreateEnvironment calls POST /api/v1/projects/{id}/environments.
func (*Client) CreateEventWebhook ¶
func (c *Client) CreateEventWebhook(ctx context.Context, req CreateEventWebhookRequest) (EventWebhookResource, error)
CreateEventWebhook calls POST /api/v1/event-webhooks.
func (*Client) CreateEvidencePack ¶
func (c *Client) CreateEvidencePack(ctx context.Context, from, to string) (EvidencePackResource, error)
CreateEvidencePack calls POST /api/v1/compliance/evidence-packs.
func (*Client) CreateExportDestination ¶ added in v0.2.0
func (c *Client) CreateExportDestination(ctx context.Context, req CreateExportDestinationRequest) (ExportDestinationResource, error)
CreateExportDestination calls POST /api/v1/export/destinations.
func (*Client) CreateFeatureFlag ¶
func (c *Client) CreateFeatureFlag(ctx context.Context, name string, req FeatureFlagRequest) (FeatureFlagResource, error)
CreateFeatureFlag calls POST /api/v1/apps/{name}/flags.
func (*Client) CreateFirewallEdgeRule ¶
func (c *Client) CreateFirewallEdgeRule(ctx context.Context, r edgefw.Rule, force bool) (FirewallEdgeRule, error)
CreateFirewallEdgeRule calls POST .../firewall/edge/rules.
func (*Client) CreateFirewallRule ¶ added in v0.2.0
func (c *Client) CreateFirewallRule(ctx context.Context, req CreateFirewallRuleRequest) (FirewallRuleResource, error)
CreateFirewallRule calls POST /api/v1/firewall-rules.
func (*Client) CreateForm ¶
CreateForm adds a form to an app.
func (*Client) CreateGitConnection ¶
func (c *Client) CreateGitConnection(ctx context.Context, req CreateGitConnectionRequest) (GitProviderConnectionResource, error)
CreateGitConnection calls POST /api/v1/git-connections.
func (*Client) CreateGlobalEnvironment ¶ added in v0.2.0
func (c *Client) CreateGlobalEnvironment(ctx context.Context, req CreateGlobalEnvironmentRequest) (EnvironmentResource, error)
CreateGlobalEnvironment calls POST /api/v1/environments.
func (*Client) CreateInvite ¶
func (c *Client) CreateInvite(ctx context.Context, req CreateInviteRequest) (CreateInviteResponse, error)
CreateInvite calls POST /api/v1/invites.
func (*Client) CreateIssueSilence ¶
func (c *Client) CreateIssueSilence(ctx context.Context, req CreateIssueSilenceRequest) (IssueSilenceResource, error)
CreateIssueSilence calls POST /api/v1/silences.
func (*Client) CreateJob ¶ added in v0.2.0
func (c *Client) CreateJob(ctx context.Context, app string, req ScheduledTaskRequest) (ScheduledTaskResource, error)
CreateJob calls POST /api/v1/apps/{name}/jobs.
func (*Client) CreateMailBroadcast ¶
func (c *Client) CreateMailBroadcast(ctx context.Context, req MailBroadcastRequest) (MailBroadcast, error)
CreateMailBroadcast calls POST /api/v1/mail/broadcasts for a real send.
func (*Client) CreateMailGroup ¶
func (c *Client) CreateMailGroup(ctx context.Context, name, description string, rules MailRules) (MailGroup, error)
CreateMailGroup calls POST /api/v1/mail/groups.
func (*Client) CreateMaintenanceWindow ¶ added in v0.2.0
func (c *Client) CreateMaintenanceWindow(ctx context.Context, req MaintenanceWindowResource) (MaintenanceWindowResource, error)
CreateMaintenanceWindow calls POST /api/v1/alert-maintenance-windows.
func (*Client) CreateMigrationAgentSession ¶
func (c *Client) CreateMigrationAgentSession(ctx context.Context, label, addr string) (MigrationAgentCreated, error)
CreateMigrationAgentSession calls POST /api/v1/migration/agent/sessions.
func (*Client) CreateMigrationSession ¶ added in v0.2.0
CreateMigrationSession inventories a source server read-only.
func (*Client) CreateMobilePairing ¶ added in v0.2.0
func (c *Client) CreateMobilePairing(ctx context.Context, proof *StepUpProof) (MobilePairingCode, error)
CreateMobilePairing calls POST /api/v1/mobile/pairing-codes with the token owner's step-up proof.
func (*Client) CreateModel ¶ added in v0.2.0
func (c *Client) CreateModel(ctx context.Context, req CreateModelRequest) (CreateModelResponse, error)
CreateModel calls POST /api/v1/models. The response carries the API key exactly once.
func (*Client) CreateModelDetail ¶
func (c *Client) CreateModelDetail(ctx context.Context, req CreateModelRequest) (CreateModelDetailResponse, error)
CreateModelDetail calls POST /api/v1/models and keeps the CPU fields.
func (*Client) CreateModelKey ¶ added in v0.2.0
func (c *Client) CreateModelKey(ctx context.Context, name string, req CreateModelKeyRequest) (CreatedModelKeyResource, error)
CreateModelKey calls POST /api/v1/models/{name}/keys.
func (*Client) CreateNetworkShare ¶ added in v0.2.0
func (c *Client) CreateNetworkShare(ctx context.Context, req CreateNetworkShareRequest) (NetworkShareResource, error)
CreateNetworkShare calls POST /api/v1/network-shares.
func (*Client) CreateNodeJoinToken ¶
func (c *Client) CreateNodeJoinToken(ctx context.Context) (CreateNodeJoinTokenResponse, error)
CreateNodeJoinToken calls POST /api/v1/nodes/join-tokens: mints a one-time enrollment token, returned in plaintext exactly once.
func (*Client) CreateNodeJoinTokenFor ¶ added in v0.2.0
func (c *Client) CreateNodeJoinTokenFor(ctx context.Context, req CreateNodeJoinTokenRequest) (CreateNodeJoinTokenResponse, error)
CreateNodeJoinTokenFor calls POST /api/v1/nodes/join-tokens with req.
func (*Client) CreateNodeProvision ¶ added in v0.2.0
func (c *Client) CreateNodeProvision(ctx context.Context, req CreateNodeProvisionRequest) (NodeProvisionResource, error)
CreateNodeProvision calls POST /api/v1/nodes/provision.
func (*Client) CreateNodeReenrollToken ¶ added in v0.2.0
func (c *Client) CreateNodeReenrollToken(ctx context.Context, id string) (NodeReenrollTokenResponse, error)
CreateNodeReenrollToken calls POST /api/v1/nodes/{id}/reenroll-token.
func (*Client) CreateNotificationChannel ¶
func (c *Client) CreateNotificationChannel(ctx context.Context, req CreateNotificationChannelRequest) (NotificationChannelResource, error)
CreateNotificationChannel calls POST /api/v1/notification-channels.
func (*Client) CreateOrganization ¶
func (c *Client) CreateOrganization(ctx context.Context, req CreateOrganizationRequest) (OrganizationResource, error)
CreateOrganization calls POST /api/v1/organizations.
func (*Client) CreatePackageRegistry ¶
func (c *Client) CreatePackageRegistry(ctx context.Context, req CreatePackageRegistryRequest) (PackageRegistryResource, error)
CreatePackageRegistry calls POST /api/v1/package-registries.
func (*Client) CreatePipeline ¶ added in v0.2.0
func (c *Client) CreatePipeline(ctx context.Context, app string, req PipelineSaveRequest) (PipelineResource, error)
CreatePipeline calls POST /api/v1/apps/{app}/pipelines.
func (*Client) CreatePolicy ¶
func (c *Client) CreatePolicy(ctx context.Context, req PolicyRequest) (PolicyResource, error)
CreatePolicy calls POST /api/v1/iam/policies.
func (*Client) CreatePrivateNetwork ¶
func (c *Client) CreatePrivateNetwork(ctx context.Context, req PrivateNetworkRequest) (PrivateNetworkChange, error)
CreatePrivateNetwork calls POST /api/v1/private-networks.
func (*Client) CreatePrivateNetworkRule ¶
func (c *Client) CreatePrivateNetworkRule(ctx context.Context, req PrivateNetworkRuleRequest) (PrivateNetworkChange, error)
CreatePrivateNetworkRule calls POST /api/v1/private-networks/rules.
func (*Client) CreateProject ¶
func (c *Client) CreateProject(ctx context.Context, req CreateProjectRequest) (ProjectResource, error)
CreateProject calls POST /api/v1/projects.
func (*Client) CreateRegistryCredential ¶
func (c *Client) CreateRegistryCredential(ctx context.Context, req CreateRegistryCredentialRequest) (RegistryCredentialResource, error)
CreateRegistryCredential calls POST /api/v1/registry-credentials.
func (*Client) CreateRole ¶ added in v0.2.0
func (c *Client) CreateRole(ctx context.Context, req RoleRequest) (RoleResource, error)
CreateRole calls POST /api/v1/roles.
func (*Client) CreateSAMLConnection ¶
func (c *Client) CreateSAMLConnection(ctx context.Context, req SAMLConnectionRequest) (SAMLConnection, error)
CreateSAMLConnection calls POST /api/v1/sso/saml/connections.
func (*Client) CreateSCIMToken ¶
CreateSCIMToken calls POST /api/v1/sso/scim/tokens.
func (*Client) CreateSSHNodeProvision ¶ added in v0.2.0
func (c *Client) CreateSSHNodeProvision(ctx context.Context, req CreateSSHNodeProvisionRequest) (SSHNodeProvisionResource, error)
CreateSSHNodeProvision calls POST /api/v1/nodes/ssh-provision.
func (*Client) CreateSavedLogQuery ¶ added in v0.2.0
func (c *Client) CreateSavedLogQuery(ctx context.Context, req SavedLogQueryRequest) (SavedLogQuery, error)
CreateSavedLogQuery calls POST /api/v1/logs/queries.
func (*Client) CreateScheduledMaintenance ¶
func (c *Client) CreateScheduledMaintenance(ctx context.Context, req ScheduledMaintenanceRequest) (ScheduledMaintenanceResource, error)
CreateScheduledMaintenance calls POST /api/v1/scheduled-maintenance.
func (*Client) CreateScheduledTask ¶
func (c *Client) CreateScheduledTask(ctx context.Context, name string, req ScheduledTaskRequest) (ScheduledTaskResource, error)
CreateScheduledTask calls POST /api/v1/apps/{name}/scheduled-tasks.
func (*Client) CreateStandaloneDomain ¶ added in v0.2.0
func (c *Client) CreateStandaloneDomain(ctx context.Context, req StandaloneDomainRequest) (StandaloneDomain, error)
CreateStandaloneDomain calls POST /api/v1/domains/standalone.
func (*Client) CreateStatusComponent ¶ added in v0.2.0
func (c *Client) CreateStatusComponent(ctx context.Context, comp StatusComponent) (StatusComponent, error)
CreateStatusComponent calls POST /api/v1/status-page/components.
func (*Client) CreateStatusIncident ¶ added in v0.2.0
func (c *Client) CreateStatusIncident(ctx context.Context, inc StatusIncident) (StatusIncident, error)
CreateStatusIncident calls POST /api/v1/status-page/incidents.
func (*Client) CreateStorageBucket ¶
func (c *Client) CreateStorageBucket(ctx context.Context, req CreateStorageBucketRequest) (StorageBucket, error)
CreateStorageBucket calls POST /api/v1/storage/buckets.
func (*Client) CreateStorageDestination ¶ added in v0.2.0
func (c *Client) CreateStorageDestination(ctx context.Context, req StorageDestinationRequest) (StorageDestination, error)
CreateStorageDestination calls POST /api/v1/storage/destinations.
func (*Client) CreateTeam ¶ added in v0.2.0
CreateTeam calls POST /api/v1/teams.
func (*Client) CreateTeamInvite ¶ added in v0.2.0
func (c *Client) CreateTeamInvite(ctx context.Context, id string, req CreateTeamInviteRequest) (TeamInviteResource, error)
CreateTeamInvite calls POST /api/v1/teams/{id}/invites.
func (*Client) CreateTrafficExportSink ¶
func (c *Client) CreateTrafficExportSink(ctx context.Context, req TrafficExportSink) (TrafficExportSink, error)
CreateTrafficExportSink calls POST /api/v1/settings/traffic-export/sinks.
func (*Client) CreateUpgradeSchedule ¶ added in v0.2.0
func (c *Client) CreateUpgradeSchedule(ctx context.Context, req UpgradeScheduleRequest) (UpgradeSchedule, error)
CreateUpgradeSchedule calls POST /api/v1/updates/schedule.
func (*Client) CreateUser ¶
func (c *Client) CreateUser(ctx context.Context, req CreateUserRequest) (UserResource, error)
CreateUser calls POST /api/v1/auth/users.
func (*Client) CutoverReport ¶ added in v0.2.0
func (c *Client) CutoverReport(ctx context.Context, app, targetIP string, verify bool) (CutoverReport, error)
CutoverReport calls GET /api/v1/migration/cutover, or its /verify form.
func (*Client) DNSZoneDelegation ¶ added in v0.2.0
func (c *Client) DNSZoneDelegation(ctx context.Context, provider, zone string) (DNSDelegation, error)
DNSZoneDelegation calls GET /api/v1/dns/zones/{zone}/delegation.
func (*Client) DNSZoneNameServers ¶ added in v0.2.0
DNSZoneNameServers calls GET /api/v1/dns/zones/{zone}/nameservers.
func (*Client) DashboardTemplates ¶
func (c *Client) DashboardTemplates(ctx context.Context) ([]DashboardTemplate, error)
DashboardTemplates calls GET /api/v1/dashboards/templates.
func (*Client) DatabaseCatalogStatus ¶
func (c *Client) DatabaseCatalogStatus(ctx context.Context) (DBCatalogStatus, error)
DatabaseCatalogStatus calls GET /api/v1/database-catalog.
func (*Client) DatabaseUpgradeSummary ¶ added in v0.2.0
func (c *Client) DatabaseUpgradeSummary(ctx context.Context) (DBUpgradeSummary, error)
DatabaseUpgradeSummary calls GET /api/v1/databases/upgrade-summary.
func (*Client) DatabaseVersions ¶
DatabaseVersions calls GET /api/v1/database-versions?engine=.
func (*Client) DecideAccessReviewItem ¶
DecideAccessReviewItem calls PUT .../access-reviews/{id}/items/{item}.
func (*Client) DecideLoginApproval ¶ added in v0.2.0
DecideLoginApproval calls POST /api/v1/auth/login-approvals/{id}/approve with the number the waiting browser shows, or /deny. A token must hold signin:approve.
func (*Client) DecidePipelineApproval ¶ added in v0.2.0
func (c *Client) DecidePipelineApproval(ctx context.Context, app, runID string, approvalID int64, decision, comment string) error
DecidePipelineApproval calls POST .../pipeline-runs/{id}/approvals/{approval}.
func (*Client) DecidePipelineRunHold ¶ added in v0.2.0
DecidePipelineRunHold calls POST .../pipeline-runs/{id}/hold.
func (*Client) DeleteAIChatSession ¶ added in v0.2.0
DeleteAIChatSession calls DELETE /api/v1/ai/sessions/{id}.
func (*Client) DeleteAIProvider ¶
DeleteAIProvider calls DELETE /api/v1/settings/ai-assistant/providers/{id}.
func (*Client) DeleteAlertRule ¶
DeleteAlertRule calls DELETE /api/v1/apps/{name}/alerts/{id}.
func (*Client) DeleteApp ¶
DeleteApp calls DELETE /api/v1/apps/{name}: removes the app's desired state (internal/api/apps.go's own handleDeleteApp doc comment covers the known gap that this does not itself stop the running container).
func (*Client) DeleteAppAndData ¶ added in v0.2.0
DeleteAppAndData is DeleteAppResult with delete_data=true: the app's volumes are destroyed once its containers are gone.
func (*Client) DeleteAppBranchEnv ¶ added in v0.2.0
DeleteAppBranchEnv calls DELETE /api/v1/apps/{name}/branch-env/{id}: id is the override's own id (from ListAppBranchEnv or SetAppBranchEnv), not a branch name or env var key.
func (*Client) DeleteAppConnection ¶ added in v0.2.0
DeleteAppConnection calls DELETE /api/v1/apps/{name}/connections/{env_var}.
func (*Client) DeleteAppResult ¶ added in v0.2.0
DeleteAppResult calls DELETE /api/v1/apps/{name} and reports whether container teardown is still pending (HTTP 202).
func (*Client) DeleteAppStream ¶ added in v0.2.0
DeleteAppStream calls DELETE /api/v1/apps/{name}/streams/{id}.
func (*Client) DeleteArchive ¶
DeleteArchive calls DELETE /api/v1/archives/{id}.
func (*Client) DeleteBackup ¶ added in v0.2.0
DeleteBackup calls DELETE /api/v1/databases/{name}/backups/{historyId}: permanently deletes one specific archived backup attempt, both its stored object and its history row, rather than waiting for retention to age it out. Irreversible; callers must gate this behind their own explicit confirmation before ever reaching it.
func (*Client) DeleteBackupTarget ¶
DeleteBackupTarget calls DELETE /api/v1/backup-targets/{id}.
func (*Client) DeleteBenchmark ¶
DeleteBenchmark calls DELETE /api/v1/benchmarks/{id}.
func (*Client) DeleteBranchDeploy ¶
DeleteBranchDeploy calls DELETE /api/v1/apps/{name}/branch-deploys/{slug}.
func (*Client) DeleteBucketObject ¶
DeleteBucketObject calls DELETE /api/v1/storage/buckets/{id}/objects.
func (*Client) DeleteBuildCache ¶ added in v0.2.0
DeleteBuildCache calls DELETE /api/v1/build-cache. An empty app is the global default.
func (*Client) DeleteCITrust ¶
DeleteCITrust calls DELETE /api/v1/apps/{name}/ci/trusts/{id}.
func (*Client) DeleteConsoleView ¶
DeleteConsoleView calls DELETE /api/v1/resources/views/{id}.
func (*Client) DeleteControlPlaneBackup ¶ added in v0.2.0
DeleteControlPlaneBackup calls DELETE /api/v1/system/backups/{name}.
func (*Client) DeleteCostBudget ¶
DeleteCostBudget calls DELETE /api/v1/costs/budgets/{id}.
func (*Client) DeleteCustomTemplate ¶ added in v0.2.0
DeleteCustomTemplate calls DELETE /api/v1/templates/custom/{id}.
func (*Client) DeleteDNSHealthCheck ¶ added in v0.2.0
DeleteDNSHealthCheck calls DELETE /api/v1/dns/health-checks/{id}.
func (*Client) DeleteDNSRecord ¶ added in v0.2.0
func (c *Client) DeleteDNSRecord(ctx context.Context, name, domain string, record DNSRecordResource) (DNSRecordsResponse, error)
DeleteDNSRecord calls DELETE .../dns-records: removes one exact record (name, type, and value must all match). Idempotent.
func (*Client) DeleteDNSZone ¶ added in v0.2.0
func (c *Client) DeleteDNSZone(ctx context.Context, provider, zone, confirm string, force bool) error
DeleteDNSZone calls DELETE /api/v1/dns/zones/{zone}.
func (*Client) DeleteDNSZoneRecord ¶ added in v0.2.0
func (c *Client) DeleteDNSZoneRecord(ctx context.Context, provider, zone string, k DNSRecordKey) error
DeleteDNSZoneRecord calls DELETE /api/v1/dns/zones/{zone}/records.
func (*Client) DeleteDashboard ¶
DeleteDashboard calls DELETE /api/v1/dashboards/{id}.
func (*Client) DeleteDatabase ¶
DeleteDatabase calls DELETE /api/v1/databases/{name}.
func (*Client) DeleteDatabaseAndData ¶ added in v0.2.0
DeleteDatabaseAndData calls DELETE /api/v1/databases/{name} with delete_data=true: the data volumes are destroyed with the database. The server requires confirm to equal name.
func (*Client) DeleteDatabaseUser ¶ added in v0.2.0
DeleteDatabaseUser calls DELETE /api/v1/databases/{name}/users/{role}.
func (*Client) DeleteDeployNotifyTarget ¶ added in v0.2.0
DeleteDeployNotifyTarget calls DELETE /api/v1/apps/{name}/deploy-notify-targets/{id}.
func (*Client) DeleteDeployPolicy ¶
DeleteDeployPolicy calls DELETE /api/v1/deploy-policies/{scope}/{id}.
func (*Client) DeleteEmailProvider ¶
DeleteEmailProvider calls DELETE /api/v1/settings/email/providers/{id}.
func (*Client) DeleteEnvironment ¶
DeleteEnvironment calls DELETE /api/v1/environments/{id}.
func (*Client) DeleteEnvironmentCascade ¶ added in v0.2.0
func (c *Client) DeleteEnvironmentCascade(ctx context.Context, id string) (CascadeDeleteResult, error)
DeleteEnvironmentCascade calls DELETE with cascade=true: every app and database inside is torn down first. A partial result (Status "partial") means the environment still exists and repeating the call resumes.
func (*Client) DeleteEnvironmentMoveTo ¶ added in v0.2.0
DeleteEnvironmentMoveTo calls DELETE /api/v1/environments/{id}, retagging every member to moveTo first when moveTo is not empty.
func (*Client) DeleteEventWebhook ¶
DeleteEventWebhook calls DELETE /api/v1/event-webhooks/{id}.
func (*Client) DeleteExportDestination ¶ added in v0.2.0
DeleteExportDestination calls DELETE /api/v1/export/destinations/{id}.
func (*Client) DeleteExternalDatabase ¶ added in v0.2.0
DeleteExternalDatabase calls DELETE /api/v1/external-databases/{name}. It removes only the local record; the remote database is untouched.
func (*Client) DeleteFeatureFlag ¶
DeleteFeatureFlag calls DELETE /api/v1/apps/{name}/flags/{id}.
func (*Client) DeleteFirewallEdgeRule ¶
DeleteFirewallEdgeRule calls DELETE .../firewall/edge/rules/{id}.
func (*Client) DeleteFirewallRule ¶ added in v0.2.0
DeleteFirewallRule calls DELETE /api/v1/firewall-rules/{id}.
func (*Client) DeleteForm ¶
DeleteForm removes a form and all of its submissions.
func (*Client) DeleteFormSubmission ¶
DeleteFormSubmission removes one submission.
func (*Client) DeleteFunctionInvocation ¶
DeleteFunctionInvocation discards a call.
func (*Client) DeleteFunctionKV ¶
DeleteFunctionKV calls DELETE /api/v1/functions/{name}/kv/value.
func (*Client) DeleteFunctionRoutes ¶
DeleteFunctionRoutes calls DELETE /api/v1/functions/{name}/route; an empty domain or path matches all.
func (*Client) DeleteFunctionWebhook ¶
DeleteFunctionWebhook turns the webhook trigger off.
func (*Client) DeleteGitHubAppInstallation ¶ added in v0.2.0
DeleteGitHubAppInstallation calls DELETE /api/v1/github-app/installations/{id}: disconnects one account/org. Refused with a 409 (surfaced as *APIError) while a git source still points at a repo under that account.
func (*Client) DeleteGitRemote ¶
DeleteGitRemote calls DELETE /api/v1/apps/{name}/git-remote, which revokes the token.
func (*Client) DeleteGitSource ¶
DeleteGitSource calls DELETE /api/v1/apps/{name}/git-source.
func (*Client) DeleteInbox ¶
DeleteInbox calls POST /api/v1/inbox/delete; restore undoes a delete.
func (*Client) DeleteIssueSilence ¶
DeleteIssueSilence calls DELETE /api/v1/silences/{id}.
func (*Client) DeleteLoadBalancer ¶ added in v0.2.0
DeleteLoadBalancer calls DELETE /api/v1/apps/{name}/loadbalancer.
func (*Client) DeleteLogArchivePolicy ¶ added in v0.2.0
DeleteLogArchivePolicy calls DELETE /api/v1/log-archive/policy. An empty app is the global policy.
func (*Client) DeleteLogBudget ¶
DeleteLogBudget calls DELETE /api/v1/apps/{name}/log-budget.
func (*Client) DeleteLogPipeline ¶
DeleteLogPipeline calls DELETE /api/v1/apps/{name}/log-pipeline.
func (*Client) DeleteMailGroup ¶
DeleteMailGroup calls DELETE /api/v1/mail/groups/{id}.
func (*Client) DeleteMaintenanceWindow ¶ added in v0.2.0
DeleteMaintenanceWindow calls DELETE /api/v1/alert-maintenance-windows/{id}.
func (*Client) DeleteModel ¶ added in v0.2.0
DeleteModel calls DELETE /api/v1/models/{name}.
func (*Client) DeleteNetworkShare ¶ added in v0.2.0
DeleteNetworkShare calls DELETE /api/v1/network-shares/{id}.
func (*Client) DeleteNode ¶
DeleteNode calls DELETE /api/v1/nodes/{id}. Refused with a 409 (*APIError) while any service or database is still placed on id, telling the caller to drain first (handleDeleteNode's own doc comment).
func (*Client) DeleteNotificationChannel ¶
DeleteNotificationChannel calls DELETE /api/v1/notification-channels/{id}.
func (*Client) DeleteOrganization ¶
DeleteOrganization calls DELETE /api/v1/organizations/{id}.
func (*Client) DeleteOrganizationCascade ¶ added in v0.2.0
func (c *Client) DeleteOrganizationCascade(ctx context.Context, id string) (CascadeDeleteResult, error)
DeleteOrganizationCascade calls DELETE with cascade=true: every app and database inside is torn down first. A partial result (Status "partial") means the organization still exists and repeating the call resumes.
func (*Client) DeletePRPreviewEnv ¶
DeletePRPreviewEnv calls DELETE /api/v1/apps/{name}/previews/{pr}/env/{id}.
func (*Client) DeletePackageRegistry ¶
DeletePackageRegistry calls DELETE /api/v1/package-registries/{id}.
func (*Client) DeletePipeline ¶ added in v0.2.0
DeletePipeline calls DELETE /api/v1/apps/{app}/pipelines/{name}.
func (*Client) DeletePipelineWebhook ¶
DeletePipelineWebhook calls DELETE .../pipelines/{name}/webhook.
func (*Client) DeletePolicy ¶
DeletePolicy calls DELETE /api/v1/iam/policies/{id}.
func (*Client) DeletePrivateNetwork ¶
DeletePrivateNetwork calls DELETE /api/v1/private-networks/{id}.
func (*Client) DeletePrivateNetworkRule ¶
func (c *Client) DeletePrivateNetworkRule(ctx context.Context, id string) (PrivateNetworkChange, error)
DeletePrivateNetworkRule calls DELETE /api/v1/private-networks/rules/{id}.
func (*Client) DeleteProject ¶
DeleteProject calls DELETE /api/v1/projects/{id}.
func (*Client) DeleteProjectCascade ¶ added in v0.2.0
DeleteProjectCascade calls DELETE with cascade=true: every app and database inside is torn down first. A partial result (Status "partial") means the project still exists and repeating the call resumes.
func (*Client) DeletePushSubscription ¶ added in v0.2.0
DeletePushSubscription calls DELETE /api/v1/settings/push-subscriptions/{id}: revokes one registered browser.
func (*Client) DeleteRegistryCredential ¶
DeleteRegistryCredential calls DELETE /api/v1/registry-credentials/{id}.
func (*Client) DeleteRole ¶ added in v0.2.0
DeleteRole calls DELETE /api/v1/roles/{id}.
func (*Client) DeleteRuntimeSetting ¶
func (c *Client) DeleteRuntimeSetting(ctx context.Context, key string) (RuntimeSettingResource, error)
DeleteRuntimeSetting calls DELETE /api/v1/settings/runtime/{key}, dropping the saved value.
func (*Client) DeleteSAMLConnection ¶
DeleteSAMLConnection calls DELETE /api/v1/sso/saml/connections/{id}.
func (*Client) DeleteSavedLogQuery ¶ added in v0.2.0
DeleteSavedLogQuery calls DELETE /api/v1/logs/queries/{id}.
func (*Client) DeleteSavedSearch ¶
DeleteSavedSearch calls DELETE /api/v1/search/saved/{id}.
func (*Client) DeleteScheduledMaintenance ¶
DeleteScheduledMaintenance calls DELETE /api/v1/scheduled-maintenance/{id}.
func (*Client) DeleteScheduledTask ¶
DeleteScheduledTask calls DELETE /api/v1/apps/{name}/scheduled-tasks/{id}.
func (*Client) DeleteSecret ¶ added in v0.2.0
DeleteSecret calls DELETE /api/v1/apps/{name}/secrets/{key}: removes the value and undeclares the key. force overrides a locked key.
func (*Client) DeleteSecretRotation ¶
DeleteSecretRotation calls DELETE /api/v1/apps/{name}/secrets/{key}/rotation.
func (*Client) DeleteSharedEnvSecret ¶ added in v0.2.0
DeleteSharedEnvSecret calls DELETE /api/v1/{scope}s/{id}/env/secrets/{key}.
func (*Client) DeleteStandaloneDomain ¶ added in v0.2.0
DeleteStandaloneDomain calls DELETE /api/v1/domains/standalone/{domain}.
func (*Client) DeleteStaticSite ¶
DeleteStaticSite calls DELETE /api/v1/static-sites/{name}.
func (*Client) DeleteStatusComponent ¶ added in v0.2.0
DeleteStatusComponent calls DELETE /api/v1/status-page/components/{id}.
func (*Client) DeleteStatusIncident ¶ added in v0.2.0
DeleteStatusIncident calls DELETE /api/v1/status-page/incidents/{id}.
func (*Client) DeleteStorageBucket ¶
DeleteStorageBucket calls DELETE /api/v1/storage/buckets/{id}.
func (*Client) DeleteStorageDestination ¶ added in v0.2.0
DeleteStorageDestination calls DELETE /api/v1/storage/destinations/{id}.
func (*Client) DeleteTeam ¶ added in v0.2.0
DeleteTeam calls DELETE /api/v1/teams/{id}.
func (*Client) DeleteTrafficExportSink ¶
DeleteTrafficExportSink calls DELETE /api/v1/settings/traffic-export/sinks/{id}.
func (*Client) DeleteUsageBudget ¶ added in v0.2.0
DeleteUsageBudget calls DELETE /api/v1/usage/budgets/{id}.
func (*Client) DeleteUser ¶
DeleteUser calls DELETE /api/v1/users/{id}.
func (*Client) DeleteVolumeBackup ¶ added in v0.2.0
DeleteVolumeBackup calls DELETE /api/v1/apps/{name}/volumes/{volume}/backups/{historyId}: the app service volume counterpart of DeleteBackup.
func (*Client) DeployApp ¶
func (c *Client) DeployApp(ctx context.Context, name, image string, confirm bool) (DeployTriggerResult, error)
DeployApp calls POST /api/v1/apps/{name}/deploys: points the app's desired image at image. Asynchronous: this returns as soon as the desired state is saved, not once a container is actually running it. Also how a rollback is done: deploying an older, already-known tag with this same method.
confirm must be true just to have the request accepted at all when the app is tagged with a protected environment (internal/api/ environments.go's checkEnvironmentProtection); otherwise the call fails with a 409, ignored when the app has no protected environment. Even with confirm: true, a protected environment does not deploy immediately: the result's PendingApproval is set instead of App, and a different, sufficiently privileged user must approve it (ApproveDeployApproval below) before this tag actually reaches a running container.
func (*Client) DeployAppWith ¶ added in v0.2.0
func (c *Client) DeployAppWith(ctx context.Context, name string, req DeployTriggerRequest) (DeployTriggerResult, error)
DeployAppWith is DeployApp with the full request: pull and freeze override.
func (*Client) DeployCompose ¶
func (c *Client) DeployCompose(ctx context.Context, name string, composeYAML []byte) (ComposeDeployResult, error)
DeployCompose posts composeYAML as the raw body with Content-Type text/yaml. The handler reads the body verbatim, so it must not be JSON-marshaled the way do() does. Content-Type: text/yaml instead of do()'s hardcoded application/json.
func (*Client) DeployComposeFromTemplate ¶
func (c *Client) DeployComposeFromTemplate(ctx context.Context, name string, composeYAML []byte, templateID string) (ComposeDeployResult, error)
DeployComposeFromTemplate is DeployCompose for a catalog template's compose file; templateID lets the server apply the template's recommended memory limit.
func (*Client) DeployComposeStack ¶ added in v0.2.0
func (c *Client) DeployComposeStack(ctx context.Context, name string, composeYAML []byte, profiles []string) (ComposeStackDeploy, error)
DeployComposeStack calls POST /api/v1/apps/{name}/compose with optional profiles.
func (*Client) DeployEventTimeline ¶
DeployEventTimeline calls GET /api/v1/deployments/{id}/timeline.
func (*Client) DeployFromCache ¶
func (c *Client) DeployFromCache(ctx context.Context, name string, req DeployFromCacheRequest) (BuildTriggerResponse, error)
DeployFromCache calls POST /api/v1/apps/{name}/deploys/from-cache: a rebuild from the control plane's source cache that never contacts the git host.
func (*Client) DeploySpec ¶
func (c *Client) DeploySpec(ctx context.Context, name string, req DeploySpecRequest) (DeploySpecResult, error)
DeploySpec calls POST /api/v1/apps/{name}/deploy-spec (internal/api/apps_multi.go's handleDeploySpec): fans req.Services out into N independent builds+deploys under one store.App named name. Synchronous and blocking, same as TriggerBuild, for the identical reason (internal/api/apps_multi.go's own doc comment).
func (*Client) DeployTimeline ¶
DeployTimeline calls GET /api/v1/deployments/timeline with the given query (since, until, app, project, node, status, limit, cursor).
func (*Client) DetachAppIntegration ¶ added in v0.2.0
DetachAppIntegration calls DELETE /api/v1/apps/{name}/integrations/{id}: id is the attachment's own ID (from ListAppIntegrations), not the catalog key.
func (*Client) DetachAppTag ¶ added in v0.2.0
DetachAppTag calls DELETE /api/v1/apps/{name}/tags/{id}: id is the tag's ID (from ListAppTags or ListTags above), not its name.
func (*Client) DetachPolicy ¶
DetachPolicy calls DELETE /api/v1/iam/policies/{id}/attachments/{principalType}/{principalID}.
func (*Client) DetectFramework ¶ added in v0.2.0
func (c *Client) DetectFramework(ctx context.Context, repoURL, ref string) (DetectFrameworkResource, error)
DetectFramework calls POST /api/v1/build/detect.
func (*Client) DetectGitSourceBuild ¶ added in v0.2.0
func (c *Client) DetectGitSourceBuild(ctx context.Context, name, branch string) (GitBuildDetection, error)
DetectGitSourceBuild calls POST /api/v1/apps/{name}/git-source/detect.
func (*Client) DiagnoseApp ¶
DiagnoseApp calls GET /api/v1/apps/{name}/diagnose (internal/api/diagnose.go's handleDiagnoseApp): a read-only, deterministic explanation of the app's newest deploy failure or crashloop state. deployID pins the diagnosis to one past attempt (?deploy_id=); empty means "the app's newest attempt."
func (*Client) DiagnoseStuck ¶
DiagnoseStuck calls GET /api/v1/diagnose/{kind}/{name}.
func (*Client) DialDatabaseTunnel ¶
DialDatabaseTunnel opens a byte stream to a managed database through the control plane, over GET /api/v1/databases/{name}/tunnel.
func (*Client) DisableErrorTracking ¶
DisableErrorTracking calls DELETE /api/v1/apps/{name}/error-tracking.
func (*Client) DisablePITR ¶ added in v0.2.0
DisablePITR calls DELETE /api/v1/databases/{name}/pitr.
func (*Client) DisablePlugin ¶
DisablePlugin calls POST /api/v1/plugins/{name}/disable.
func (*Client) DisableRegistry ¶
func (c *Client) DisableRegistry(ctx context.Context) (RegistrySettingsResource, error)
DisableRegistry calls DELETE /api/v1/settings/registry: disables the registry and clears its generated credentials in one step.
func (*Client) DisableTracing ¶
DisableTracing calls DELETE /api/v1/apps/{name}/tracing.
func (*Client) DiscardMajorUpgradeSnapshot ¶ added in v0.2.0
DiscardMajorUpgradeSnapshot calls DELETE .../major-upgrades/{id}/snapshot.
func (*Client) DisconnectCloudflareDNS ¶
func (c *Client) DisconnectCloudflareDNS(ctx context.Context) (CloudflareDNSResource, error)
DisconnectCloudflareDNS calls DELETE /api/v1/settings/cloudflare-dns.
func (*Client) DisconnectCloudflareTunnel ¶
func (c *Client) DisconnectCloudflareTunnel(ctx context.Context) (CloudflareTunnelResource, error)
DisconnectCloudflareTunnel calls DELETE /api/v1/settings/cloudflare-tunnel: disables the tunnel and clears the stored token in one step.
func (*Client) DisconnectGitConnection ¶
func (c *Client) DisconnectGitConnection(ctx context.Context, id string) (GitDisconnectResource, error)
DisconnectGitConnection calls DELETE /api/v1/git-connections/{id}.
func (*Client) DisconnectGitHubApp ¶ added in v0.2.0
DisconnectGitHubApp calls DELETE /api/v1/github-app: forgets the stored connection locally. Does not uninstall or delete the App on GitHub's own side.
func (*Client) DisconnectGoogleCloudDNS ¶
func (c *Client) DisconnectGoogleCloudDNS(ctx context.Context) (GoogleCloudDNSResource, error)
DisconnectGoogleCloudDNS calls DELETE /api/v1/settings/google-cloud-dns.
func (*Client) DisconnectNodeProvider ¶
DisconnectNodeProvider calls DELETE /api/v1/node-providers/{provider}.
func (*Client) DisconnectRoute53DNS ¶ added in v0.2.0
func (c *Client) DisconnectRoute53DNS(ctx context.Context) (Route53DNSResource, error)
DisconnectRoute53DNS calls DELETE /api/v1/settings/route53-dns.
func (*Client) DisconnectVault ¶ added in v0.2.0
func (c *Client) DisconnectVault(ctx context.Context) (VaultSettingsResource, error)
DisconnectVault calls DELETE /api/v1/settings/vault: disables vault and clears the stored credential in one step.
func (*Client) DiscoverAppHealth ¶ added in v0.2.0
func (c *Client) DiscoverAppHealth(ctx context.Context, name string) (HealthDiscoveryResponse, error)
DiscoverAppHealth calls POST /api/v1/apps/{name}/health/discover: actively probes name's running container against a fixed set of well-known paths and reports each one's real outcome. Never guesses: every path in the response was actually tried.
func (*Client) DiscoverMigrationAgent ¶
func (c *Client) DiscoverMigrationAgent(ctx context.Context, id string) (MigrationAgentInventory, error)
DiscoverMigrationAgent calls POST /api/v1/migration/agent/sessions/{id}/discover.
func (*Client) DiscoverPlatformImport ¶ added in v0.2.0
func (c *Client) DiscoverPlatformImport(ctx context.Context, req PlatformImportRequest) (PlatformImportReport, error)
DiscoverPlatformImport calls POST /api/v1/imports/platform/discover.
func (*Client) DomainActivity ¶ added in v0.2.0
func (c *Client) DomainActivity(ctx context.Context, domain string, limit int, before, actions string) (ActivityPage, error)
DomainActivity calls GET /api/v1/domains/{domain}/activity.
func (*Client) DomainCertStatus ¶
DomainCertStatus reads the progress and details of domain's certificate.
func (*Client) DomainDiagnose ¶
DomainDiagnose calls POST /api/v1/domains/{domain}/diagnose.
func (*Client) DomainDoctor ¶ added in v0.2.0
DomainDoctor calls POST /api/v1/apps/{name}/domains/{domain}/doctor.
func (*Client) DownloadAccountExport ¶
DownloadAccountExport calls GET /api/v1/auth/export/{id}/download and returns the zip.
func (*Client) DownloadArchive ¶
DownloadArchive calls GET /api/v1/archives/{id}/download and returns the zstd bundle.
func (*Client) DownloadAuditLogCSV ¶
DownloadAuditLogCSV calls GET /api/v1/audit-log?format=csv and returns the raw CSV bytes. It bypasses do() because the body is passed through unmodified, not decoded as JSON. is a CSV file to pass through unmodified, not a JSON value to decode.
func (*Client) DownloadBackup ¶ added in v0.2.0
DownloadBackup calls GET /api/v1/databases/{name}/backups/{historyId}/download: one succeeded database backup's own object, streamed straight through as raw bytes so a caller can write it to a local file.
func (*Client) DownloadBucketObject ¶
DownloadBucketObject calls GET /api/v1/storage/buckets/{id}/objects/download.
func (*Client) DownloadControlPlaneBackup ¶ added in v0.2.0
DownloadControlPlaneBackup calls GET /api/v1/system/backups/{name}/download and returns the raw SQLite file.
func (*Client) DownloadDeployLog ¶ added in v0.2.0
DownloadDeployLog returns one deploy attempt's full log as raw text. It bypasses do() for the same reason as DownloadAuditLogCSV. not a JSON value to decode.
func (*Client) DownloadEvidencePack ¶
DownloadEvidencePack streams the archive into w without buffering it.
func (*Client) DownloadLogArchiveObject ¶ added in v0.2.0
func (c *Client) DownloadLogArchiveObject(ctx context.Context, targetID, key string) ([]byte, error)
DownloadLogArchiveObject calls GET /api/v1/log-archive/objects/download and returns the gzip bytes.
func (*Client) DownloadPipelineArtifact ¶
func (c *Client) DownloadPipelineArtifact(ctx context.Context, app, runID, artifactID string, w io.Writer) (int64, string, error)
DownloadPipelineArtifact calls GET .../artifacts/{id}/download and streams the archive into w, hashing as it goes. It returns the byte count and the sha256 it computed; a mismatch with the server's X-Content-SHA256 header or the Content-Length is an error.
func (*Client) DownloadSBOM ¶ added in v0.2.0
DownloadSBOM fetches the raw SBOM document of one deployment.
func (*Client) DownloadUsageReportCSV ¶ added in v0.2.0
DownloadUsageReportCSV calls GET /api/v1/usage/report?format=csv.
func (*Client) DownloadVolumeBackup ¶ added in v0.2.0
func (c *Client) DownloadVolumeBackup(ctx context.Context, name, volume, historyID string) ([]byte, error)
DownloadVolumeBackup calls GET /api/v1/apps/{name}/volumes/{volume}/backups/{historyId}/download: the app service volume counterpart of DownloadBackup above.
func (*Client) DrainNode ¶
DrainNode calls POST /api/v1/nodes/{id}/drain?target_node_id=: moves every service and database placed on id to targetNodeID (empty: the local-node sentinel, the server's own default).
func (*Client) DrillNodeCert ¶
DrillNodeCert calls POST /api/v1/nodes/{id}/cert/drill and waits for the rotation to finish.
func (*Client) DryRunAppAbuse ¶
func (c *Client) DryRunAppAbuse(ctx context.Context, app string, req AbuseDryRunRequest) (AbuseDryRun, error)
DryRunAppAbuse calls POST /api/v1/apps/{name}/abuse/dry-run.
func (*Client) DryRunAppBudget ¶
DryRunAppBudget calls POST /api/v1/apps/{name}/budget/dry-run.
func (*Client) DryRunCostBudget ¶
DryRunCostBudget calls POST /api/v1/costs/budgets/{id}/dry-run.
func (*Client) EditAppDomains ¶ added in v0.2.0
func (c *Client) EditAppDomains(ctx context.Context, name string, req EditDomainsRequest) (EditDomainsResult, error)
EditAppDomains calls PATCH /api/v1/apps/{name}/domains, which changes only the domain list.
func (*Client) EffectiveSessionPolicy ¶
func (c *Client) EffectiveSessionPolicy(ctx context.Context) (EffectiveSessionPolicy, error)
EffectiveSessionPolicy calls GET /api/v1/security/session-policy/effective.
func (*Client) EnableAppSleep ¶
func (c *Client) EnableAppSleep(ctx context.Context, appName string, idleMinutes int, opts SleepEnableOptions) (AppSleepResource, error)
EnableAppSleep calls PUT /api/v1/apps/{name}/sleep with idleMinutes and opts.
func (*Client) EnableErrorTracking ¶
func (c *Client) EnableErrorTracking(ctx context.Context, app string) (ErrorTrackingResource, error)
EnableErrorTracking calls POST /api/v1/apps/{name}/error-tracking: creates or rotates the DSN key, which is in the response only.
func (*Client) EnableHTTPS ¶ added in v0.2.0
func (c *Client) EnableHTTPS(ctx context.Context, req EnableHTTPSRequest) (HTTPSStatusResource, error)
EnableHTTPS calls POST /api/v1/settings/ingress/https.
func (*Client) EnablePITR ¶ added in v0.2.0
EnablePITR calls POST /api/v1/databases/{name}/pitr: turns on continuous WAL archiving for name going forward.
func (*Client) EnablePlugin ¶
EnablePlugin calls POST /api/v1/plugins/{name}/enable.
func (*Client) EnableTracing ¶
EnableTracing calls POST /api/v1/apps/{name}/tracing: creates or rotates the app's ingest key. The key is in the response only.
func (*Client) EnqueueFunctionCall ¶
func (c *Client) EnqueueFunctionCall(ctx context.Context, name, method, path, body string) (QueuedFunctionCall, error)
EnqueueFunctionCall queues an async call and returns at once.
func (*Client) EvaluateFeatureFlag ¶
func (c *Client) EvaluateFeatureFlag(ctx context.Context, key, identifier string) (EvaluateFlagResource, error)
EvaluateFeatureFlag calls GET /api/v1/flags/evaluate/{key}, optionally with an identifier query param for consistent percentage-rollout bucketing. Flat, not nested under an app: see internal/api/feature_flags.go's own handleEvaluateFeatureFlag doc comment for why.
func (*Client) EvaluateOAuthSSO ¶
func (c *Client) EvaluateOAuthSSO(ctx context.Context, provider string, req OAuthSSOEvaluateRequest) (OAuthSSOEvaluation, error)
EvaluateOAuthSSO calls POST /api/v1/sso/oidc/{provider}/evaluate.
func (*Client) ExchangeCIToken ¶
ExchangeCIToken calls POST /api/v1/ci/oidc-exchange with a CI identity token.
func (*Client) ExecApp ¶
func (c *Client) ExecApp(ctx context.Context, name string, req ExecRequest) (ExecResponse, error)
ExecApp calls POST /api/v1/apps/{name}/exec: runs command (plus args) inside the app's currently running container and returns its stdout/stderr/exit code once it finishes. AbilityRoot-gated server-side (internal/api/exec.go's own doc comment: secrets are injected as plaintext env vars, so exec can read them anyway, and must sit behind the tier that boundary implies).
func (*Client) ExpireAlertSilence ¶ added in v0.2.0
ExpireAlertSilence calls DELETE /api/v1/alert-silences/{id}, ending it now.
func (*Client) ExplainDatabaseQuery ¶ added in v0.2.0
func (c *Client) ExplainDatabaseQuery(ctx context.Context, name string, req DatabaseQueryRequest) (DatabaseQueryResult, error)
ExplainDatabaseQuery calls POST /api/v1/databases/{name}/explain.
func (*Client) ExploreCosts ¶
func (c *Client) ExploreCosts(ctx context.Context, q CostExploreQuery) (CostExploration, error)
ExploreCosts calls GET /api/v1/costs/explore.
func (*Client) ExportAuditLog ¶ added in v0.2.0
ExportAuditLog calls GET /api/v1/audit-log/export and returns the raw NDJSON or CSV body.
func (*Client) ExportDNSZoneRecords ¶ added in v0.2.0
func (c *Client) ExportDNSZoneRecords(ctx context.Context, provider, zone, format string) ([]byte, error)
ExportDNSZoneRecords calls GET /api/v1/dns/zones/{zone}/records/export.
func (*Client) ExportDashboard ¶
ExportDashboard calls GET /api/v1/dashboards/{id}/export and returns the portable document.
func (*Client) ExportEnv ¶ added in v0.2.0
ExportEnv calls GET /api/v1/apps/{name}/env/export: the file with sensitive values masked (values "masked") or every value dropped ("none").
func (*Client) ExportEnvRevealed ¶ added in v0.2.0
func (c *Client) ExportEnvRevealed(ctx context.Context, app, format string, proof *StepUpProof) ([]byte, error)
ExportEnvRevealed calls POST /api/v1/apps/{name}/env/export: every value, secrets included, after a step-up.
func (*Client) ExportFormSubmissions ¶
func (c *Client) ExportFormSubmissions(ctx context.Context, app, form string, f FormSubmissionFilter) ([]byte, error)
ExportFormSubmissions downloads matching submissions as CSV.
func (*Client) ExportIaC ¶ added in v0.2.0
func (c *Client) ExportIaC(ctx context.Context, project, app string, includeEnvValues bool) (iac.ExportResult, error)
ExportIaC calls GET /api/v1/export.
func (*Client) ExportLoadBalancer ¶ added in v0.2.0
func (c *Client) ExportLoadBalancer(ctx context.Context, name, format string) (LoadBalancerArtifact, error)
ExportLoadBalancer calls GET /api/v1/apps/{name}/loadbalancer/export.
func (*Client) ExtendPreviewEnvironment ¶ added in v0.2.0
func (c *Client) ExtendPreviewEnvironment(ctx context.Context, appName string, prNumber, hours int) (PreviewEnvironmentResource, error)
ExtendPreviewEnvironment calls POST /api/v1/apps/{name}/previews/{number}/extend.
func (*Client) FirewallEdgeAudit ¶
func (c *Client) FirewallEdgeAudit(ctx context.Context, limit int) ([]FirewallEdgeAuditEntry, error)
FirewallEdgeAudit calls GET .../firewall/edge/audit.
func (*Client) FirewallEdgeSettings ¶
func (c *Client) FirewallEdgeSettings(ctx context.Context) (FirewallEdgeSettings, error)
FirewallEdgeSettings calls GET .../firewall/edge/settings.
func (*Client) FirewallEdgeStatus ¶
func (c *Client) FirewallEdgeStatus(ctx context.Context, scope, rng string) (FirewallEdgeStatus, error)
FirewallEdgeStatus calls GET .../firewall/edge/status.
func (*Client) FirewallEdgeTraffic ¶
func (c *Client) FirewallEdgeTraffic(ctx context.Context, scope string) (FirewallEdgeTraffic, error)
FirewallEdgeTraffic calls GET .../firewall/edge/traffic.
func (*Client) FixCPHealth ¶
FixCPHealth calls POST /api/v1/system/control-plane-health/fix.
func (*Client) FixEnv ¶
FixEnv calls POST /api/v1/apps/{name}/env/check/fix and returns the findings that remain.
func (*Client) FixResilienceSnapshot ¶
func (c *Client) FixResilienceSnapshot(ctx context.Context) (OutageReport, error)
FixResilienceSnapshot calls POST /api/v1/system/resilience/snapshot and returns the re-checked report.
func (*Client) FreeDiskSpace ¶
func (c *Client) FreeDiskSpace(ctx context.Context) (FreeSpaceResult, error)
FreeDiskSpace calls POST /api/v1/resilience/disk/free-space.
func (*Client) GeoIPLookup ¶ added in v0.2.0
GeoIPLookup calls GET /api/v1/system/geoip, with ?ip= when ip is set.
func (*Client) GetAIAssistantSettings ¶ added in v0.2.0
func (c *Client) GetAIAssistantSettings(ctx context.Context) (AIAssistantSettingsResource, error)
GetAIAssistantSettings calls GET /api/v1/settings/ai-assistant.
func (*Client) GetAIChatSession ¶ added in v0.2.0
GetAIChatSession calls GET /api/v1/ai/sessions/{id}: the full transcript.
func (*Client) GetAIControl ¶ added in v0.2.0
func (c *Client) GetAIControl(ctx context.Context) (AIControlResource, error)
GetAIControl calls GET /api/v1/settings/ai-control.
func (*Client) GetAIUsage ¶
GetAIUsage calls GET /api/v1/ai/usage?days=N.
func (*Client) GetAccessReview ¶
GetAccessReview calls GET /api/v1/compliance/access-reviews/{id}.
func (*Client) GetAdvisorSummary ¶ added in v0.2.0
func (c *Client) GetAdvisorSummary(ctx context.Context) (AdvisorSummary, error)
GetAdvisorSummary calls GET /api/v1/resource-advisor/summary.
func (*Client) GetAppAbuse ¶
GetAppAbuse calls GET /api/v1/apps/{name}/abuse.
func (*Client) GetAppAutoscale ¶
GetAppAutoscale calls GET /api/v1/apps/{name}/autoscale; an app with no policy fails with an APIError of status 404.
func (*Client) GetAppAutoscaleHistory ¶
func (c *Client) GetAppAutoscaleHistory(ctx context.Context, app string) (AppAutoscaleHistory, error)
GetAppAutoscaleHistory calls GET /api/v1/apps/{name}/autoscale/history.
func (*Client) GetAppBudget ¶
GetAppBudget calls GET /api/v1/apps/{name}/budget; an app with no budget fails with an APIError of status 404.
func (*Client) GetAppBudgetHistory ¶
GetAppBudgetHistory calls GET /api/v1/apps/{name}/budget/history.
func (*Client) GetAppBuildLimits ¶
GetAppBuildLimits calls GET /api/v1/apps/{name}/build-limits.
func (*Client) GetAppCache ¶
GetAppCache calls GET /api/v1/apps/{name}/cache.
func (*Client) GetAppChanges ¶ added in v0.2.0
func (c *Client) GetAppChanges(ctx context.Context, name string, until time.Time, window string) (*RecentChangesResource, error)
GetAppChanges calls GET /api/v1/apps/{name}/changes. Zero until means now; an empty window keeps the server default.
func (*Client) GetAppCostEstimate ¶ added in v0.2.0
GetAppCostEstimate calls GET /api/v1/apps/{name}/cost-estimate (internal/api/cost_estimate.go's handleAppCostEstimate): a read-only, deterministic "what this would cost elsewhere" estimate derived from the app's declared or observed CPU/memory. Not a real bill.
func (*Client) GetAppEgressPolicy ¶ added in v0.2.0
func (c *Client) GetAppEgressPolicy(ctx context.Context, name string) (AppEgressPolicyResource, error)
GetAppEgressPolicy calls GET /api/v1/apps/{name}/egress-policy: name's current outbound network allowlist, unconfigured (Mode/Allow both empty) meaning unrestricted egress.
func (*Client) GetAppEnvironmentDomains ¶ added in v0.2.0
func (c *Client) GetAppEnvironmentDomains(ctx context.Context, name string) (AppEnvironmentDomains, error)
GetAppEnvironmentDomains calls GET /api/v1/apps/{name}/environment-domains.
func (*Client) GetAppExposure ¶
GetAppExposure calls GET /api/v1/apps/{name}/exposure.
func (*Client) GetAppGitHubActions ¶
func (c *Client) GetAppGitHubActions(ctx context.Context, name string) (AppGitHubActionsResource, error)
GetAppGitHubActions calls GET /api/v1/apps/{name}/github-actions.
func (*Client) GetAppGroup ¶
GetAppGroup calls GET /api/v1/apps/{name}/group (internal/api/apps_group.go's handleGetAppGroup): name's sibling services under the same store.App, one call whether name already has siblings or is its own one-service group.
func (*Client) GetAppHealth ¶ added in v0.2.0
GetAppHealth calls GET /api/v1/apps/{name}/health.
func (*Client) GetAppHealthScore ¶ added in v0.2.0
func (c *Client) GetAppHealthScore(ctx context.Context, name string) (AppHealthScoreResource, error)
GetAppHealthScore calls GET /api/v1/apps/{name}/health-score: a live synthesis of deploy, security, resilience, and observability signals into one pass/warn/fail verdict per category.
func (*Client) GetAppHookRuns ¶
GetAppHookRuns calls GET /api/v1/apps/{name}/hook-runs (internal/api/apps_hooks.go's handleGetAppHookRuns): the most recent outcome of each of name's pre/post-deploy hooks.
func (*Client) GetAppImportSession ¶ added in v0.2.0
GetAppImportSession calls GET /api/v1/migration/apps/sessions/{id}.
func (*Client) GetAppIngressLimits ¶
GetAppIngressLimits calls GET /api/v1/apps/{name}/ingress-limits.
func (*Client) GetAppMaintenance ¶
func (c *Client) GetAppMaintenance(ctx context.Context, name string) (AppMaintenanceResource, error)
GetAppMaintenance calls GET /api/v1/apps/{name}/maintenance: the state of every domain of the app.
func (*Client) GetAppNetwork ¶
GetAppNetwork calls GET /api/v1/apps/{name}/network (internal/api/network.go's handleGetAppNetwork).
func (*Client) GetAppResourceRecommendation ¶
func (c *Client) GetAppResourceRecommendation(ctx context.Context, name string) (ResourceRecommendationResource, error)
GetAppResourceRecommendation calls GET /api/v1/apps/{name}/resource-recommendation (internal/api/resource_recommendation.go's handleAppResourceRecommendation): a read-only, deterministic memory/CPU right-sizing suggestion derived from the app's own historical usage.
func (*Client) GetAppSchedule ¶ added in v0.2.0
GetAppSchedule calls GET /api/v1/apps/{name}/schedule.
func (*Client) GetAppSleep ¶ added in v0.2.0
GetAppSleep calls GET /api/v1/apps/{name}/sleep.
func (*Client) GetAppTimeline ¶ added in v0.2.0
func (c *Client) GetAppTimeline(ctx context.Context, name string, limit int, before string) (TimelineResponse, error)
GetAppTimeline calls GET /api/v1/apps/{name}/timeline. limit 0 keeps the server default; before is the previous page's next_cursor.
func (*Client) GetAppTraffic ¶
func (c *Client) GetAppTraffic(ctx context.Context, name, window string) (AppTrafficResource, error)
GetAppTraffic calls GET /api/v1/apps/{name}/traffic for window 5m, 1h, 24h or 7d.
func (*Client) GetAppURLs ¶
GetAppURLs calls GET /api/v1/apps/{name}/urls.
func (*Client) GetAppVolumeMove ¶ added in v0.2.0
func (c *Client) GetAppVolumeMove(ctx context.Context, name, id string) (AppVolumeMoveResource, error)
GetAppVolumeMove calls GET /api/v1/apps/{name}/moves/{id}: what a caller polls while MoveAppWithVolumes' own returned Status is still "running".
func (*Client) GetAppWatch ¶
GetAppWatch calls GET /api/v1/apps/{name}/watch.
func (*Client) GetAppsSummary ¶ added in v0.2.0
func (c *Client) GetAppsSummary(ctx context.Context, q AppListQuery) (AppsSummary, error)
GetAppsSummary calls GET /api/v1/apps-summary.
func (*Client) GetArchivePolicy ¶
func (c *Client) GetArchivePolicy(ctx context.Context) (ArchivePolicy, error)
GetArchivePolicy calls GET /api/v1/archives/policy.
func (*Client) GetAttentionFeed ¶ added in v0.2.0
func (c *Client) GetAttentionFeed(ctx context.Context) ([]AttentionFeedItem, error)
GetAttentionFeed calls GET /api/v1/attention/feed.
func (*Client) GetAuthEngineStatus ¶ added in v0.2.0
func (c *Client) GetAuthEngineStatus(ctx context.Context) (AuthEngineStatusResource, error)
GetAuthEngineStatus calls GET /api/v1/auth-engine/status (root only).
func (*Client) GetAutoRollback ¶ added in v0.2.0
func (c *Client) GetAutoRollback(ctx context.Context, appName string) (AutoRollbackSettingResource, error)
GetAutoRollback calls GET /api/v1/apps/{name}/auto-rollback: whether appName rolls itself back automatically the next time a crashloop alert rule fires for it.
func (*Client) GetAutoRollbackSLOBurn ¶ added in v0.2.0
func (c *Client) GetAutoRollbackSLOBurn(ctx context.Context, appName string) (AutoRollbackSLOBurnSettingResource, error)
GetAutoRollbackSLOBurn calls GET /api/v1/apps/{name}/auto-rollback-slo-burn: which mode appName reacts in the next time a kind=slo_burn alert rule fires for it.
func (*Client) GetBackupDrill ¶ added in v0.2.0
GetBackupDrill calls GET /api/v1/backups/drills/{id}.
func (*Client) GetBackupTarget ¶
GetBackupTarget calls GET /api/v1/backup-targets/{id}.
func (*Client) GetBackupTargetEncryption ¶
func (c *Client) GetBackupTargetEncryption(ctx context.Context, id string) (BackupTargetEncryptionResource, error)
GetBackupTargetEncryption calls GET /api/v1/backup-targets/{id}/encryption.
func (*Client) GetBenchmark ¶
GetBenchmark calls GET /api/v1/benchmarks/{id}.
func (*Client) GetBuildCache ¶
GetBuildCache calls GET /api/v1/builds/cache.
func (*Client) GetBuildCacheStats ¶ added in v0.2.0
GetBuildCacheStats calls GET /api/v1/build-cache/stats.
func (*Client) GetBuildLimits ¶
func (c *Client) GetBuildLimits(ctx context.Context) (BuildLimits, error)
GetBuildLimits calls GET /api/v1/build-limits.
func (*Client) GetBuildSpeed ¶
GetBuildSpeed calls GET /api/v1/apps/{name}/build-speed.
func (*Client) GetBuildStats ¶
GetBuildStats calls GET /api/v1/apps/{name}/build-stats.
func (*Client) GetCDNOverview ¶
GetCDNOverview calls GET /api/v1/cdn/overview, window being 5m, 1h, 24h or 7d (empty means 1h).
func (*Client) GetCIWorkflow ¶
GetCIWorkflow calls GET /api/v1/apps/{name}/ci/workflow.
func (*Client) GetCPHealth ¶
GetCPHealth calls GET /api/v1/system/control-plane-health.
func (*Client) GetCancelSuperseded ¶ added in v0.2.0
func (c *Client) GetCancelSuperseded(ctx context.Context, appName string) (CancelSupersededResource, error)
GetCancelSuperseded calls GET /api/v1/apps/{name}/cancel-superseded.
func (*Client) GetCertificate ¶
func (c *Client) GetCertificate(ctx context.Context, domain string, req GetCertRequest) (DomainCertStatus, error)
GetCertificate asks for a real certificate for domain.
func (*Client) GetChangelog ¶ added in v0.2.0
GetChangelog calls GET /api/v1/changelog: the most recent release notes parsed from the control plane's own CHANGELOG.md. limit <= 0 uses the API's own default page size.
func (*Client) GetChannelQuietHours ¶
GetChannelQuietHours calls GET /api/v1/notification-channels/{id}/quiet-hours.
func (*Client) GetCleanup ¶
func (c *Client) GetCleanup(ctx context.Context) (CleanupListResource, error)
GetCleanup calls GET /api/v1/cleanup.
func (*Client) GetCloudflareDNS ¶
func (c *Client) GetCloudflareDNS(ctx context.Context) (CloudflareDNSResource, error)
GetCloudflareDNS calls GET /api/v1/settings/cloudflare-dns: the Cloudflare DNS-01 credential's enabled/has_token state, needed for ACME to issue real wildcard certificates (HTTP-01 cannot).
func (*Client) GetCloudflareTunnel ¶
func (c *Client) GetCloudflareTunnel(ctx context.Context) (CloudflareTunnelResource, error)
GetCloudflareTunnel calls GET /api/v1/settings/cloudflare-tunnel: the cloudflared container's configured/observed state, exposing the control plane through a Cloudflare Tunnel instead of an inbound port.
func (*Client) GetCodeLoginSettings ¶ added in v0.2.0
func (c *Client) GetCodeLoginSettings(ctx context.Context) (CodeLoginSettings, error)
GetCodeLoginSettings calls GET /api/v1/settings/auth/code-login.
func (*Client) GetComposeRevision ¶ added in v0.2.0
func (c *Client) GetComposeRevision(ctx context.Context, name string, revision int) (ComposeRevision, error)
GetComposeRevision calls GET /api/v1/apps/{name}/compose/revisions/{revision}.
func (*Client) GetComposeStack ¶ added in v0.2.0
GetComposeStack calls GET /api/v1/apps/{name}/compose.
func (*Client) GetControlPlaneDR ¶ added in v0.2.0
func (c *Client) GetControlPlaneDR(ctx context.Context) (ControlPlaneDR, error)
GetControlPlaneDR calls GET /api/v1/system/control-plane-dr.
func (*Client) GetControlPlaneRestorePlan ¶
func (c *Client) GetControlPlaneRestorePlan(ctx context.Context) (ControlPlaneRestorePlan, error)
GetControlPlaneRestorePlan calls GET /api/v1/system/control-plane-dr/restore-plan.
func (*Client) GetDNSProvider ¶
GetDNSProvider reads the instance default, or an app's effective choice when app is set.
func (*Client) GetDNSProviderPlugin ¶
func (c *Client) GetDNSProviderPlugin(ctx context.Context) (DNSProviderPlugin, error)
GetDNSProviderPlugin calls GET /api/v1/settings/dns-provider-plugin.
func (*Client) GetDashboard ¶
GetDashboard calls GET /api/v1/dashboards/{id}.
func (*Client) GetDashboardURL ¶ added in v0.2.0
func (c *Client) GetDashboardURL(ctx context.Context) (DashboardURLResource, error)
GetDashboardURL calls GET /api/v1/settings/dashboard-url.
func (*Client) GetDatabase ¶
GetDatabase calls GET /api/v1/databases/{name}.
func (*Client) GetDatabaseDataCopy ¶ added in v0.2.0
GetDatabaseDataCopy calls GET /api/v1/imports/platform/databases/{name}.
func (*Client) GetDatabaseNetwork ¶ added in v0.2.0
GetDatabaseNetwork calls GET /api/v1/databases/{name}/network.
func (*Client) GetDatabasePasswordRotation ¶
func (c *Client) GetDatabasePasswordRotation(ctx context.Context, name string) (DatabasePasswordRotation, error)
GetDatabasePasswordRotation calls GET /api/v1/databases/{name}/password-rotation.
func (*Client) GetDatabaseProvision ¶
func (c *Client) GetDatabaseProvision(ctx context.Context, name string) (ProvisionAttemptResource, error)
GetDatabaseProvision calls GET /api/v1/databases/{name}/provision.
func (*Client) GetDatabaseResourceRecommendation ¶
func (c *Client) GetDatabaseResourceRecommendation(ctx context.Context, name string) (ResourceRecommendationResource, error)
GetDatabaseResourceRecommendation calls GET /api/v1/databases/{name}/resource-recommendation (internal/api/database_resource_recommendation.go's handleDatabaseResourceRecommendation): the database-kind counterpart to GetAppResourceRecommendation, same wire shape.
func (*Client) GetDatabaseSchema ¶ added in v0.2.0
func (c *Client) GetDatabaseSchema(ctx context.Context, name string) (DatabaseSchemaResource, error)
GetDatabaseSchema calls GET /api/v1/databases/{name}/schema.
func (*Client) GetDatabaseStatus ¶ added in v0.2.0
GetDatabaseStatus calls GET /api/v1/databases/{name}/status.
func (*Client) GetDatabaseUpgrades ¶ added in v0.2.0
GetDatabaseUpgrades calls GET /api/v1/databases/{name}/upgrades.
func (*Client) GetDatabaseWho ¶ added in v0.2.0
GetDatabaseWho calls GET /api/v1/databases/{name}/access/principals.
func (*Client) GetDeploy ¶ added in v0.2.0
func (c *Client) GetDeploy(ctx context.Context, name, deployID string) (DeployAttemptResource, error)
GetDeploy calls GET /api/v1/apps/{name}/deploys/{deployId}: one deploy attempt with its structured failure. deployID may be "latest".
func (*Client) GetDeployApproval ¶ added in v0.2.0
GetDeployApproval calls GET /api/v1/deploy-approvals/{id}.
func (*Client) GetDeployFreeze ¶ added in v0.2.0
GetDeployFreeze calls GET /api/v1/apps/{name}/deploy-freeze.
func (*Client) GetDeployGate ¶ added in v0.2.0
func (c *Client) GetDeployGate(ctx context.Context, appName, deployID string) (DeployGateResource, error)
GetDeployGate calls GET /api/v1/apps/{name}/deploys/{deployId}/gate.
func (*Client) GetDeploySafety ¶ added in v0.2.0
GetDeploySafety calls GET /api/v1/apps/{name}/deploy-safety.
func (*Client) GetDeployStatus ¶
GetDeployStatus calls GET /api/v1/apps/{name}/deploys: the application controller's current stored reconcile conditions, not a deploy history log (internal/api/deploys.go's own handleDeployHistory doc comment).
func (*Client) GetDeploymentSecretScan ¶
func (c *Client) GetDeploymentSecretScan(ctx context.Context, name, id string) (SecretScanRun, error)
GetDeploymentSecretScan calls GET /api/v1/apps/{name}/deployments/{id}/secret-scan.
func (*Client) GetDeploymentsSummary ¶ added in v0.2.0
func (c *Client) GetDeploymentsSummary(ctx context.Context, window string) (DeploymentSummary, error)
GetDeploymentsSummary calls GET /api/v1/deployments/summary; window is a duration such as 24h or 7d, empty for the server default.
func (*Client) GetDiskResilience ¶
func (c *Client) GetDiskResilience(ctx context.Context) (DiskResilience, error)
GetDiskResilience calls GET /api/v1/resilience/disk.
func (*Client) GetDockerGuard ¶ added in v0.2.0
func (c *Client) GetDockerGuard(ctx context.Context) (DockerGuardResource, error)
GetDockerGuard calls GET /api/v1/system/docker-guard.
func (*Client) GetDockerHealth ¶
func (c *Client) GetDockerHealth(ctx context.Context) (DockerHealthResource, error)
GetDockerHealth calls GET /api/v1/docker/health.
func (*Client) GetDomainAuthGate ¶ added in v0.2.0
func (c *Client) GetDomainAuthGate(ctx context.Context, name, domain string) (DomainAuthGateResource, error)
GetDomainAuthGate calls GET /api/v1/apps/{name}/domains/{domain}/auth-gate.
func (*Client) GetDomainAutomation ¶ added in v0.2.0
func (c *Client) GetDomainAutomation(ctx context.Context) (DomainAutomationResource, error)
GetDomainAutomation calls GET /api/v1/settings/domain-automation.
func (*Client) GetDomainBasicAuth ¶
func (c *Client) GetDomainBasicAuth(ctx context.Context, name, domain string) (DomainBasicAuthResource, error)
GetDomainBasicAuth calls GET /api/v1/apps/{name}/domains/{domain}/auth: domain's current HTTP Basic Auth state.
func (*Client) GetDomainCache ¶ added in v0.2.0
func (c *Client) GetDomainCache(ctx context.Context, name, domain string) (CachePolicyResource, error)
GetDomainCache calls GET .../domains/{domain}/cache.
func (*Client) GetDomainCacheStats ¶ added in v0.2.0
GetDomainCacheStats calls GET .../domains/{domain}/cache/stats.
func (*Client) GetDomainErrorPages ¶ added in v0.2.0
func (c *Client) GetDomainErrorPages(ctx context.Context, name, domain string) (DomainErrorPagesResource, error)
GetDomainErrorPages calls GET /api/v1/apps/{name}/domains/{domain}/error-pages: every custom error page currently configured for domain.
func (*Client) GetDomainForwarders ¶ added in v0.2.0
func (c *Client) GetDomainForwarders(ctx context.Context, name, domain string) (ForwardersPolicyResource, error)
GetDomainForwarders calls GET .../domains/{domain}/forwarders.
func (*Client) GetDomainGeo ¶ added in v0.2.0
GetDomainGeo calls GET .../domains/{domain}/geo.
func (*Client) GetDomainHeaders ¶ added in v0.2.0
func (c *Client) GetDomainHeaders(ctx context.Context, name, domain string) (HeadersPolicyResource, error)
GetDomainHeaders calls GET .../domains/{domain}/headers.
func (*Client) GetDomainMaintenance ¶
func (c *Client) GetDomainMaintenance(ctx context.Context, name, domain string) (DomainMaintenanceResource, error)
GetDomainMaintenance calls GET /api/v1/apps/{name}/domains/{domain}/maintenance: domain's current maintenance-mode state.
func (*Client) GetDomainPolicies ¶ added in v0.2.0
func (c *Client) GetDomainPolicies(ctx context.Context, name, domain string) (DomainPoliciesResource, error)
GetDomainPolicies calls GET .../domains/{domain}/policies.
func (*Client) GetDomainPorts ¶ added in v0.2.0
func (c *Client) GetDomainPorts(ctx context.Context, name, domain string) (DomainPortsResource, error)
GetDomainPorts calls GET .../domains/{domain}/ports.
func (*Client) GetDomainRedirect ¶ added in v0.2.0
func (c *Client) GetDomainRedirect(ctx context.Context, name, domain string) (DomainRedirectResource, error)
GetDomainRedirect calls GET /api/v1/apps/{name}/domains/{domain}/redirect: domain's current redirect configuration.
func (*Client) GetDomainRedirects ¶ added in v0.2.0
func (c *Client) GetDomainRedirects(ctx context.Context, name, domain string) (DomainRedirectsResource, error)
GetDomainRedirects calls GET .../domains/{domain}/redirects.
func (*Client) GetDomainSearchVisibility ¶ added in v0.2.0
func (c *Client) GetDomainSearchVisibility(ctx context.Context, name, domain string) (DomainSearchVisibilityResource, error)
GetDomainSearchVisibility calls GET .../domains/{domain}/search-visibility.
func (*Client) GetDomainShield ¶
func (c *Client) GetDomainShield(ctx context.Context, name, domain string) (ShieldPolicyResource, error)
GetDomainShield calls GET .../domains/{domain}/shield.
func (*Client) GetDomainTLSCert ¶
func (c *Client) GetDomainTLSCert(ctx context.Context, name, domain string) (DomainTLSCertResource, error)
GetDomainTLSCert calls GET /api/v1/apps/{name}/domains/{domain}/tls-cert: domain's current BYO certificate state.
func (*Client) GetDomainWAF ¶ added in v0.2.0
GetDomainWAF calls GET /api/v1/apps/{name}/domains/{domain}/waf: domain's current WAF and rate-limit state.
func (*Client) GetEdgeSettings ¶
func (c *Client) GetEdgeSettings(ctx context.Context) (EdgeSettings, error)
GetEdgeSettings calls GET /api/v1/settings/ingress/edge.
func (*Client) GetEffectiveConfig ¶
func (c *Client) GetEffectiveConfig(ctx context.Context, name, contextName, branch string) (EffectiveConfig, error)
GetEffectiveConfig calls GET /api/v1/apps/{name}/effective-config.
func (*Client) GetEmailBranding ¶
func (c *Client) GetEmailBranding(ctx context.Context) (EmailBranding, error)
GetEmailBranding calls GET /api/v1/settings/email/branding.
func (*Client) GetEmailProvider ¶
GetEmailProvider calls GET /api/v1/settings/email/providers/{id}.
func (*Client) GetEmailSettings ¶ added in v0.2.0
func (c *Client) GetEmailSettings(ctx context.Context) (EmailSettingsResource, error)
GetEmailSettings calls GET /api/v1/settings/email.
func (*Client) GetEmailStatus ¶
func (c *Client) GetEmailStatus(ctx context.Context) (EmailStatus, error)
GetEmailStatus calls GET /api/v1/settings/email/status.
func (*Client) GetEncryptionKeys ¶
func (c *Client) GetEncryptionKeys(ctx context.Context) (EncryptionKeysStatus, error)
GetEncryptionKeys calls GET /api/v1/system/encryption-keys.
func (*Client) GetEnvSettings ¶ added in v0.2.0
GetEnvSettings calls GET /api/v1/apps/{name}/env/settings.
func (*Client) GetEnvironmentEnv ¶
GetEnvironmentEnv calls GET /api/v1/environments/{id}/env.
func (*Client) GetErrorTracking ¶
GetErrorTracking calls GET /api/v1/apps/{name}/error-tracking.
func (*Client) GetEvidencePack ¶
GetEvidencePack calls GET /api/v1/compliance/evidence-packs/{id}.
func (*Client) GetExecAccess ¶ added in v0.2.0
GetExecAccess calls GET /api/v1/apps/{name}/exec-access: whether appName's shell/exec routes (POST .../exec, GET .../terminal) are even attempted, regardless of the caller's own IAM abilities. On by default.
func (*Client) GetExportDestination ¶ added in v0.2.0
func (c *Client) GetExportDestination(ctx context.Context, id string) (ExportDestinationResource, error)
GetExportDestination calls GET /api/v1/export/destinations/{id}.
func (*Client) GetExposure ¶ added in v0.2.0
GetExposure calls GET /api/v1/firewall/exposure.
func (*Client) GetFailureContext ¶ added in v0.2.0
func (c *Client) GetFailureContext(ctx context.Context, name string) (FailureContextResource, error)
GetFailureContext calls GET /api/v1/apps/{name}/failure-context.
func (*Client) GetFeatureFlag ¶
GetFeatureFlag calls GET /api/v1/apps/{name}/flags/{id}.
func (*Client) GetFleetResourceUsage ¶ added in v0.2.0
func (c *Client) GetFleetResourceUsage(ctx context.Context) (FleetResourceUsageResource, error)
GetFleetResourceUsage calls GET /api/v1/nodes/resource-usage (internal/api/node_resource_usage.go's handleFleetResourceUsage): the latest CPU/memory/disk reading for every node plus a fleet-wide rollup, the node-scoped counterpart to ListAppResourceUsage.
func (*Client) GetFormFields ¶
GetFormFields returns the form's designer schema as JSON.
func (*Client) GetFramework ¶
GetFramework calls GET /api/v1/frameworks/{id}.
func (*Client) GetFrameworkDockerfile ¶
GetFrameworkDockerfile calls GET /api/v1/frameworks/{id}/dockerfile.
func (*Client) GetFunctionKV ¶
GetFunctionKV calls GET /api/v1/functions/{name}/kv/value.
func (*Client) GetFunctionSettings ¶
GetFunctionSettings calls GET /api/v1/functions/{name}/settings.
func (*Client) GetFunctionTriggers ¶
GetFunctionTriggers lists the triggers of one function.
func (*Client) GetGitHubAppStatus ¶ added in v0.2.0
func (c *Client) GetGitHubAppStatus(ctx context.Context) (GitHubAppStatusResource, error)
GetGitHubAppStatus calls GET /api/v1/github-app: the connection status (not connected / connected / connected but not yet installed).
func (*Client) GetGitRemote ¶
GetGitRemote calls GET /api/v1/apps/{name}/git-remote.
func (*Client) GetGitSource ¶
GetGitSource calls GET /api/v1/apps/{name}/git-source.
func (*Client) GetGlobalDeployFreeze ¶ added in v0.2.0
func (c *Client) GetGlobalDeployFreeze(ctx context.Context) (DeployFreezeResource, error)
GetGlobalDeployFreeze calls GET /api/v1/settings/deploy-freeze.
func (*Client) GetGoLive ¶ added in v0.2.0
GetGoLive calls GET .../domains/{domain}/go-live (a poll friendly status).
func (*Client) GetGoogleCloudDNS ¶
func (c *Client) GetGoogleCloudDNS(ctx context.Context) (GoogleCloudDNSResource, error)
GetGoogleCloudDNS calls GET /api/v1/settings/google-cloud-dns.
func (*Client) GetHSTS ¶
func (c *Client) GetHSTS(ctx context.Context) (HSTSStatus, error)
GetHSTS calls GET /api/v1/security/hsts (root).
func (*Client) GetHTTPSStatus ¶ added in v0.2.0
func (c *Client) GetHTTPSStatus(ctx context.Context) (HTTPSStatusResource, error)
GetHTTPSStatus calls GET /api/v1/settings/ingress/https.
func (*Client) GetIdleFootprint ¶
GetIdleFootprint calls GET /api/v1/system/footprint.
func (*Client) GetImageAutoUpdate ¶ added in v0.2.0
func (c *Client) GetImageAutoUpdate(ctx context.Context, appName string) (ImageAutoUpdateResource, error)
GetImageAutoUpdate calls GET /api/v1/apps/{name}/auto-update.
func (*Client) GetImageLayers ¶
GetImageLayers calls GET /api/v1/images/layers.
func (*Client) GetImageStatus ¶
GetImageStatus calls GET /api/v1/apps/{name}/image-status.
func (*Client) GetInboxPrefs ¶
func (c *Client) GetInboxPrefs(ctx context.Context) (InboxPrefs, error)
GetInboxPrefs calls GET /api/v1/inbox/preferences.
func (*Client) GetInboxState ¶
func (c *Client) GetInboxState(ctx context.Context) (InboxState, error)
GetInboxState calls GET /api/v1/inbox/state.
func (*Client) GetIngressConnectivity ¶ added in v0.2.0
func (c *Client) GetIngressConnectivity(ctx context.Context) (IngressConnectivity, error)
GetIngressConnectivity calls GET /api/v1/ingress/connectivity.
func (*Client) GetIngressSettings ¶ added in v0.2.0
func (c *Client) GetIngressSettings(ctx context.Context) (IngressSettingsResource, error)
GetIngressSettings calls GET /api/v1/settings/ingress.
func (*Client) GetIntegrity ¶
GetIntegrity calls GET /api/v1/system/integrity.
func (*Client) GetJanitor ¶
func (c *Client) GetJanitor(ctx context.Context) (JanitorStatus, error)
GetJanitor calls GET /api/v1/system/janitor.
func (*Client) GetJob ¶ added in v0.2.0
GetJob calls GET /api/v1/apps/{name}/jobs/{id}; id may be the job's name.
func (*Client) GetJobRun ¶ added in v0.2.0
GetJobRun calls GET .../jobs/{id}/runs/{run}, including the output.
func (*Client) GetLoadBalancer ¶ added in v0.2.0
GetLoadBalancer calls GET /api/v1/apps/{name}/loadbalancer.
func (*Client) GetLoadBalancerHistory ¶ added in v0.2.0
func (c *Client) GetLoadBalancerHistory(ctx context.Context, name string, limit int) (LoadBalancerHistory, error)
GetLoadBalancerHistory calls GET /api/v1/apps/{name}/loadbalancer/history.
func (*Client) GetLoadBalancerStatus ¶ added in v0.2.0
func (c *Client) GetLoadBalancerStatus(ctx context.Context, name string) (LoadBalancerStatus, error)
GetLoadBalancerStatus calls GET /api/v1/apps/{name}/loadbalancer/status.
func (*Client) GetLocalModelCatalog ¶
func (c *Client) GetLocalModelCatalog(ctx context.Context, nodeID string) (LocalModelCatalog, error)
GetLocalModelCatalog calls GET /api/v1/model-catalog.
func (*Client) GetLogBudget ¶
GetLogBudget calls GET /api/v1/apps/{name}/log-budget.
func (*Client) GetLogDrain ¶
GetLogDrain calls GET /api/v1/apps/{name}/log-drain: the app's currently configured external log-forwarding sink. Returns *APIError with StatusCode 404 (via errors.As) if the app doesn't exist or has no drain configured, the same two-404-cases-in-one shape that route's own doc comment describes.
func (*Client) GetLogPipeline ¶
GetLogPipeline calls GET /api/v1/apps/{name}/log-pipeline.
func (*Client) GetLogSignatures ¶ added in v0.2.0
func (c *Client) GetLogSignatures(ctx context.Context, app string, s LogSignatureQuery) (LogSignatures, error)
GetLogSignatures calls GET /api/v1/apps/{name}/logs/signatures.
func (*Client) GetLogUsage ¶
GetLogUsage calls GET /api/v1/logs/usage.
func (*Client) GetMailBroadcast ¶
GetMailBroadcast calls GET /api/v1/mail/broadcasts/{id}.
func (*Client) GetMailGroup ¶
GetMailGroup calls GET /api/v1/mail/groups/{id}; id may be the group name.
func (*Client) GetMailTemplate ¶
GetMailTemplate calls GET /api/v1/mail/templates/{key}.
func (*Client) GetMeshConnectivity ¶ added in v0.2.0
func (c *Client) GetMeshConnectivity(ctx context.Context) (MeshConnectivity, error)
GetMeshConnectivity calls GET /api/v1/mesh/connectivity.
func (*Client) GetMeshSettings ¶ added in v0.2.0
func (c *Client) GetMeshSettings(ctx context.Context) (MeshSettings, error)
GetMeshSettings calls GET /api/v1/mesh/settings.
func (*Client) GetMeshStatus ¶ added in v0.2.0
func (c *Client) GetMeshStatus(ctx context.Context) (MeshStatusResource, error)
GetMeshStatus calls GET /api/v1/mesh: this node's live WireGuard mesh state, every peer it currently knows about, and its own most recent key rotation if any. Returns a 501-wrapping error when mesh networking is not enabled on the target control plane.
func (*Client) GetMigrationAgentSession ¶
func (c *Client) GetMigrationAgentSession(ctx context.Context, id string) (MigrationAgentDetail, error)
GetMigrationAgentSession calls GET /api/v1/migration/agent/sessions/{id}.
func (*Client) GetMigrationChecklist ¶
GetMigrationChecklist calls GET /api/v1/migration/checklists/{app}.
func (*Client) GetMigrationSession ¶ added in v0.2.0
GetMigrationSession returns one session's plan and progress.
func (*Client) GetModelDetail ¶
GetModelDetail calls GET /api/v1/models/{name} and keeps the CPU fields.
func (*Client) GetModelEngineMetrics ¶ added in v0.2.0
func (c *Client) GetModelEngineMetrics(ctx context.Context, name string, since time.Duration) (EngineMetricsReport, error)
GetModelEngineMetrics calls GET /api/v1/models/{name}/engine-metrics.
func (*Client) GetModelFit ¶ added in v0.2.0
GetModelFit calls GET /api/v1/models/{name}/fit.
func (*Client) GetModelUsage ¶ added in v0.2.0
func (c *Client) GetModelUsage(ctx context.Context, name string, since time.Duration) (ModelUsageReport, error)
GetModelUsage calls GET /api/v1/models/{name}/usage.
func (*Client) GetNetworkProxyStatus ¶ added in v0.2.0
func (c *Client) GetNetworkProxyStatus(ctx context.Context) (NetworkProxyResource, error)
GetNetworkProxyStatus calls GET /api/v1/network/proxy: per-domain reachability (does this control plane's own ingress reach the app behind it) plus certificate status, the Traffic dashboard page's own data source.
func (*Client) GetNetworkShare ¶ added in v0.2.0
GetNetworkShare calls GET /api/v1/network-shares/{id}.
func (*Client) GetNetworkTopology ¶ added in v0.2.0
func (c *Client) GetNetworkTopology(ctx context.Context) (NetworkTopologyResource, error)
GetNetworkTopology calls GET /api/v1/network/topology: a read-only, whole-mesh summary of nodes, apps, databases, load balancers, and app-to-database connections.
func (*Client) GetNodeAllocations ¶
func (c *Client) GetNodeAllocations(ctx context.Context) (NodeAllocations, error)
GetNodeAllocations calls GET /api/v1/nodes/allocations.
func (*Client) GetNodeCapacity ¶
GetNodeCapacity calls GET /api/v1/nodes/{id}/capacity.
func (*Client) GetNodeCapacityForecast ¶ added in v0.2.0
func (c *Client) GetNodeCapacityForecast(ctx context.Context, id string) (NodeCapacityForecastResource, error)
GetNodeCapacityForecast calls GET /api/v1/nodes/{id}/capacity-forecast (internal/api/node_capacity_forecast.go's handleNodeCapacityForecast): a rough "days until full at the current trend" projection for id's disk and memory, derived from a deterministic linear-trend fit over recent usage history, never from an external model. Disk/Memory come back nil when the fitted trend is flat or improving, or there isn't enough history yet.
func (*Client) GetNodeDomains ¶
func (c *Client) GetNodeDomains(ctx context.Context) (NodeDomains, error)
GetNodeDomains calls GET /api/v1/nodes/domains.
func (*Client) GetNodeDrain ¶ added in v0.2.0
GetNodeDrain calls GET /api/v1/node-drains/{id}.
func (*Client) GetNodeFailure ¶
GetNodeFailure calls GET /api/v1/nodes/{id}/failure.
func (*Client) GetNodeHealth ¶
GetNodeHealth calls GET /api/v1/nodes/{id}/health: the node health controller's stored reconcile conditions, the same ConditionResource shape GetDeployStatus returns for an app.
func (*Client) GetNodeLabels ¶ added in v0.2.0
GetNodeLabels calls GET /api/v1/nodes/{id}/labels.
func (*Client) GetNodeMove ¶ added in v0.2.0
GetNodeMove calls GET /api/v1/node-moves/{id}.
func (*Client) GetNodeOnboarding ¶
GetNodeOnboarding calls GET /api/v1/nodes/{id}/onboarding.
func (*Client) GetNodePatchStatus ¶
func (c *Client) GetNodePatchStatus(ctx context.Context, id string) (NodePatchStatusResource, error)
GetNodePatchStatus calls GET /api/v1/nodes/{id}/patch-status: the latest OS-patch reading HostPatchCollector wrote for id, or Checked == false if it has never checked (unsupported package manager, or the collector hasn't run yet).
func (*Client) GetNodeProvision ¶ added in v0.2.0
GetNodeProvision calls GET /api/v1/node-provisions/{id}.
func (*Client) GetNodeTrust ¶
GetNodeTrust calls GET /api/v1/nodes/{id}/security.
func (*Client) GetOAuthSSOPolicy ¶
GetOAuthSSOPolicy calls GET /api/v1/sso/oidc/{provider}.
func (*Client) GetOAuthSettings ¶ added in v0.2.0
func (c *Client) GetOAuthSettings(ctx context.Context) ([]OAuthProviderSettingsResource, error)
GetOAuthSettings calls GET /api/v1/settings/oauth: every OAuth sign-in provider's current configuration.
func (*Client) GetOnboardingState ¶
func (c *Client) GetOnboardingState(ctx context.Context) (OnboardingStateResource, error)
GetOnboardingState calls GET /api/v1/onboarding: whether the first-run onboarding flow has been completed.
func (*Client) GetOpenAPISpec ¶ added in v0.2.0
func (c *Client) GetOpenAPISpec(ctx context.Context) (OpenAPISpecResource, error)
GetOpenAPISpec calls GET /api/v1/openapi.json: the route metadata behind "levelrail-cli api-docs" and the web dashboard's API explorer.
func (*Client) GetOrganization ¶
GetOrganization calls GET /api/v1/organizations/{id}.
func (*Client) GetOrganizationEnv ¶
GetOrganizationEnv calls GET /api/v1/organizations/{id}/env.
func (*Client) GetPITRStatus ¶ added in v0.2.0
GetPITRStatus calls GET /api/v1/databases/{name}/pitr: whether PITR is enabled and, if so, the currently recoverable window.
func (*Client) GetPendingChanges ¶ added in v0.2.0
GetPendingChanges calls GET /api/v1/apps/{name}/pending-changes.
func (*Client) GetPipeline ¶ added in v0.2.0
GetPipeline calls GET /api/v1/apps/{app}/pipelines/{name}.
func (*Client) GetPipelineInsights ¶
func (c *Client) GetPipelineInsights(ctx context.Context, app, name string) (PipelineInsights, error)
GetPipelineInsights calls GET .../pipelines/{name}/insights.
func (*Client) GetPipelineOIDCInfo ¶ added in v0.2.0
func (c *Client) GetPipelineOIDCInfo(ctx context.Context) (PipelineOIDCResource, error)
GetPipelineOIDCInfo calls GET /api/v1/pipelines/oidc: whether pipeline jobs can mint OIDC tokens on this control plane, and the URLs an operator wires into a cloud provider's OIDC trust policy.
func (*Client) GetPipelineRun ¶ added in v0.2.0
GetPipelineRun calls GET /api/v1/apps/{app}/pipeline-runs/{id}.
func (*Client) GetPipelineSync ¶ added in v0.2.0
GetPipelineSync calls GET /api/v1/apps/{app}/pipeline-sync.
func (*Client) GetPipelineWebhook ¶
GetPipelineWebhook calls GET .../pipelines/{name}/webhook.
func (*Client) GetPlacement ¶ added in v0.2.0
GetPlacement calls GET /api/v1/{apps|databases}/{name}/placement.
func (*Client) GetPlacementDecision ¶
func (c *Client) GetPlacementDecision(ctx context.Context, kind, name string) (PlacementDecisionView, error)
GetPlacementDecision calls GET /api/v1/{apps|databases}/{name}/placement/decision.
func (*Client) GetPlatformUpgradePolicy ¶ added in v0.2.0
func (c *Client) GetPlatformUpgradePolicy(ctx context.Context) (DBUpgradePolicy, error)
GetPlatformUpgradePolicy calls GET /api/v1/settings/database-upgrades.
func (*Client) GetPreferences ¶
func (c *Client) GetPreferences(ctx context.Context) (Preferences, error)
GetPreferences calls GET /api/v1/auth/preferences.
func (*Client) GetPreview ¶ added in v0.2.0
GetPreview calls GET /api/v1/apps/{name}/preview.
func (*Client) GetPreviewPolicy ¶ added in v0.2.0
func (c *Client) GetPreviewPolicy(ctx context.Context, appName string) (PreviewPolicyResource, error)
GetPreviewPolicy calls GET /api/v1/apps/{name}/preview-policy.
func (*Client) GetPrivateNetworkMap ¶
func (c *Client) GetPrivateNetworkMap(ctx context.Context) (PrivateNetworkMap, error)
GetPrivateNetworkMap calls GET /api/v1/private-networks/map.
func (*Client) GetProject ¶
GetProject calls GET /api/v1/projects/{id}.
func (*Client) GetProjectEnv ¶
GetProjectEnv calls GET /api/v1/projects/{id}/env.
func (*Client) GetProjectTopology ¶ added in v0.2.0
func (c *Client) GetProjectTopology(ctx context.Context, id string) (ProjectTopologyResource, error)
GetProjectTopology calls GET /api/v1/projects/{id}/topology: a diagram-ready graph of one project's apps, databases, and shared volumes.
func (*Client) GetProxyIntegration ¶ added in v0.2.0
func (c *Client) GetProxyIntegration(ctx context.Context) (ProxyIntegration, error)
GetProxyIntegration returns detection, settings and per-domain status.
func (*Client) GetPublishLock ¶
GetPublishLock calls GET /api/v1/apps/{name}/publish-lock.
func (*Client) GetRegistryCredential ¶
func (c *Client) GetRegistryCredential(ctx context.Context, id string) (RegistryCredentialResource, error)
GetRegistryCredential calls GET /api/v1/registry-credentials/{id}.
func (*Client) GetRegistryCredentialUsage ¶
func (c *Client) GetRegistryCredentialUsage(ctx context.Context, id string) (RegistryCredentialUsage, error)
GetRegistryCredentialUsage calls GET /api/v1/registry-credentials/{id}/usage.
func (*Client) GetRegistrySettings ¶
func (c *Client) GetRegistrySettings(ctx context.Context) (RegistrySettingsResource, error)
GetRegistrySettings calls GET /api/v1/settings/registry: the built-in registry container's configured/observed state.
func (*Client) GetReleaseHistory ¶ added in v0.2.0
GetReleaseHistory calls GET /api/v1/updates/releases.
func (*Client) GetResilience ¶
func (c *Client) GetResilience(ctx context.Context) (OutageReport, error)
GetResilience calls GET /api/v1/system/resilience.
func (*Client) GetResilienceReport ¶
func (c *Client) GetResilienceReport(ctx context.Context) (ResilienceReport, error)
GetResilienceReport calls GET /api/v1/resilience.
func (*Client) GetReverseProxyGuide ¶ added in v0.2.0
func (c *Client) GetReverseProxyGuide(ctx context.Context, domain, proxy, app string, verify bool) (ReverseProxyGuide, error)
GetReverseProxyGuide calls GET /api/v1/system/reverse-proxy. A non-empty app builds the snippet for that app's domain instead of the dashboard.
func (*Client) GetRollbackPlan ¶ added in v0.2.0
GetRollbackPlan calls GET /api/v1/updates/rollback-plan.
func (*Client) GetRoute53DNS ¶ added in v0.2.0
func (c *Client) GetRoute53DNS(ctx context.Context) (Route53DNSResource, error)
GetRoute53DNS calls GET /api/v1/settings/route53-dns: a second, independent ACME DNS-01 provider's enabled/credential-presence state, mirroring GetCloudflareDNS's own shape.
func (*Client) GetRuntimeSetting ¶
GetRuntimeSetting calls GET /api/v1/settings/runtime/{key}.
func (*Client) GetRuntimeSettings ¶
func (c *Client) GetRuntimeSettings(ctx context.Context) (RuntimeSettingsListResource, error)
GetRuntimeSettings calls GET /api/v1/settings/runtime.
func (*Client) GetSAMLConnection ¶
GetSAMLConnection calls GET /api/v1/sso/saml/connections/{id}.
func (*Client) GetSBOM ¶ added in v0.2.0
GetSBOM calls GET /api/v1/apps/{name}/deployments/{id}/sbom.
func (*Client) GetSLOPreview ¶ added in v0.2.0
func (c *Client) GetSLOPreview(ctx context.Context, name string, cfg AlertSLOConfig) (*SLOPreviewResource, error)
GetSLOPreview calls GET /api/v1/apps/{name}/slo-preview.
func (*Client) GetSSHNodeProvision ¶ added in v0.2.0
func (c *Client) GetSSHNodeProvision(ctx context.Context, id string) (SSHNodeProvisionResource, error)
GetSSHNodeProvision calls GET /api/v1/ssh-node-provisions/{id}.
func (*Client) GetSSOSettings ¶
func (c *Client) GetSSOSettings(ctx context.Context) (SSOSettings, error)
GetSSOSettings calls GET /api/v1/sso/settings.
func (*Client) GetScheduledTask ¶
func (c *Client) GetScheduledTask(ctx context.Context, name, id string) (ScheduledTaskResource, error)
GetScheduledTask calls GET /api/v1/apps/{name}/scheduled-tasks/{id}.
func (*Client) GetSecretBinding ¶ added in v0.2.0
func (c *Client) GetSecretBinding(ctx context.Context) (SecretBindingStatus, error)
GetSecretBinding calls GET /api/v1/system/secrets/binding: how many stored secret values still use the legacy unbound format.
func (*Client) GetSecretScan ¶
GetSecretScan calls GET /api/v1/apps/{name}/secret-scan.
func (*Client) GetSecurityPolicy ¶ added in v0.2.0
func (c *Client) GetSecurityPolicy(ctx context.Context) (SecurityPolicy, error)
GetSecurityPolicy calls GET /api/v1/security/policy.
func (*Client) GetSecurityPosture ¶ added in v0.2.0
func (c *Client) GetSecurityPosture(ctx context.Context) (SecurityPosture, error)
GetSecurityPosture calls GET /api/v1/security/posture.
func (*Client) GetSecurityReachability ¶
GetSecurityReachability calls GET /api/v1/security/reachability (root); refresh re-measures first.
func (*Client) GetSelfUpgradePlan ¶ added in v0.2.0
GetSelfUpgradePlan calls GET /api/v1/updates/self-upgrade/plan. An empty target asks for the latest release on the configured channel.
func (*Client) GetSelfUpgradeStatus ¶
func (c *Client) GetSelfUpgradeStatus(ctx context.Context) (SelfUpgradeStatus, error)
GetSelfUpgradeStatus calls GET /api/v1/updates/self-upgrade/status.
func (*Client) GetServerAddress ¶ added in v0.2.0
GetServerAddress calls GET /api/v1/system/server-address; domain may be empty.
func (*Client) GetServerProfile ¶
func (c *Client) GetServerProfile(ctx context.Context) (ServerProfile, error)
GetServerProfile calls GET /api/v1/settings/server-profile.
func (*Client) GetServerReadiness ¶ added in v0.2.0
GetServerReadiness calls GET /api/v1/system/readiness, optionally also checking the DNS of domain.
func (*Client) GetServiceTemplate ¶
GetServiceTemplate calls GET /api/v1/service-templates/{id}: one catalog entry, including its full compose.yaml body. Also resolves an operator-defined custom template id (resolveTemplate, internal/api/service_templates.go), so this is the same call whether id came from ListServiceTemplates or ListCustomTemplates below.
func (*Client) GetSession ¶
func (c *Client) GetSession(ctx context.Context) (SessionInfoResource, error)
GetSession calls GET /api/v1/auth/session using this Client's bearer token, exactly the same auth mechanism every other method on this type uses. The server gates this route with requireAuth, session-cookie-only, by explicit design (internal/api/account.go's handleGetSession doc comment), so a call made through this method always gets back a real, honest 401 "authentication required" for a bearer-token caller, not a client-side bug.
func (*Client) GetSetupGuide ¶ added in v0.2.0
func (c *Client) GetSetupGuide(ctx context.Context) (SetupGuideResource, error)
GetSetupGuide calls GET /api/v1/setup/guide.
func (*Client) GetSetupStatus ¶ added in v0.2.0
func (c *Client) GetSetupStatus(ctx context.Context) (SetupStatusResource, error)
GetSetupStatus calls GET /api/v1/auth/setup-status.
func (*Client) GetSleepHistory ¶
func (c *Client) GetSleepHistory(ctx context.Context, appName, since string, limit int) (SleepHistory, error)
GetSleepHistory calls GET /api/v1/apps/{name}/sleep/history. since is a duration such as 7d or empty, limit 0 uses the server default.
func (*Client) GetStaticRoutes ¶
GetStaticRoutes calls GET /api/v1/apps/{name}/static-routes.
func (*Client) GetStatusPage ¶ added in v0.2.0
func (c *Client) GetStatusPage(ctx context.Context) (StatusPageSettings, error)
GetStatusPage calls GET /api/v1/status-page.
func (*Client) GetSupplyChain ¶ added in v0.2.0
GetSupplyChain calls GET /api/v1/apps/{name}/supply-chain.
func (*Client) GetSystemCache ¶
func (c *Client) GetSystemCache(ctx context.Context) (SystemCacheResource, error)
GetSystemCache calls GET /api/v1/system/cache.
func (*Client) GetSystemDoctor ¶
func (c *Client) GetSystemDoctor(ctx context.Context) (SystemDoctorResource, error)
GetSystemDoctor calls GET /api/v1/system/doctor: the "levelrail-cli doctor" preflight bundle, a superset of GetSystemStatus above.
func (*Client) GetSystemNetworks ¶
func (c *Client) GetSystemNetworks(ctx context.Context) (SystemNetworks, error)
GetSystemNetworks calls GET /api/v1/system/networks.
func (*Client) GetSystemRestart ¶ added in v0.2.0
func (c *Client) GetSystemRestart(ctx context.Context) (SystemRestart, error)
GetSystemRestart calls GET /api/v1/system/restart.
func (*Client) GetSystemStatus ¶
func (c *Client) GetSystemStatus(ctx context.Context) (SystemStatusResource, error)
GetSystemStatus calls GET /api/v1/system/status: this control plane's own configured/not-configured signals, including local Docker daemon reachability (DockerConnected/DockerError).
func (*Client) GetTracing ¶
GetTracing calls GET /api/v1/apps/{name}/tracing.
func (*Client) GetTrafficExportSink ¶
GetTrafficExportSink calls GET /api/v1/settings/traffic-export/sinks/{id}.
func (*Client) GetTrafficExportStatus ¶
func (c *Client) GetTrafficExportStatus(ctx context.Context) (TrafficExportStatus, error)
GetTrafficExportStatus calls GET /api/v1/settings/traffic-export/status.
func (*Client) GetUpdatePreflight ¶ added in v0.2.0
func (c *Client) GetUpdatePreflight(ctx context.Context) (UpdatePreflight, error)
GetUpdatePreflight calls GET /api/v1/updates/preflight.
func (*Client) GetUpdateSettings ¶ added in v0.2.0
func (c *Client) GetUpdateSettings(ctx context.Context) (UpdateSettingsResource, error)
GetUpdateSettings calls GET /api/v1/updates/settings.
func (*Client) GetUpdates ¶
func (c *Client) GetUpdates(ctx context.Context) (UpdatesResource, error)
GetUpdates calls GET /api/v1/updates: the running control plane version against GitHub's latest published release.
func (*Client) GetUpgradeHistory ¶ added in v0.2.0
func (c *Client) GetUpgradeHistory(ctx context.Context) (UpgradeHistory, error)
GetUpgradeHistory calls GET /api/v1/updates/history.
func (*Client) GetUpgradePolicy ¶ added in v0.2.0
func (c *Client) GetUpgradePolicy(ctx context.Context) (UpgradePolicy, error)
GetUpgradePolicy calls GET /api/v1/updates/auto.
func (*Client) GetUpgradeSchedule ¶ added in v0.2.0
func (c *Client) GetUpgradeSchedule(ctx context.Context) (UpgradeScheduleStatus, error)
GetUpgradeSchedule calls GET /api/v1/updates/schedule.
func (*Client) GetUsageReport ¶ added in v0.2.0
func (c *Client) GetUsageReport(ctx context.Context, q UsageReportQuery) (UsageReport, error)
GetUsageReport calls GET /api/v1/usage/report.
func (*Client) GetUsageSettings ¶ added in v0.2.0
func (c *Client) GetUsageSettings(ctx context.Context) (UsageSettings, error)
GetUsageSettings calls GET /api/v1/usage/settings.
func (*Client) GetUserEnvironmentGrants ¶ added in v0.2.0
func (c *Client) GetUserEnvironmentGrants(ctx context.Context, userID string) (EnvironmentGrants, error)
GetUserEnvironmentGrants calls GET /api/v1/users/{id}/environment-grants.
func (*Client) GetVault ¶ added in v0.2.0
func (c *Client) GetVault(ctx context.Context) (VaultSettingsResource, error)
GetVault calls GET /api/v1/settings/vault: the external Vault integration's configured state, for resolving { vault: { path, key } } app.yaml env vars.
func (*Client) GetVolumeBackupPolicy ¶ added in v0.2.0
func (c *Client) GetVolumeBackupPolicy(ctx context.Context, name, volume string) (VolumeBackupPolicyResource, error)
GetVolumeBackupPolicy calls GET /api/v1/apps/{name}/volumes/{volume}/backup-policy.
func (*Client) GetVolumeBackupSchedule ¶
func (c *Client) GetVolumeBackupSchedule(ctx context.Context, name, volume string) (VolumeBackupScheduleResource, error)
GetVolumeBackupSchedule calls GET /api/v1/apps/{name}/volumes/{volume}/backup-schedule: the app service volume counterpart of the schedule fields riding along on GET .../databases/{name} for a database (a service can have many volumes, so there is no single app resource to embed this in, hence its own dedicated GET here).
func (*Client) GetVulnerabilities ¶ added in v0.2.0
GetVulnerabilities calls GET /api/v1/apps/{name}/deployments/{id}/vulnerabilities.
func (*Client) GitSourceAffected ¶
func (c *Client) GitSourceAffected(ctx context.Context, name, branch string, files []string) (GitSourceAffected, error)
GitSourceAffected calls POST /api/v1/apps/{name}/git-source/affected.
func (*Client) GitSourceCommits ¶ added in v0.2.0
func (c *Client) GitSourceCommits(ctx context.Context, name, branch string, refresh bool) (GitSourceCommits, error)
GitSourceCommits lists recent commits of a branch with deploy status and suggestions. branch empty means the connected branch.
func (*Client) GoLiveChecklist ¶
GoLiveChecklist calls GET /api/v1/apps/{app}/go-live/checklist.
func (*Client) GrantDatabaseAccess ¶ added in v0.2.0
func (c *Client) GrantDatabaseAccess(ctx context.Context, name string, req DatabaseGrantRequest) (DatabaseGrant, error)
GrantDatabaseAccess calls POST /api/v1/databases/{name}/access/grants.
func (*Client) HostFirewallStatus ¶ added in v0.2.0
func (c *Client) HostFirewallStatus(ctx context.Context) (HostFirewallResource, error)
HostFirewallStatus calls GET /api/v1/firewall/host.
func (*Client) IAMEffectivePermissions ¶ added in v0.2.0
func (c *Client) IAMEffectivePermissions(ctx context.Context, principalType, principalID string) (IAMEffective, error)
IAMEffectivePermissions calls GET /api/v1/iam/principals/{type}/{id}/effective.
func (*Client) IAMSuggestions ¶
IAMSuggestions calls GET /api/v1/iam/suggestions; days 0 uses the server default.
func (*Client) ImportDNSZoneRecords ¶ added in v0.2.0
func (c *Client) ImportDNSZoneRecords(ctx context.Context, provider, zone string, req DNSImportRequest) (DNSImportResult, error)
ImportDNSZoneRecords calls POST /api/v1/dns/zones/{zone}/records/import.
func (*Client) ImportDashboard ¶
func (c *Client) ImportDashboard(ctx context.Context, doc json.RawMessage, scope, project string) (DashboardResource, error)
ImportDashboard calls POST /api/v1/dashboards/import with an exported document.
func (*Client) ImportMigration ¶
func (c *Client) ImportMigration(ctx context.Context, req MigrationSourceRequest) (MigrationPlanReport, error)
ImportMigration calls POST /api/v1/migration/import for the selected items, or previews them when req.DryRun is set.
func (*Client) ImportSAMLMetadata ¶
func (c *Client) ImportSAMLMetadata(ctx context.Context, id string, req SAMLMetadataImport) (SAMLConnection, error)
ImportSAMLMetadata calls POST /api/v1/sso/saml/connections/{id}/metadata.
func (*Client) InboxUnreadCount ¶
InboxUnreadCount calls GET /api/v1/inbox/unread-count.
func (*Client) InspectPlugin ¶
func (c *Client) InspectPlugin(ctx context.Context, in InstallPluginInput) (PluginPreview, error)
InspectPlugin calls POST /api/v1/plugins/inspect. Nothing is installed.
func (*Client) InstallMarketplacePlugin ¶
func (c *Client) InstallMarketplacePlugin(ctx context.Context, in MarketplaceInstallInput) (MarketplaceInstallResult, error)
InstallMarketplacePlugin calls POST /api/v1/plugin-marketplace/install.
func (*Client) InstallPlugin ¶
InstallPlugin calls POST /api/v1/plugins. The plugin is recorded but not approved or started.
func (*Client) InstallProxy ¶
func (c *Client) InstallProxy(ctx context.Context, req ProxyInstallRequest) (ProxyInstallResult, error)
InstallProxy plans (Confirm false) or runs the proxy install.
func (*Client) InstallTemplate ¶ added in v0.2.0
func (c *Client) InstallTemplate(ctx context.Context, id string, req TemplateInstallRequest) (ComposeStackDeploy, error)
InstallTemplate calls POST /api/v1/service-templates/{id}/install.
func (*Client) InvestigateApp ¶ added in v0.2.0
func (c *Client) InvestigateApp(ctx context.Context, name string, from, to time.Time) (InvestigationResource, error)
InvestigateApp calls GET /api/v1/apps/{name}/investigate.
func (*Client) InvokeFunction ¶
func (c *Client) InvokeFunction(ctx context.Context, name string, req FunctionInvokeRequest) (FunctionInvokeResult, error)
InvokeFunction runs a test call through the function's real route, wake included.
func (*Client) IssueDatabaseTemp ¶ added in v0.2.0
func (c *Client) IssueDatabaseTemp(ctx context.Context, name, preset string, ttlMinutes int) (DatabaseTempIssued, error)
IssueDatabaseTemp calls POST /api/v1/databases/{name}/access/temp.
func (*Client) IssueGitRemote ¶
IssueGitRemote calls POST /api/v1/apps/{name}/git-remote: it enables the remote or rotates its token, and returns the new token once.
func (*Client) KeepTrialApp ¶
KeepTrialApp calls POST /api/v1/apps/{name}/keep: a trial deployment becomes a permanent app.
func (*Client) LatestMigrationVerify ¶
func (c *Client) LatestMigrationVerify(ctx context.Context) (MigrationVerifyReport, error)
LatestMigrationVerify calls GET /api/v1/migrations/verify/latest.
func (*Client) LiftFirewallEdgeBan ¶
LiftFirewallEdgeBan calls DELETE .../firewall/edge/bans/{ip}.
func (*Client) LintDockerfile ¶
func (c *Client) LintDockerfile(ctx context.Context, dockerfile string, hasDockerignore bool) (DockerLintResource, error)
LintDockerfile calls POST /api/v1/docker/lint.
func (*Client) LintStaticRoutes ¶
func (c *Client) LintStaticRoutes(ctx context.Context, name string, req StaticRoutesLintRequest) (StaticRoutesLintResource, error)
LintStaticRoutes calls POST /api/v1/apps/{name}/static-routes/lint.
func (*Client) ListAIChatSessions ¶ added in v0.2.0
func (c *Client) ListAIChatSessions(ctx context.Context) ([]AIChatSessionSummaryResource, error)
ListAIChatSessions calls GET /api/v1/ai/sessions.
func (*Client) ListAIProviderModels ¶
ListAIProviderModels calls GET /api/v1/settings/ai-assistant/providers/{id}/models.
func (*Client) ListAIProviders ¶
func (c *Client) ListAIProviders(ctx context.Context) ([]AIProviderResource, error)
ListAIProviders calls GET /api/v1/settings/ai-assistant/providers.
func (*Client) ListAccess ¶
func (c *Client) ListAccess(ctx context.Context, app string, o AccessOptions) ([]AccessRecord, error)
ListAccess calls GET /api/v1/apps/{name}/access.
func (*Client) ListAccessReviews ¶
func (c *Client) ListAccessReviews(ctx context.Context) ([]AccessReviewResource, error)
ListAccessReviews calls GET /api/v1/compliance/access-reviews.
func (*Client) ListAdvisorFindings ¶ added in v0.2.0
func (c *Client) ListAdvisorFindings(ctx context.Context, q AdvisorFindingQuery) (AdvisorFindings, error)
ListAdvisorFindings calls GET /api/v1/resource-advisor/findings.
func (*Client) ListAlertHistory ¶ added in v0.2.0
func (c *Client) ListAlertHistory(ctx context.Context, q AlertHistoryQuery) ([]AlertHistoryEntry, error)
ListAlertHistory calls GET /api/v1/alert-history.
func (*Client) ListAlertRules ¶
ListAlertRules calls GET /api/v1/apps/{name}/alerts: every alert rule scoped to name, including disabled ones.
func (*Client) ListAlertSilences ¶ added in v0.2.0
func (c *Client) ListAlertSilences(ctx context.Context, includeExpired bool) ([]SilenceResource, error)
ListAlertSilences calls GET /api/v1/alert-silences.
func (*Client) ListAlertTemplates ¶
func (c *Client) ListAlertTemplates(ctx context.Context) ([]AlertTemplateProfile, error)
ListAlertTemplates calls GET /api/v1/alert-templates.
func (*Client) ListAllBackups ¶ added in v0.2.0
func (c *Client) ListAllBackups(ctx context.Context, opts ListBackupsOptions) ([]BackupHistoryResource, error)
ListAllBackups calls GET /api/v1/backups: the instance-wide backup attempt history across every database and app volume, the aggregated counterpart of ListBackups/ListVolumeBackups.
func (*Client) ListAllEnvironments ¶ added in v0.2.0
func (c *Client) ListAllEnvironments(ctx context.Context) ([]GlobalEnvironmentResource, error)
ListAllEnvironments calls GET /api/v1/environments.
func (*Client) ListAllPipelineRuns ¶ added in v0.2.0
func (c *Client) ListAllPipelineRuns(ctx context.Context, q PipelineRunsQuery) (PipelineRunRowsPage, error)
ListAllPipelineRuns calls GET /api/v1/pipeline-runs.
func (*Client) ListAllPreviews ¶ added in v0.2.0
func (c *Client) ListAllPreviews(ctx context.Context) (PreviewsOverview, error)
ListAllPreviews calls GET /api/v1/previews: previews of every readable app plus platform-wide limit usage.
func (*Client) ListAllSecretRotation ¶
func (c *Client) ListAllSecretRotation(ctx context.Context) ([]SecretRotationPolicyResource, error)
ListAllSecretRotation calls GET /api/v1/secret-rotation (root only).
func (*Client) ListAppBranchEnv ¶ added in v0.2.0
ListAppBranchEnv calls GET /api/v1/apps/{name}/branch-env: every branch-scoped env var override declared for name, across every branch pattern.
func (*Client) ListAppBudgets ¶
func (c *Client) ListAppBudgets(ctx context.Context) (AppBudgets, error)
ListAppBudgets calls GET /api/v1/costs/app-caps.
func (*Client) ListAppCachePurges ¶
ListAppCachePurges calls GET /api/v1/apps/{name}/cache/purges.
func (*Client) ListAppConnections ¶ added in v0.2.0
func (c *Client) ListAppConnections(ctx context.Context, name string) ([]AppConnectionResource, error)
ListAppConnections calls GET /api/v1/apps/{name}/connections: every DatabaseEnv entry, each resolved against its database's real placement so the response says whether it's cross-node-capable today.
func (*Client) ListAppContexts ¶
ListAppContexts calls GET /api/v1/apps/{name}/contexts.
func (*Client) ListAppEntries ¶ added in v0.2.0
func (c *Client) ListAppEntries(ctx context.Context) ([]AppListEntry, error)
ListAppEntries calls GET /api/v1/apps and keeps each row's status rollup.
func (*Client) ListAppImages ¶ added in v0.2.0
ListAppImages calls GET /api/v1/apps/{name}/images: every locally-present tag under name's current image's repo, newest first.
func (*Client) ListAppImportSessions ¶
func (c *Client) ListAppImportSessions(ctx context.Context) ([]AppImportView, error)
ListAppImportSessions calls GET /api/v1/migration/apps/sessions; items are left out.
func (*Client) ListAppIntegrations ¶ added in v0.2.0
func (c *Client) ListAppIntegrations(ctx context.Context, name string) ([]AppIntegrationResource, error)
ListAppIntegrations calls GET /api/v1/apps/{name}/integrations: every catalog integration attached to name.
func (*Client) ListAppMetricsSummary ¶ added in v0.2.0
func (c *Client) ListAppMetricsSummary(ctx context.Context, names []string) ([]AppMetricsSummary, error)
ListAppMetricsSummary calls GET /api/v1/apps-metrics, optionally limited to names.
func (*Client) ListAppResourceUsage ¶ added in v0.2.0
func (c *Client) ListAppResourceUsage(ctx context.Context) ([]AppResourceUsageResource, error)
ListAppResourceUsage calls GET /api/v1/apps/resource-usage (internal/api/app_resource_usage.go's handleAppResourceUsage): the latest CPU/memory/network reading for every app in one call, for a dashboard-wide ranking rather than one QueryAppMetrics call per app.
func (*Client) ListAppScheduleHistory ¶ added in v0.2.0
func (c *Client) ListAppScheduleHistory(ctx context.Context, name string, limit int) ([]AppScheduleHistoryEntry, error)
ListAppScheduleHistory calls GET /api/v1/apps/{name}/schedule/history. limit <= 0 uses the server default.
func (*Client) ListAppStatuses ¶ added in v0.2.0
func (c *Client) ListAppStatuses(ctx context.Context) ([]AppStatusEntry, error)
ListAppStatuses calls GET /api/v1/apps and keeps only each app's name and rolled-up status summary.
func (*Client) ListAppStreams ¶ added in v0.2.0
ListAppStreams calls GET /api/v1/apps/{name}/streams.
func (*Client) ListAppTags ¶ added in v0.2.0
ListAppTags calls GET /api/v1/apps/{name}/tags.
func (*Client) ListAppVolumeMoves ¶ added in v0.2.0
func (c *Client) ListAppVolumeMoves(ctx context.Context, name string) ([]AppVolumeMoveResource, error)
ListAppVolumeMoves calls GET /api/v1/apps/{name}/moves: every "move with volumes" attempt for name, newest first.
func (*Client) ListApps ¶
func (c *Client) ListApps(ctx context.Context) ([]AppResource, error)
ListApps calls GET /api/v1/apps.
func (*Client) ListAppsByTag ¶ added in v0.2.0
ListAppsByTag calls GET /api/v1/tags/{id}/apps: every app tagged with id, the "list resources filtered by tag" primitive.
func (*Client) ListAppsFiltered ¶ added in v0.2.0
func (c *Client) ListAppsFiltered(ctx context.Context, q AppListQuery) ([]AppResource, error)
ListAppsFiltered calls GET /api/v1/apps with filters.
func (*Client) ListAppsInEnvironment ¶ added in v0.2.0
func (c *Client) ListAppsInEnvironment(ctx context.Context, environment string) ([]AppResource, error)
ListAppsInEnvironment calls GET /api/v1/apps?environment=<id or name>.
func (*Client) ListAppsPage ¶ added in v0.2.0
ListAppsPage calls GET /api/v1/apps with Limit/Offset query params. It reads X-Total-Count for NextOffset, which do() discards, so it issues its own request. NextOffset, which do() discards once it decodes the JSON body.
func (*Client) ListArchives ¶
func (c *Client) ListArchives(ctx context.Context) (ArchiveList, error)
ListArchives calls GET /api/v1/archives.
func (*Client) ListAuditLog ¶
func (c *Client) ListAuditLog(ctx context.Context, opts ListAuditLogOptions) ([]AuditLogEntryResource, error)
ListAuditLog calls GET /api/v1/audit-log: every recorded write/ deploy/root-tier request, newest first, cursor-paginated by opts.Before.
func (*Client) ListAuthGateEvents ¶ added in v0.2.0
func (c *Client) ListAuthGateEvents(ctx context.Context, name, domain, since string) (AuthGateEventsResponse, error)
ListAuthGateEvents calls GET .../auth-gate/events. since is a duration such as "24h" or "7d"; empty uses the server default.
func (*Client) ListAutomationRuns ¶ added in v0.2.0
ListAutomationRuns calls GET /api/v1/domains/automation/runs.
func (*Client) ListBackupDrills ¶ added in v0.2.0
func (c *Client) ListBackupDrills(ctx context.Context, service, volume, database string, limit int) ([]BackupDrillResource, error)
ListBackupDrills calls GET /api/v1/backups/drills.
func (*Client) ListBackupTargets ¶
func (c *Client) ListBackupTargets(ctx context.Context) ([]BackupTargetResource, error)
ListBackupTargets calls GET /api/v1/backup-targets.
func (*Client) ListBackupVerifications ¶
func (c *Client) ListBackupVerifications(ctx context.Context, name, historyID string) ([]BackupVerificationResource, error)
ListBackupVerifications calls GET /api/v1/databases/{name}/backups/{historyId}/verifications: every verification attempt made against one backup, newest first.
func (*Client) ListBackups ¶
func (c *Client) ListBackups(ctx context.Context, name string, opts ListBackupsOptions) ([]BackupHistoryResource, error)
ListBackups calls GET /api/v1/databases/{name}/backups: the full backup attempt history for one database.
func (*Client) ListBaseBackups ¶ added in v0.2.0
func (c *Client) ListBaseBackups(ctx context.Context, name string) ([]BaseBackupHistoryResource, error)
ListBaseBackups calls GET /api/v1/databases/{name}/base-backups.
func (*Client) ListBenchmarks ¶
ListBenchmarks calls GET /api/v1/benchmarks.
func (*Client) ListBetaFeatures ¶ added in v0.2.0
func (c *Client) ListBetaFeatures(ctx context.Context) ([]BetaFeature, error)
ListBetaFeatures calls GET /api/v1/settings/beta-features.
func (*Client) ListBoundEnv ¶
ListBoundEnv calls GET /api/v1/apps/{name}/env/bound.
func (*Client) ListBranchDeploys ¶
ListBranchDeploys calls GET /api/v1/apps/{name}/branch-deploys.
func (*Client) ListBucketObjects ¶
func (c *Client) ListBucketObjects(ctx context.Context, id, prefix, token string) (BucketObjects, error)
ListBucketObjects calls GET /api/v1/storage/buckets/{id}/objects.
func (*Client) ListBuildCache ¶ added in v0.2.0
func (c *Client) ListBuildCache(ctx context.Context) ([]BuildCacheSetting, error)
ListBuildCache calls GET /api/v1/build-cache.
func (*Client) ListBuildHooks ¶
ListBuildHooks calls GET /api/v1/apps/{name}/build-hooks.
func (*Client) ListBuilds ¶
func (c *Client) ListBuilds(ctx context.Context, app, status string, limit int) (BuildListResource, error)
ListBuilds calls GET /api/v1/builds.
func (*Client) ListCITrusts ¶
ListCITrusts calls GET /api/v1/apps/{name}/ci/trusts.
func (*Client) ListCertificates ¶ added in v0.2.0
func (c *Client) ListCertificates(ctx context.Context) ([]CertificateResource, error)
ListCertificates calls GET /api/v1/certificates: every certificate currently in this control plane's certmagic storage, healthy or not. An empty slice means no certificate has ever been issued, not an error.
func (*Client) ListCleanupRuns ¶
func (c *Client) ListCleanupRuns(ctx context.Context, q CleanupRunsQuery) (CleanupRunsPage, error)
ListCleanupRuns calls GET /api/v1/cleanup/runs with the filters that are set.
func (*Client) ListCloneRestores ¶ added in v0.2.0
func (c *Client) ListCloneRestores(ctx context.Context, name string) ([]CloneRestoreResource, error)
ListCloneRestores calls GET /api/v1/databases/{name}/clone-restores.
func (*Client) ListComposeRevisions ¶ added in v0.2.0
ListComposeRevisions calls GET /api/v1/apps/{name}/compose/revisions.
func (*Client) ListConnectableDatabases ¶ added in v0.2.0
func (c *Client) ListConnectableDatabases(ctx context.Context, name string) ([]ConnectableDatabaseResource, error)
ListConnectableDatabases calls GET /api/v1/apps/{name}/connectable-databases: every managed database name could connect to, marked with whether it's already connected and whether it's on a different node.
func (*Client) ListConsoleResources ¶
func (c *Client) ListConsoleResources(ctx context.Context, q ConsoleQuery) (ConsoleList, error)
ListConsoleResources calls GET /api/v1/resources.
func (*Client) ListConsoleViews ¶
func (c *Client) ListConsoleViews(ctx context.Context) ([]ConsoleView, error)
ListConsoleViews calls GET /api/v1/resources/views.
func (*Client) ListContainers ¶
func (c *Client) ListContainers(ctx context.Context) ([]ContainerResource, error)
ListContainers calls GET /api/v1/system/containers: every container on this node, whether or not Levelrail manages it.
func (*Client) ListControlPlaneBackups ¶ added in v0.2.0
func (c *Client) ListControlPlaneBackups(ctx context.Context) ([]ControlPlaneBackup, error)
ListControlPlaneBackups calls GET /api/v1/system/backups, newest first.
func (*Client) ListControlPlaneOffboxBackups ¶ added in v0.2.0
func (c *Client) ListControlPlaneOffboxBackups(ctx context.Context) ([]ControlPlaneOffboxBackup, error)
ListControlPlaneOffboxBackups calls GET /api/v1/system/control-plane-dr/backups.
func (*Client) ListCostBudgets ¶
func (c *Client) ListCostBudgets(ctx context.Context) (CostBudgets, error)
ListCostBudgets calls GET /api/v1/costs/budgets.
func (*Client) ListCustomTemplates ¶ added in v0.2.0
func (c *Client) ListCustomTemplates(ctx context.Context) ([]CustomTemplateListItem, error)
ListCustomTemplates calls GET /api/v1/templates/custom: every operator-defined template, without each one's compose body (see GetServiceTemplate for the full body).
func (*Client) ListDNSHealthChecks ¶ added in v0.2.0
func (c *Client) ListDNSHealthChecks(ctx context.Context) ([]DNSHealthCheck, error)
ListDNSHealthChecks calls GET /api/v1/dns/health-checks.
func (*Client) ListDNSRecords ¶ added in v0.2.0
func (c *Client) ListDNSRecords(ctx context.Context, name, domain string) (DNSRecordsResponse, error)
ListDNSRecords calls GET /api/v1/apps/{name}/domains/{domain}/dns-records: every record in domain's best-effort zone, from whichever ACME DNS-01 provider is configured, each with a live resolution status.
func (*Client) ListDNSZoneRecords ¶ added in v0.2.0
func (c *Client) ListDNSZoneRecords(ctx context.Context, provider, zone, typ, query string) (DNSRecordsList, error)
ListDNSZoneRecords calls GET /api/v1/dns/zones/{zone}/records.
func (*Client) ListDNSZones ¶ added in v0.2.0
ListDNSZones calls GET /api/v1/dns/zones.
func (*Client) ListDashboards ¶
ListDashboards calls GET /api/v1/dashboards, optionally narrowed to a project.
func (*Client) ListDatabaseDataCopies ¶ added in v0.2.0
func (c *Client) ListDatabaseDataCopies(ctx context.Context) ([]DataCopyStatus, error)
ListDatabaseDataCopies calls GET /api/v1/imports/platform/databases.
func (*Client) ListDatabaseEngines ¶
func (c *Client) ListDatabaseEngines(ctx context.Context) ([]DatabaseEngineResource, error)
ListDatabaseEngines calls GET /api/v1/database-engines: every engine this control plane can actually create, backing the creation wizard's engine picker instead of a hardcoded list.
func (*Client) ListDatabaseLinks ¶
ListDatabaseLinks calls GET /api/v1/databases/{name}/links.
func (*Client) ListDatabaseTemp ¶ added in v0.2.0
ListDatabaseTemp calls GET /api/v1/databases/{name}/access/temp.
func (*Client) ListDatabaseUsers ¶ added in v0.2.0
ListDatabaseUsers calls GET /api/v1/databases/{name}/users.
func (*Client) ListDatabases ¶
func (c *Client) ListDatabases(ctx context.Context) ([]DatabaseResource, error)
ListDatabases calls GET /api/v1/databases.
func (*Client) ListDatabasesInEnvironment ¶ added in v0.2.0
func (c *Client) ListDatabasesInEnvironment(ctx context.Context, environment string) ([]DatabaseResource, error)
ListDatabasesInEnvironment calls GET /api/v1/databases?environment=<id or name>.
func (*Client) ListDefaultAlerts ¶
func (c *Client) ListDefaultAlerts(ctx context.Context) ([]DefaultAlert, error)
ListDefaultAlerts calls GET /api/v1/alert-defaults.
func (*Client) ListDeployApprovals ¶ added in v0.2.0
func (c *Client) ListDeployApprovals(ctx context.Context, status, service string) ([]DeployApprovalResource, error)
ListDeployApprovals calls GET /api/v1/deploy-approvals: status defaults server-side to "pending" when empty; pass "all" to include decided requests too. service filters to one app, empty means every app.
func (*Client) ListDeployAttempts ¶ added in v0.2.0
func (c *Client) ListDeployAttempts(ctx context.Context, name string) ([]DeployAttemptResource, error)
ListDeployAttempts calls GET /api/v1/apps/{name}/deploy-attempts: the real, row-per-trigger-call deploy history for name, newest first. Additive to GetDeployStatus's reconcile conditions, not a replacement.
func (*Client) ListDeployAttemptsFiltered ¶
func (c *Client) ListDeployAttemptsFiltered(ctx context.Context, name string, f DeployAttemptFilter) ([]DeployAttemptResource, error)
ListDeployAttemptsFiltered is ListDeployAttempts narrowed server side.
func (*Client) ListDeployNotifyTargets ¶ added in v0.2.0
func (c *Client) ListDeployNotifyTargets(ctx context.Context, name string) ([]DeployNotifyTargetResource, error)
ListDeployNotifyTargets calls GET /api/v1/apps/{name}/deploy-notify-targets: every deploy-outcome notification target scoped to name, including disabled ones.
func (*Client) ListDeployPolicies ¶
func (c *Client) ListDeployPolicies(ctx context.Context) ([]DeployPolicy, error)
ListDeployPolicies calls GET /api/v1/deploy-policies.
func (*Client) ListDeployments ¶ added in v0.2.0
func (c *Client) ListDeployments(ctx context.Context, opts DeploymentListOptions) (DeploymentList, error)
ListDeployments calls GET /api/v1/deployments.
func (*Client) ListDeviceActivity ¶ added in v0.2.0
func (c *Client) ListDeviceActivity(ctx context.Context) ([]DeviceActivity, error)
ListDeviceActivity calls GET /api/v1/auth/device/activity.
func (*Client) ListDomains ¶
func (c *Client) ListDomains(ctx context.Context) ([]DomainResource, error)
ListDomains calls GET /api/v1/domains: every service_domains row across every app, aggregated in one call.
func (*Client) ListEmailDeliveries ¶
func (c *Client) ListEmailDeliveries(ctx context.Context, q EmailDeliveryQuery) (EmailDeliveryList, error)
ListEmailDeliveries calls GET /api/v1/settings/email/deliveries.
func (*Client) ListEmailProviders ¶
func (c *Client) ListEmailProviders(ctx context.Context) (EmailProviderList, error)
ListEmailProviders calls GET /api/v1/settings/email/providers: the primary first, then the backup if any.
func (*Client) ListEnvHistory ¶
func (c *Client) ListEnvHistory(ctx context.Context, name string, limit int) ([]EnvChangeResource, error)
ListEnvHistory calls GET /api/v1/apps/{name}/env/history.
func (*Client) ListEnvironments ¶
func (c *Client) ListEnvironments(ctx context.Context, projectID string) ([]EnvironmentResource, error)
ListEnvironments calls GET /api/v1/projects/{id}/environments.
func (*Client) ListErrors ¶
func (c *Client) ListErrors(ctx context.Context, app string, o ErrorListOptions) ([]ErrorIssue, error)
ListErrors calls GET /api/v1/apps/{name}/errors.
func (*Client) ListEventWebhookDeliveries ¶
func (c *Client) ListEventWebhookDeliveries(ctx context.Context, id string) ([]EventDeliveryResource, error)
ListEventWebhookDeliveries calls GET /api/v1/event-webhooks/{id}/deliveries.
func (*Client) ListEventWebhooks ¶
func (c *Client) ListEventWebhooks(ctx context.Context) ([]EventWebhookResource, error)
ListEventWebhooks calls GET /api/v1/event-webhooks.
func (*Client) ListEvidencePacks ¶
func (c *Client) ListEvidencePacks(ctx context.Context) ([]EvidencePackResource, error)
ListEvidencePacks calls GET /api/v1/compliance/evidence-packs.
func (*Client) ListExportDestinations ¶ added in v0.2.0
func (c *Client) ListExportDestinations(ctx context.Context) ([]ExportDestinationResource, error)
ListExportDestinations calls GET /api/v1/export/destinations.
func (*Client) ListExternalDatabaseCandidates ¶ added in v0.2.0
func (c *Client) ListExternalDatabaseCandidates(ctx context.Context, nodeID string) ([]ExternalDatabaseCandidate, error)
ListExternalDatabaseCandidates calls GET /api/v1/external-databases/candidates.
func (*Client) ListExternalDatabases ¶ added in v0.2.0
func (c *Client) ListExternalDatabases(ctx context.Context) ([]ExternalDatabase, error)
ListExternalDatabases calls GET /api/v1/external-databases.
func (*Client) ListFailedDeploys ¶ added in v0.2.0
func (c *Client) ListFailedDeploys(ctx context.Context, since string) ([]FailedDeployResource, error)
ListFailedDeploys calls GET /api/v1/deploys/failed. since is a Go duration such as "24h"; empty uses the server default.
func (*Client) ListFeatureFlags ¶
ListFeatureFlags calls GET /api/v1/apps/{name}/flags.
func (*Client) ListFirewallEdgeBans ¶
func (c *Client) ListFirewallEdgeBans(ctx context.Context) ([]FirewallEdgeBan, error)
ListFirewallEdgeBans calls GET .../firewall/edge/bans.
func (*Client) ListFirewallEdgeRules ¶
func (c *Client) ListFirewallEdgeRules(ctx context.Context) ([]FirewallEdgeRule, error)
ListFirewallEdgeRules calls GET .../firewall/edge/rules.
func (*Client) ListFirewallRules ¶ added in v0.2.0
func (c *Client) ListFirewallRules(ctx context.Context) ([]FirewallRuleResource, error)
ListFirewallRules calls GET /api/v1/firewall-rules.
func (*Client) ListFleetMaintenance ¶
func (c *Client) ListFleetMaintenance(ctx context.Context) (FleetMaintenanceResource, error)
ListFleetMaintenance calls GET /api/v1/maintenance/domains.
func (*Client) ListFormSubmissions ¶
func (c *Client) ListFormSubmissions(ctx context.Context, app, form string, f FormSubmissionFilter) (FormSubmissionsPage, error)
ListFormSubmissions returns one page of a form's inbox.
func (*Client) ListFrameworks ¶
ListFrameworks calls GET /api/v1/frameworks.
func (*Client) ListFunctionInvocations ¶
func (c *Client) ListFunctionInvocations(ctx context.Context, name string, limit int) (FunctionInvocations, error)
ListFunctionInvocations returns the function's recent calls, newest first; limit 0 uses the server default.
func (*Client) ListFunctionKV ¶
func (c *Client) ListFunctionKV(ctx context.Context, name, prefix string, limit int) (FunctionKVList, error)
ListFunctionKV calls GET /api/v1/functions/{name}/kv.
func (*Client) ListFunctionRoutes ¶
ListFunctionRoutes calls GET /api/v1/functions/{name}/route.
func (*Client) ListFunctionRuntimes ¶
func (c *Client) ListFunctionRuntimes(ctx context.Context) (FunctionRuntimes, error)
ListFunctionRuntimes calls GET /api/v1/functions/runtimes.
func (*Client) ListFunctionVersions ¶
ListFunctionVersions calls GET /api/v1/functions/{name}/versions, newest first.
func (*Client) ListFunctions ¶
ListFunctions returns every function with call count and p95 duration over window (1h, 24h or 7d; empty means 24h).
func (*Client) ListGPUNodes ¶ added in v0.2.0
func (c *Client) ListGPUNodes(ctx context.Context) ([]GPUNodeResource, error)
ListGPUNodes calls GET /api/v1/gpus.
func (*Client) ListGitConnectionBranches ¶
func (c *Client) ListGitConnectionBranches(ctx context.Context, id, repo string) ([]GitAppBranchResource, error)
ListGitConnectionBranches calls GET /api/v1/git-connections/{id}/branches?repo=.
func (*Client) ListGitConnections ¶
func (c *Client) ListGitConnections(ctx context.Context, provider string) ([]GitProviderConnectionResource, error)
ListGitConnections calls GET /api/v1/git-connections; provider may be empty.
func (*Client) ListGitHubAppBranches ¶ added in v0.2.0
func (c *Client) ListGitHubAppBranches(ctx context.Context, owner, repo string) ([]GitAppBranchResource, error)
ListGitHubAppBranches calls GET /api/v1/github-app/repos/{owner}/{repo}/branches.
func (*Client) ListGitHubAppInstallations ¶ added in v0.2.0
func (c *Client) ListGitHubAppInstallations(ctx context.Context) (GitHubAppInstallationListResource, error)
ListGitHubAppInstallations calls GET /api/v1/github-app/installations: every connected GitHub account/org, plus the URL to connect another one.
func (*Client) ListGitHubAppRepos ¶ added in v0.2.0
func (c *Client) ListGitHubAppRepos(ctx context.Context) (GitHubAppRepoListResource, error)
ListGitHubAppRepos calls GET /api/v1/github-app/repos: every repository every connected installation can access, plus one error per installation that failed to list (migrations/0282 made installations one-to-many).
func (*Client) ListGitProviders ¶ added in v0.2.0
func (c *Client) ListGitProviders(ctx context.Context) ([]GitProviderResource, error)
ListGitProviders calls GET /api/v1/git-providers: a capability summary (connected, can list branches, can register a webhook, can auth-clone) for every git provider this control plane knows about, in one call rather than three separate per-provider status checks.
func (*Client) ListGitRepos ¶
func (c *Client) ListGitRepos(ctx context.Context, p GitRepoListParams) (GitRepoListResource, error)
ListGitRepos calls GET /api/v1/git/repos: one provider's repositories, searched, filtered and paged on the server from its cached list.
func (*Client) ListImages ¶
func (c *Client) ListImages(ctx context.Context, node string, keepPerApp int) (ImageListResource, error)
ListImages calls GET /api/v1/images. keepPerApp < 0 keeps the server default.
func (*Client) ListIntegrationCatalog ¶ added in v0.2.0
func (c *Client) ListIntegrationCatalog(ctx context.Context) ([]IntegrationCatalogEntryResource, error)
ListIntegrationCatalog calls GET /api/v1/integrations: the full internal/integrations.Catalog, global and read-only.
func (*Client) ListInvites ¶
func (c *Client) ListInvites(ctx context.Context) ([]InviteResource, error)
ListInvites calls GET /api/v1/invites.
func (*Client) ListIssueSilences ¶
func (c *Client) ListIssueSilences(ctx context.Context) ([]IssueSilenceResource, error)
ListIssueSilences calls GET /api/v1/silences.
func (*Client) ListJanitorRuns ¶
ListJanitorRuns calls GET /api/v1/system/janitor/runs.
func (*Client) ListJobRuns ¶ added in v0.2.0
func (c *Client) ListJobRuns(ctx context.Context, app, id, status string, limit int) ([]JobRunResource, error)
ListJobRuns calls GET .../jobs/{id}/runs, or the app-wide GET .../job-runs when id is empty. status and limit are optional filters.
func (*Client) ListLoadBalancers ¶ added in v0.2.0
func (c *Client) ListLoadBalancers(ctx context.Context, p LoadBalancerListParams) (LoadBalancerList, error)
ListLoadBalancers calls GET /api/v1/loadbalancers.
func (*Client) ListLogArchiveObjects ¶ added in v0.2.0
func (c *Client) ListLogArchiveObjects(ctx context.Context, targetID, app, cursor string) (LogArchiveObjects, error)
ListLogArchiveObjects calls GET /api/v1/log-archive/objects.
func (*Client) ListLogArchivePolicies ¶ added in v0.2.0
func (c *Client) ListLogArchivePolicies(ctx context.Context) ([]LogArchivePolicy, error)
ListLogArchivePolicies calls GET /api/v1/log-archive/policies.
func (*Client) ListLogArchiveRuns ¶ added in v0.2.0
func (c *Client) ListLogArchiveRuns(ctx context.Context, app string, all bool) ([]LogArchiveRun, error)
ListLogArchiveRuns calls GET /api/v1/log-archive/runs. all ignores app.
func (*Client) ListMailGroups ¶
ListMailGroups calls GET /api/v1/mail/groups.
func (*Client) ListMailTemplates ¶
func (c *Client) ListMailTemplates(ctx context.Context) ([]MailTemplate, error)
ListMailTemplates calls GET /api/v1/mail/templates.
func (*Client) ListMailTokens ¶
ListMailTokens calls GET /api/v1/mail/tokens.
func (*Client) ListMaintenanceWindows ¶ added in v0.2.0
func (c *Client) ListMaintenanceWindows(ctx context.Context) ([]MaintenanceWindowResource, error)
ListMaintenanceWindows calls GET /api/v1/alert-maintenance-windows.
func (*Client) ListMajorUpgrades ¶ added in v0.2.0
func (c *Client) ListMajorUpgrades(ctx context.Context, name string) ([]MajorUpgradeResource, error)
ListMajorUpgrades calls GET /api/v1/databases/{name}/major-upgrades.
func (*Client) ListMarketplaceSources ¶
func (c *Client) ListMarketplaceSources(ctx context.Context) ([]MarketplaceSource, error)
ListMarketplaceSources calls GET /api/v1/plugin-marketplace/sources.
func (*Client) ListMigrationAgentSessions ¶
func (c *Client) ListMigrationAgentSessions(ctx context.Context) ([]MigrationAgentSession, error)
ListMigrationAgentSessions calls GET /api/v1/migration/agent/sessions.
func (*Client) ListMigrationChecklists ¶
func (c *Client) ListMigrationChecklists(ctx context.Context) ([]MigrationChecklist, error)
ListMigrationChecklists calls GET /api/v1/migration/checklists.
func (*Client) ListMigrationLocalSources ¶ added in v0.2.0
func (c *Client) ListMigrationLocalSources(ctx context.Context, nodeID string) ([]HubLocalSource, error)
ListMigrationLocalSources lists database containers on a node.
func (*Client) ListMigrationSessions ¶ added in v0.2.0
func (c *Client) ListMigrationSessions(ctx context.Context) ([]HubSession, error)
ListMigrationSessions lists sessions without their items.
func (*Client) ListMobileDevices ¶ added in v0.2.0
func (c *Client) ListMobileDevices(ctx context.Context) ([]MobileDevice, error)
ListMobileDevices calls GET /api/v1/mobile/devices.
func (*Client) ListModelCache ¶ added in v0.2.0
func (c *Client) ListModelCache(ctx context.Context) (ModelCacheReport, error)
ListModelCache calls GET /api/v1/model-cache.
func (*Client) ListModelKeys ¶ added in v0.2.0
ListModelKeys calls GET /api/v1/models/{name}/keys.
func (*Client) ListModels ¶ added in v0.2.0
func (c *Client) ListModels(ctx context.Context) ([]ModelResource, error)
ListModels calls GET /api/v1/models.
func (*Client) ListNetworkShares ¶ added in v0.2.0
func (c *Client) ListNetworkShares(ctx context.Context) ([]NetworkShareResource, error)
ListNetworkShares calls GET /api/v1/network-shares.
func (*Client) ListNodeCleanupRuns ¶
func (c *Client) ListNodeCleanupRuns(ctx context.Context, id string) ([]NodeCleanupRunResource, error)
ListNodeCleanupRuns calls GET /api/v1/nodes/{id}/cleanup-runs.
func (*Client) ListNodeDrains ¶ added in v0.2.0
ListNodeDrains calls GET /api/v1/nodes/{id}/drains.
func (*Client) ListNodeEvents ¶ added in v0.2.0
func (c *Client) ListNodeEvents(ctx context.Context, id string, limit int) ([]NodeStatusEventResource, error)
ListNodeEvents calls GET /api/v1/nodes/{id}/events: the node's recent status transitions, newest first. limit <= 0 uses the server default.
func (*Client) ListNodeMoves ¶ added in v0.2.0
func (c *Client) ListNodeMoves(ctx context.Context, kind, resource, status string) ([]NodeMoveResource, error)
ListNodeMoves calls GET /api/v1/node-moves with optional filters.
func (*Client) ListNodeProviderRegions ¶ added in v0.2.0
func (c *Client) ListNodeProviderRegions(ctx context.Context, provider string) ([]NodeProviderRegionResource, error)
ListNodeProviderRegions calls GET /api/v1/node-providers/{provider}/regions.
func (*Client) ListNodeProviderSizes ¶ added in v0.2.0
func (c *Client) ListNodeProviderSizes(ctx context.Context, provider, region string) ([]NodeProviderSizeResource, error)
ListNodeProviderSizes calls GET /api/v1/node-providers/{provider}/sizes?region=X. region may be empty to list every size regardless of region.
func (*Client) ListNodeProviders ¶ added in v0.2.0
func (c *Client) ListNodeProviders(ctx context.Context) ([]NodeProviderResource, error)
ListNodeProviders calls GET /api/v1/node-providers.
func (*Client) ListNodeProvisions ¶ added in v0.2.0
func (c *Client) ListNodeProvisions(ctx context.Context) ([]NodeProvisionResource, error)
ListNodeProvisions calls GET /api/v1/node-provisions.
func (*Client) ListNodeSecurityEvents ¶
func (c *Client) ListNodeSecurityEvents(ctx context.Context, id, outcome string, limit int) ([]NodeSecurityEvent, error)
ListNodeSecurityEvents calls GET /api/v1/nodes/{id}/security/events. outcome and limit are optional.
func (*Client) ListNodes ¶
func (c *Client) ListNodes(ctx context.Context) ([]NodeResource, error)
ListNodes calls GET /api/v1/nodes.
func (*Client) ListNodesFiltered ¶ added in v0.2.0
func (c *Client) ListNodesFiltered(ctx context.Context, opts ListNodesOptions) ([]NodeResource, int, error)
ListNodesFiltered calls GET /api/v1/nodes with optional query, limit and offset, returning nodes plus the total match count before paging (the X-Total-Count header handleListNodes always sets). ListNodes stays the plain unfiltered call every existing caller already uses.
func (*Client) ListNotificationChannels ¶
func (c *Client) ListNotificationChannels(ctx context.Context) ([]NotificationChannelResource, error)
ListNotificationChannels calls GET /api/v1/notification-channels.
func (*Client) ListNotificationDeliveries ¶
func (c *Client) ListNotificationDeliveries(ctx context.Context, id string, limit int) ([]NotificationDeliveryResource, error)
ListNotificationDeliveries calls GET /api/v1/notification-channels/{id}/deliveries: this channel's send history, newest first, up to limit rows (0 leaves the server's own default in place).
func (*Client) ListOAuthProviderSettings ¶ added in v0.2.0
func (c *Client) ListOAuthProviderSettings(ctx context.Context) ([]OAuthProviderSettingsResource, error)
ListOAuthProviderSettings calls GET /api/v1/settings/oauth: every provider's full sign-in configuration.
func (*Client) ListOAuthSSOPolicies ¶
func (c *Client) ListOAuthSSOPolicies(ctx context.Context) ([]OAuthSSOPolicy, error)
ListOAuthSSOPolicies calls GET /api/v1/sso/oidc.
func (*Client) ListOrganizations ¶
func (c *Client) ListOrganizations(ctx context.Context) ([]OrganizationResource, error)
ListOrganizations calls GET /api/v1/organizations.
func (*Client) ListOrphanedVolumes ¶ added in v0.2.0
func (c *Client) ListOrphanedVolumes(ctx context.Context) ([]OrphanedVolumeResource, error)
ListOrphanedVolumes calls GET /api/v1/system/volumes/orphaned: every named Docker volume this instance created that current desired state no longer references.
func (*Client) ListOrphans ¶ added in v0.2.0
func (c *Client) ListOrphans(ctx context.Context) (OrphanReport, error)
ListOrphans calls GET /api/v1/system/orphans: every leftover container and volume across nodes with its grace period status. Removes nothing.
func (*Client) ListPITRRestores ¶ added in v0.2.0
func (c *Client) ListPITRRestores(ctx context.Context, name string) ([]PITRRestoreHistoryResource, error)
ListPITRRestores calls GET /api/v1/databases/{name}/pitr-restores.
func (*Client) ListPRPreviewEnv ¶
func (c *Client) ListPRPreviewEnv(ctx context.Context, name string, pr int) ([]PRPreviewEnvOverride, error)
ListPRPreviewEnv calls GET /api/v1/apps/{name}/previews/{pr}/env.
func (*Client) ListPackageRegistries ¶
func (c *Client) ListPackageRegistries(ctx context.Context) ([]PackageRegistryResource, error)
ListPackageRegistries calls GET /api/v1/package-registries.
func (*Client) ListPendingDeviceLogins ¶ added in v0.2.0
func (c *Client) ListPendingDeviceLogins(ctx context.Context) ([]DevicePendingLogin, error)
ListPendingDeviceLogins calls GET /api/v1/auth/device/pending-summary.
func (*Client) ListPendingJoinTokens ¶
func (c *Client) ListPendingJoinTokens(ctx context.Context) ([]PendingJoinToken, error)
ListPendingJoinTokens calls GET /api/v1/nodes/join-tokens.
func (*Client) ListPipelineRunArtifacts ¶
func (c *Client) ListPipelineRunArtifacts(ctx context.Context, app, runID string) ([]PipelineArtifact, error)
ListPipelineRunArtifacts calls GET .../pipeline-runs/{id}/artifacts.
func (*Client) ListPipelineRunFixes ¶
func (c *Client) ListPipelineRunFixes(ctx context.Context, app, runID string) ([]PipelineFix, error)
ListPipelineRunFixes calls GET .../pipeline-runs/{id}/fixes.
func (*Client) ListPipelineRunLogs ¶ added in v0.2.0
func (c *Client) ListPipelineRunLogs(ctx context.Context, app, id, job string, after int64, limit int) ([]PipelineLogLine, error)
ListPipelineRunLogs calls GET .../pipeline-runs/{id}/logs. job filters to one job key and after resumes past a line ID.
func (*Client) ListPipelineRuns ¶ added in v0.2.0
func (c *Client) ListPipelineRuns(ctx context.Context, app, pipeline string, limit int) ([]PipelineRunResource, error)
ListPipelineRuns calls GET /api/v1/apps/{app}/pipeline-runs.
func (*Client) ListPipelineTriggers ¶ added in v0.2.0
ListPipelineTriggers calls GET /api/v1/apps/{app}/pipeline-triggers.
func (*Client) ListPipelineWebhookDeliveries ¶
func (c *Client) ListPipelineWebhookDeliveries(ctx context.Context, app, name string) ([]PipelineWebhookDelivery, error)
ListPipelineWebhookDeliveries calls GET .../webhook/deliveries.
func (*Client) ListPipelines ¶ added in v0.2.0
ListPipelines calls GET /api/v1/apps/{app}/pipelines.
func (*Client) ListPluginKeys ¶
ListPluginKeys calls GET /api/v1/plugin-keys.
func (*Client) ListPlugins ¶
ListPlugins calls GET /api/v1/plugins.
func (*Client) ListPolicies ¶
func (c *Client) ListPolicies(ctx context.Context) ([]PolicyResource, error)
ListPolicies calls GET /api/v1/iam/policies.
func (*Client) ListPolicyAttachments ¶
func (c *Client) ListPolicyAttachments(ctx context.Context, id string) ([]PolicyAttachmentResource, error)
ListPolicyAttachments calls GET /api/v1/iam/policies/{id}/attachments.
func (*Client) ListPolicyTemplates ¶ added in v0.2.0
func (c *Client) ListPolicyTemplates(ctx context.Context) (PolicyTemplateList, error)
ListPolicyTemplates calls GET /api/v1/iam/policy-templates.
func (*Client) ListPreviewEnvironments ¶
func (c *Client) ListPreviewEnvironments(ctx context.Context, appName string) ([]PreviewEnvironmentResource, error)
ListPreviewEnvironments calls GET /api/v1/apps/{name}/previews: every active pull-request preview for an app.
func (*Client) ListPrivateNetworks ¶
func (c *Client) ListPrivateNetworks(ctx context.Context) (PrivateNetworkList, error)
ListPrivateNetworks calls GET /api/v1/private-networks.
func (*Client) ListProbeAttempts ¶ added in v0.2.0
func (c *Client) ListProbeAttempts(ctx context.Context, name, deployID string) ([]ProbeAttempt, error)
ListProbeAttempts calls GET /api/v1/apps/{name}/deploys/{deployID}/probes.
func (*Client) ListProjects ¶
func (c *Client) ListProjects(ctx context.Context) ([]ProjectResource, error)
ListProjects calls GET /api/v1/projects.
func (*Client) ListPushSubscriptions ¶ added in v0.2.0
func (c *Client) ListPushSubscriptions(ctx context.Context) ([]PushSubscriptionResource, error)
ListPushSubscriptions calls GET /api/v1/settings/push-subscriptions: every browser the caller's own account has registered for the "webpush" notification-channel kind.
func (*Client) ListQueuedFunctionCalls ¶
func (c *Client) ListQueuedFunctionCalls(ctx context.Context, function, status string, limit int) ([]QueuedFunctionCall, error)
ListQueuedFunctionCalls lists calls; empty function or status match any.
func (*Client) ListRegistryCredentialRepositories ¶ added in v0.2.0
func (c *Client) ListRegistryCredentialRepositories(ctx context.Context, id string) (RegistryRepositoriesResource, error)
ListRegistryCredentialRepositories calls GET /api/v1/registry-credentials/{id}/repositories: every repository in the external registry this credential authenticates against, the same wire shape ListRegistryRepositories uses for the built-in registry.
func (*Client) ListRegistryCredentialTags ¶ added in v0.2.0
func (c *Client) ListRegistryCredentialTags(ctx context.Context, id, repository string) (RegistryTagsResource, error)
ListRegistryCredentialTags calls GET /api/v1/registry-credentials/{id}/tags?repository=<name>: every tag pushed for one repository in the external registry this credential authenticates against.
func (*Client) ListRegistryCredentials ¶
func (c *Client) ListRegistryCredentials(ctx context.Context) ([]RegistryCredentialResource, error)
ListRegistryCredentials calls GET /api/v1/registry-credentials.
func (*Client) ListRegistryRepositories ¶ added in v0.2.0
func (c *Client) ListRegistryRepositories(ctx context.Context) (RegistryRepositoriesResource, error)
ListRegistryRepositories calls GET /api/v1/registry/repositories: every repository name pushed to the built-in registry.
func (*Client) ListRegistryTags ¶ added in v0.2.0
func (c *Client) ListRegistryTags(ctx context.Context, repository string) (RegistryTagsResource, error)
ListRegistryTags calls GET /api/v1/registry/tags?repository=<name>: every tag pushed for one repository in the built-in registry.
func (*Client) ListRepoBranches ¶ added in v0.2.0
func (c *Client) ListRepoBranches(ctx context.Context, repoURL string) (RepoBranchesResource, error)
ListRepoBranches calls the repo branch listing route (POST under /api/v1/git).
func (*Client) ListRestorePoints ¶
func (c *Client) ListRestorePoints(ctx context.Context) (RestorePoints, error)
ListRestorePoints calls GET /api/v1/updates/restore-points.
func (*Client) ListRestores ¶ added in v0.2.0
ListRestores calls GET /api/v1/databases/{name}/restores.
func (*Client) ListRoles ¶
func (c *Client) ListRoles(ctx context.Context) ([]RoleResource, error)
ListRoles calls GET /api/v1/roles.
func (*Client) ListRollbackTargets ¶ added in v0.2.0
func (c *Client) ListRollbackTargets(ctx context.Context, appName string) ([]RollbackTargetResource, error)
ListRollbackTargets calls GET /api/v1/apps/{name}/rollback-targets.
func (*Client) ListSAMLConnections ¶
func (c *Client) ListSAMLConnections(ctx context.Context) ([]SAMLConnection, error)
ListSAMLConnections calls GET /api/v1/sso/saml/connections.
func (*Client) ListSCIMTokens ¶
ListSCIMTokens calls GET /api/v1/sso/scim/tokens.
func (*Client) ListSSHNodeProvisions ¶ added in v0.2.0
func (c *Client) ListSSHNodeProvisions(ctx context.Context) ([]SSHNodeProvisionResource, error)
ListSSHNodeProvisions calls GET /api/v1/ssh-node-provisions.
func (*Client) ListSSOGroupMappings ¶
func (c *Client) ListSSOGroupMappings(ctx context.Context) (SSOGroupMappings, error)
ListSSOGroupMappings calls GET /api/v1/sso/group-mappings.
func (*Client) ListSavedLogQueries ¶ added in v0.2.0
ListSavedLogQueries calls GET /api/v1/logs/queries.
func (*Client) ListSavedSearches ¶
func (c *Client) ListSavedSearches(ctx context.Context) ([]SavedSearch, error)
ListSavedSearches calls GET /api/v1/search/saved.
func (*Client) ListScheduledMaintenance ¶
func (c *Client) ListScheduledMaintenance(ctx context.Context) ([]ScheduledMaintenanceResource, error)
ListScheduledMaintenance calls GET /api/v1/scheduled-maintenance.
func (*Client) ListScheduledTasks ¶
func (c *Client) ListScheduledTasks(ctx context.Context, name string) ([]ScheduledTaskResource, error)
ListScheduledTasks calls GET /api/v1/apps/{name}/scheduled-tasks.
func (*Client) ListSecretRotation ¶
func (c *Client) ListSecretRotation(ctx context.Context, name string) ([]SecretRotationPolicyResource, error)
ListSecretRotation calls GET /api/v1/apps/{name}/secret-rotation.
func (*Client) ListSecrets ¶
ListSecrets calls GET /api/v1/apps/{name}/secrets: every known secret key for the app with its locked state, never a value.
func (*Client) ListSecuritySessions ¶ added in v0.2.0
ListSecuritySessions calls GET /api/v1/security/sessions; userID is empty for the caller's own account, another account needs root.
func (*Client) ListSelfUpgradeAttempts ¶ added in v0.2.0
func (c *Client) ListSelfUpgradeAttempts(ctx context.Context) (SelfUpgradeAttempts, error)
ListSelfUpgradeAttempts calls GET /api/v1/updates/self-upgrade/attempts.
func (*Client) ListServiceTemplates ¶
func (c *Client) ListServiceTemplates(ctx context.Context) ([]ServiceTemplateListItem, error)
ListServiceTemplates calls GET /api/v1/service-templates: the full catalog, without each entry's Compose body (see ServiceTemplateListItem).
func (*Client) ListSessionPolicies ¶
func (c *Client) ListSessionPolicies(ctx context.Context) ([]SessionPolicy, error)
ListSessionPolicies calls GET /api/v1/security/session-policies.
func (*Client) ListSharedEnvAll ¶ added in v0.2.0
func (c *Client) ListSharedEnvAll(ctx context.Context, scope, id string) ([]SharedEnvVarResource, error)
ListSharedEnvAll calls GET /api/v1/{scope}s/{id}/env/all: every shared env var at that tier, plain and secret-marked alike.
func (*Client) ListSharedEnvSecretKeys ¶ added in v0.2.0
ListSharedEnvSecretKeys calls GET /api/v1/{scope}s/{id}/env/secrets: every secret-marked shared env var key at that tier, never a value.
func (*Client) ListSignInRequests ¶ added in v0.2.0
func (c *Client) ListSignInRequests(ctx context.Context) (SignInRequests, error)
ListSignInRequests calls GET /api/v1/auth/sign-in-requests. A token must belong to a user and hold write:sensitive or signin:approve.
func (*Client) ListSleepFleet ¶
func (c *Client) ListSleepFleet(ctx context.Context) (SleepFleet, error)
ListSleepFleet calls GET /api/v1/sleep.
func (*Client) ListSourceUploads ¶
ListSourceUploads calls GET /api/v1/apps/{name}/uploads.
func (*Client) ListStandaloneDomains ¶ added in v0.2.0
func (c *Client) ListStandaloneDomains(ctx context.Context) ([]StandaloneDomain, error)
ListStandaloneDomains calls GET /api/v1/domains/standalone.
func (*Client) ListStaticSites ¶ added in v0.2.0
func (c *Client) ListStaticSites(ctx context.Context) ([]StaticSiteResource, error)
ListStaticSites calls GET /api/v1/static-sites: every build.type: static site currently served directly through embedded Caddy.
func (*Client) ListStatusComponents ¶ added in v0.2.0
func (c *Client) ListStatusComponents(ctx context.Context) ([]StatusComponent, error)
ListStatusComponents calls GET /api/v1/status-page/components.
func (*Client) ListStatusIncidents ¶ added in v0.2.0
func (c *Client) ListStatusIncidents(ctx context.Context) ([]StatusIncident, error)
ListStatusIncidents calls GET /api/v1/status-page/incidents.
func (*Client) ListStorageBuckets ¶
ListStorageBuckets calls GET /api/v1/storage/buckets, filtered to one app when app is set.
func (*Client) ListStorageDefaults ¶
func (c *Client) ListStorageDefaults(ctx context.Context) (StorageDefaults, error)
ListStorageDefaults calls GET /api/v1/storage/defaults.
func (*Client) ListStorageDestinations ¶ added in v0.2.0
func (c *Client) ListStorageDestinations(ctx context.Context) ([]StorageDestination, error)
ListStorageDestinations calls GET /api/v1/storage/destinations.
func (*Client) ListStorageOrphans ¶ added in v0.2.0
func (c *Client) ListStorageOrphans(ctx context.Context) (StorageOrphansResponse, error)
ListStorageOrphans calls GET /api/v1/storage/orphans.
func (*Client) ListStorageProviders ¶ added in v0.2.0
func (c *Client) ListStorageProviders(ctx context.Context) ([]StorageProvider, error)
ListStorageProviders calls GET /api/v1/storage/providers.
func (*Client) ListTags ¶ added in v0.2.0
func (c *Client) ListTags(ctx context.Context) ([]TagResource, error)
ListTags calls GET /api/v1/tags.
func (*Client) ListTeamEvents ¶ added in v0.2.0
func (c *Client) ListTeamEvents(ctx context.Context, id string, limit int) ([]TeamEventResource, error)
ListTeamEvents calls GET /api/v1/teams/{id}/events.
func (*Client) ListTeamInvites ¶ added in v0.2.0
ListTeamInvites calls GET /api/v1/teams/{id}/invites.
func (*Client) ListTeamMembers ¶ added in v0.2.0
ListTeamMembers calls GET /api/v1/teams/{id}/members.
func (*Client) ListTeamRoles ¶ added in v0.2.0
func (c *Client) ListTeamRoles(ctx context.Context) ([]TeamRoleResource, error)
ListTeamRoles calls GET /api/v1/teams/roles.
func (*Client) ListTeams ¶ added in v0.2.0
func (c *Client) ListTeams(ctx context.Context) ([]TeamResource, error)
ListTeams calls GET /api/v1/teams.
func (*Client) ListTokensRaw ¶ added in v0.2.0
ListTokensRaw calls GET /api/v1/auth/tokens with the client's bearer token (root ability), returning the JSON array undecoded.
func (*Client) ListTraces ¶
func (c *Client) ListTraces(ctx context.Context, app string, o TraceListOptions) ([]TraceSummary, error)
ListTraces calls GET /api/v1/apps/{name}/traces.
func (*Client) ListTrafficExportSinks ¶
func (c *Client) ListTrafficExportSinks(ctx context.Context) (TrafficExportSinkList, error)
ListTrafficExportSinks calls GET /api/v1/settings/traffic-export/sinks.
func (*Client) ListTrustedDevices ¶ added in v0.2.0
func (c *Client) ListTrustedDevices(ctx context.Context) ([]TrustedDevice, error)
ListTrustedDevices calls GET /api/v1/auth/trusted-devices.
func (*Client) ListUsageBudgets ¶ added in v0.2.0
func (c *Client) ListUsageBudgets(ctx context.Context) (UsageBudgets, error)
ListUsageBudgets calls GET /api/v1/usage/budgets.
func (*Client) ListUsers ¶
func (c *Client) ListUsers(ctx context.Context) ([]UserResource, error)
ListUsers calls GET /api/v1/users.
func (*Client) ListVolumeBackupVerifications ¶
func (c *Client) ListVolumeBackupVerifications(ctx context.Context, name, volume, historyID string) ([]BackupVerificationResource, error)
ListVolumeBackupVerifications calls GET /api/v1/apps/{name}/volumes/{volume}/backups/{historyId}/verifications: the app service volume counterpart of ListBackupVerifications.
func (*Client) ListVolumeBackups ¶
func (c *Client) ListVolumeBackups(ctx context.Context, name, volume string, opts ListBackupsOptions) ([]BackupHistoryResource, error)
ListVolumeBackups calls GET /api/v1/apps/{name}/volumes/{volume}/backups: the app service volume counterpart of ListBackups.
func (*Client) ListVolumeCloneRestores ¶ added in v0.2.0
func (c *Client) ListVolumeCloneRestores(ctx context.Context, name, volume string) ([]VolumeCloneRestoreResource, error)
ListVolumeCloneRestores calls GET /api/v1/apps/{name}/volumes/{volume}/clone-restores.
func (*Client) ListVolumeRestores ¶ added in v0.2.0
func (c *Client) ListVolumeRestores(ctx context.Context, name, volume string) ([]RestoreHistoryResource, error)
ListVolumeRestores calls GET /api/v1/apps/{name}/volumes/{volume}/restores.
func (*Client) ListWebhookDeliveries ¶
func (c *Client) ListWebhookDeliveries(ctx context.Context, name string, opts ListWebhookDeliveriesOptions) ([]WebhookDeliveryResource, error)
ListWebhookDeliveries calls GET /api/v1/apps/{name}/webhook-deliveries: recent inbound git-provider webhook requests for name, newest first.
func (*Client) LockPublishing ¶
func (c *Client) LockPublishing(ctx context.Context, appName, reason string) (PublishLockResource, error)
LockPublishing calls PUT /api/v1/apps/{name}/publish-lock.
func (*Client) MakeDatabasePrivate ¶ added in v0.2.0
MakeDatabasePrivate calls POST /api/v1/databases/{name}/network/make-private.
func (*Client) MarkFormSubmissionSpam ¶
func (c *Client) MarkFormSubmissionSpam(ctx context.Context, app, form string, id int64, spam bool) error
MarkFormSubmissionSpam flags or clears one submission.
func (*Client) MarkInboxRead ¶
MarkInboxRead calls POST /api/v1/inbox/read with ids, or with all=true.
func (*Client) MarkNodeLost ¶
func (c *Client) MarkNodeLost(ctx context.Context, id string, dryRun bool) (NodeFailureStatus, error)
MarkNodeLost calls POST /api/v1/nodes/{id}/failure/lost; dryRun returns the plan without acting.
func (*Client) MarketplaceCatalog ¶
func (c *Client) MarketplaceCatalog(ctx context.Context) (MarketplaceCatalog, error)
MarketplaceCatalog calls GET /api/v1/plugin-marketplace.
func (*Client) MigrationJob ¶
MigrationJob calls GET .../sessions/{id}/progress.
func (*Client) MigrationRetire ¶
func (c *Client) MigrationRetire(ctx context.Context, id string, probe bool, acknowledged []string) (migrationgate.Report, error)
MigrationRetire reads the safe-to-delete checklist. With probe set it also runs the live DNS and response checks.
func (*Client) MigrationVolumeGuide ¶ added in v0.2.0
func (c *Client) MigrationVolumeGuide(ctx context.Context, source, app string) (VolumeGuideResponse, error)
MigrationVolumeGuide calls GET /api/v1/migration/volumes.
func (*Client) MintSessionLink ¶ added in v0.2.0
func (c *Client) MintSessionLink(ctx context.Context) (SessionLinkResource, error)
MintSessionLink calls POST /api/v1/auth/session-links using this Client's bearer token, which must hold AbilityRoot: minting a session link is root-equivalent since redeeming it establishes a session with the minting caller's own abilities. The returned token is a one-time secret, the same contract CreateNodeJoinToken's own doc comment describes.
func (*Client) MoveAppEnvironment ¶ added in v0.2.0
func (c *Client) MoveAppEnvironment(ctx context.Context, name string, req MoveEnvironmentRequest) (MoveEnvironmentResult, error)
MoveAppEnvironment calls PUT /api/v1/apps/{name}/environment.
func (*Client) MoveAppWithVolumes ¶ added in v0.2.0
func (c *Client) MoveAppWithVolumes(ctx context.Context, name, nodeID string) (AppVolumeMoveResource, error)
MoveAppWithVolumes calls POST /api/v1/apps/{name}/move-with-volumes: the same placement change SetAppNode makes, plus archiving and restoring every one of the app's named Docker volumes onto the destination node (internal/api's handleMoveAppWithVolumes). Always returns an AppVolumeMoveResource: check its Status field, not the status code alone, to tell "already done" (an app with no volumes, or already on nodeID) from "still running" (real volumes to copy: poll GetAppVolumeMove with the returned ID until Status is no longer "running"). An empty nodeID moves the app back to the control plane's own local node.
func (*Client) MoveDatabaseEnvironment ¶ added in v0.2.0
func (c *Client) MoveDatabaseEnvironment(ctx context.Context, name string, req MoveEnvironmentRequest) (MoveEnvironmentResult, error)
MoveDatabaseEnvironment calls PUT /api/v1/databases/{name}/environment.
func (*Client) MyAccess ¶
func (c *Client) MyAccess(ctx context.Context) (MyAccessResource, error)
MyAccess calls GET /api/v1/auth/my-access: the caller's own tier, teams, attached policies and per-area capabilities.
func (*Client) MyActivity ¶
func (c *Client) MyActivity(ctx context.Context, opts MyActivityOptions) (MyActivity, error)
MyActivity calls GET /api/v1/auth/my-activity: only the caller's own rows.
func (*Client) MyCredentials ¶
func (c *Client) MyCredentials(ctx context.Context) (MyCredentials, error)
MyCredentials calls GET /api/v1/auth/my-credentials.
func (*Client) OverrideSpendGuard ¶
func (c *Client) OverrideSpendGuard(ctx context.Context, app, reason string) (SpendGuardInfo, error)
OverrideSpendGuard calls POST /api/v1/apps/{name}/budget/override.
func (*Client) OverrideSupplyChainGate ¶ added in v0.2.0
func (c *Client) OverrideSupplyChainGate(ctx context.Context, name, reason string) (SupplyChainSettings, error)
OverrideSupplyChainGate calls POST /api/v1/apps/{name}/supply-chain/override.
func (*Client) PatchEnvironment ¶ added in v0.2.0
func (c *Client) PatchEnvironment(ctx context.Context, id string, req PatchEnvironmentRequest) (EnvironmentResource, error)
PatchEnvironment calls PATCH /api/v1/environments/{id}.
func (*Client) PendingDeployDiff ¶
func (c *Client) PendingDeployDiff(ctx context.Context, name, image string) (DeployCompareResource, error)
PendingDeployDiff calls GET .../deploys/compare?pending=true: what the next deploy would change against the last successful one, env keys only. image empty means the app's current desired image.
func (*Client) PlanAppImport ¶ added in v0.2.0
func (c *Client) PlanAppImport(ctx context.Context, req AppImportRequest) (AppImportView, error)
PlanAppImport calls POST /api/v1/migration/apps/plan. It stores nothing.
func (*Client) PlanGoLive ¶ added in v0.2.0
func (c *Client) PlanGoLive(ctx context.Context, app string, req GoLivePlanRequest) (GoLivePlanResponse, error)
PlanGoLive calls POST .../domains/go-live/plan.
func (*Client) PlanImport ¶ added in v0.2.0
func (c *Client) PlanImport(ctx context.Context, req ImportPlanRequest) (ImportPlan, error)
PlanImport calls POST /api/v1/imports/plan. It creates nothing.
func (*Client) PlanImportRepo ¶
PlanImportRepo calls POST /api/v1/imports/repo/plan. It creates nothing.
func (*Client) PlanMailBroadcast ¶
func (c *Client) PlanMailBroadcast(ctx context.Context, req MailBroadcastRequest) (MailBroadcastPlan, error)
PlanMailBroadcast calls POST /api/v1/mail/broadcasts with dry_run set.
func (*Client) PlanMigration ¶
func (c *Client) PlanMigration(ctx context.Context, req MigrationSourceRequest) (MigrationPlanReport, error)
PlanMigration calls POST /api/v1/migration/plan. It creates nothing.
func (*Client) PluginPanelAction ¶
func (c *Client) PluginPanelAction(ctx context.Context, name, panel, action, appID string) (PluginActionResult, error)
PluginPanelAction calls POST /api/v1/plugins/{name}/panels/{panel}/actions/{action}.
func (*Client) PluginPanelData ¶
func (c *Client) PluginPanelData(ctx context.Context, name, panel, appID string) (PluginPanelView, error)
PluginPanelData calls GET /api/v1/plugins/{name}/panels/{panel}/data.
func (*Client) PollDeviceAuthToken ¶
func (c *Client) PollDeviceAuthToken(ctx context.Context, deviceCode string) (DeviceTokenResponse, error)
PollDeviceAuthToken calls POST /api/v1/auth/device/token once. Unauthenticated, same as StartDeviceAuth. Returns *APIError with Message one of "authorization_pending"/"access_denied"/ "expired_token" until the request has been approved; the caller is expected to poll this on an interval (DeviceStartResponse.Interval) until it either returns a token or a terminal error.
func (*Client) PostStatusIncidentUpdate ¶ added in v0.2.0
func (c *Client) PostStatusIncidentUpdate(ctx context.Context, id string, u StatusUpdate) (StatusIncident, error)
PostStatusIncidentUpdate calls POST /api/v1/status-page/incidents/{id}/updates.
func (*Client) PreflightApp ¶ added in v0.2.0
func (c *Client) PreflightApp(ctx context.Context, name string, requiredEnv []string) (PreflightReport, error)
PreflightApp calls POST /api/v1/apps/{name}/preflight. requiredEnv names variables the app must have set, since that set is not stored.
func (*Client) PreflightModel ¶ added in v0.2.0
func (c *Client) PreflightModel(ctx context.Context, req ModelPreflightRequest) (ModelPreflightResult, error)
PreflightModel calls POST /api/v1/models/preflight.
func (*Client) PreflightSSHNodeProvision ¶ added in v0.2.2
func (c *Client) PreflightSSHNodeProvision(ctx context.Context, req SSHProvisionPreflightRequest) (SSHProvisionPreflight, error)
PreflightSSHNodeProvision calls POST /api/v1/nodes/ssh-provision/preflight.
func (*Client) PresignBucketObject ¶
func (c *Client) PresignBucketObject(ctx context.Context, id, key, method string, expiresSeconds int) (BucketPresign, error)
PresignBucketObject calls POST /api/v1/storage/buckets/{id}/presign.
func (*Client) PreviewAppExposure ¶
func (c *Client) PreviewAppExposure(ctx context.Context, name string, req AppExposureRequest) (AppExposurePlan, error)
PreviewAppExposure calls POST /api/v1/apps/{name}/exposure/preview.
func (*Client) PreviewCleanup ¶
PreviewCleanup calls POST /api/v1/cleanup/{id}/preview. A nil days uses the target's policy.
func (*Client) PreviewClone ¶ added in v0.2.0
PreviewClone calls GET /api/v1/apps/{name}/clone/preview.
func (*Client) PreviewCompose ¶ added in v0.2.0
func (c *Client) PreviewCompose(ctx context.Context, composeYAML []byte, profiles []string) (ComposePreview, error)
PreviewCompose calls POST /api/v1/compose/preview.
func (*Client) PreviewDatabasePasswordRotation ¶
func (c *Client) PreviewDatabasePasswordRotation(ctx context.Context, name string) (DatabasePasswordRotation, error)
PreviewDatabasePasswordRotation calls the rotation endpoint with dry_run, which changes nothing and needs no step-up.
func (*Client) PreviewDatabaseRules ¶ added in v0.2.0
func (c *Client) PreviewDatabaseRules(ctx context.Context, name string, req DatabaseRulesRequest) (DatabaseRulesPlan, error)
PreviewDatabaseRules calls POST /api/v1/databases/{name}/network/rules/preview.
func (*Client) PreviewDomainPolicies ¶ added in v0.2.0
func (c *Client) PreviewDomainPolicies(ctx context.Context, name, domain string, req PolicyPreviewRequest) (PolicyPreviewResponse, error)
PreviewDomainPolicies calls POST .../domains/{domain}/policies/preview.
func (*Client) PreviewEmailBranding ¶
func (c *Client) PreviewEmailBranding(ctx context.Context, req EmailBranding) (EmailBrandingPreview, error)
PreviewEmailBranding calls POST /api/v1/settings/email/branding/preview with unsaved branding.
func (*Client) PreviewEnvironmentClone ¶ added in v0.2.0
func (c *Client) PreviewEnvironmentClone(ctx context.Context, id, newEnvironmentName string) (EnvironmentClonePreviewResource, error)
PreviewEnvironmentClone calls GET /api/v1/environments/{id}/clone/preview: what cloning id into a new environment named newEnvironmentName would most likely create, without applying it or reserving any name.
func (*Client) PreviewExposureRestriction ¶ added in v0.2.0
func (c *Client) PreviewExposureRestriction(ctx context.Context, req ExposureRestrictRequest) (ExposurePlan, error)
PreviewExposureRestriction calls POST /api/v1/firewall/exposure/preview.
func (*Client) PreviewFix ¶
PreviewFix calls POST /api/v1/fixes/{id}/preview.
func (*Client) PreviewLogPipeline ¶
func (c *Client) PreviewLogPipeline(ctx context.Context, app string, rules []LogPipelineRule, lines []string) (LogPipelinePreview, error)
PreviewLogPipeline calls POST /api/v1/apps/{name}/log-pipeline/preview.
func (*Client) PreviewMailTemplate ¶
PreviewMailTemplate calls POST /api/v1/mail/templates/{key}/preview with sample data.
func (*Client) PreviewMaintenancePage ¶
func (c *Client) PreviewMaintenancePage(ctx context.Context, title, message string, retryAfterSeconds int) (MaintenancePreviewResource, error)
PreviewMaintenancePage calls POST /api/v1/maintenance/preview.
func (*Client) PreviewMarketplacePlugin ¶
func (c *Client) PreviewMarketplacePlugin(ctx context.Context, sourceID, id string) (MarketplacePreview, error)
PreviewMarketplacePlugin calls POST /api/v1/plugin-marketplace/preview.
func (*Client) PreviewNodeDrain ¶
PreviewNodeDrain calls POST /api/v1/nodes/{id}/drain?dry_run=true.
func (*Client) PreviewPromotion ¶
func (c *Client) PreviewPromotion(ctx context.Context, name, environmentID, target string) (PromotePreviewResource, error)
PreviewPromotion calls GET /api/v1/apps/{name}/promote/preview: what promoting name's current image into environmentID would change, without applying it. target disambiguates when more than one app in environmentID belongs to the same project; leave it empty to let the server auto-discover the sole candidate.
func (*Client) Probe ¶
Probe issues GET path and discards the body, so the soak harness can generate read load without a typed method per endpoint.
func (*Client) ProbeExternalDatabase ¶ added in v0.2.0
func (c *Client) ProbeExternalDatabase(ctx context.Context, name string) (ExternalDatabaseProbe, error)
ProbeExternalDatabase calls POST /api/v1/external-databases/{name}/probe.
func (*Client) ProbeMigrationDomain ¶
func (c *Client) ProbeMigrationDomain(ctx context.Context, id, domain, kind string) (MigrationProbe, error)
ProbeMigrationDomain calls POST .../sessions/{id}/probe. Kind is "dns", "http" or empty for both.
func (*Client) PromoteApp ¶
func (c *Client) PromoteApp(ctx context.Context, name string, req PromoteAppRequest) (DeployTriggerResult, error)
PromoteApp calls POST /api/v1/apps/{name}/promote: points the resolved target app's image at name's current image and redeploys it.
func (*Client) PromoteCanary ¶ added in v0.2.0
PromoteCanary calls POST /api/v1/apps/{name}/canary/promote.
func (*Client) PromoteEmailProvider ¶
PromoteEmailProvider calls POST /api/v1/settings/email/providers/{id}/promote and returns the providers after the swap.
func (*Client) PromoteSplit ¶
PromoteSplit calls POST /api/v1/apps/{name}/split/promote.
func (*Client) ProtectAll ¶ added in v0.2.0
func (c *Client) ProtectAll(ctx context.Context, req ProtectAllRequest) (ProtectAllResponse, error)
ProtectAll calls POST /api/v1/backups/protect-all; Apply false only plans.
func (*Client) PruneBuildCache ¶
func (c *Client) PruneBuildCache(ctx context.Context, req BuildCachePruneRequest) (BuildCachePruneResource, error)
PruneBuildCache calls POST /api/v1/builds/cache/prune.
func (*Client) PruneModelCache ¶ added in v0.2.0
func (c *Client) PruneModelCache(ctx context.Context, volumes []string, dryRun bool) (ModelCachePruneResult, error)
PruneModelCache calls POST /api/v1/model-cache/prune.
func (*Client) PrunePreview ¶ added in v0.2.0
func (c *Client) PrunePreview(ctx context.Context, name string, all bool) (PreviewPruneResult, error)
PrunePreview calls POST /api/v1/apps/{name}/preview/prune.
func (*Client) PruneSystem ¶ added in v0.2.0
func (c *Client) PruneSystem(ctx context.Context) (SystemPruneResult, error)
PruneSystem calls POST /api/v1/system/prune: removes every stopped container, dangling image, and unused volume or build cache the reconciler's current desired state doesn't need, fleet-wide.
func (*Client) PruneSystemNetworks ¶
PruneSystemNetworks calls POST /api/v1/system/networks/prune.
func (*Client) PublishHeldBuild ¶
func (c *Client) PublishHeldBuild(ctx context.Context, appName, deployID string) (DeployTriggerResult, error)
PublishHeldBuild calls POST /api/v1/apps/{name}/deploys/{id}/publish.
func (*Client) PurgeAppCache ¶
func (c *Client) PurgeAppCache(ctx context.Context, name string, req AppCachePurgeRequest) (AppCachePurgeResource, error)
PurgeAppCache calls POST /api/v1/apps/{name}/cache/purge.
func (*Client) PurgeAuditLog ¶
func (c *Client) PurgeAuditLog(ctx context.Context) (PurgeAuditLogResult, error)
PurgeAuditLog calls POST /api/v1/audit-log/purge: deletes every audit_log row older than the control plane's own configured retention window right now, instead of waiting for its next periodic sweep.
func (*Client) PurgeDomainCache ¶ added in v0.2.0
func (c *Client) PurgeDomainCache(ctx context.Context, name, domain string, req PurgeCacheRequest) (PurgeCacheResponse, error)
PurgeDomainCache calls POST .../domains/{domain}/cache/purge.
func (*Client) PutAppImportPlan ¶ added in v0.2.0
func (c *Client) PutAppImportPlan(ctx context.Context, id string, body AppImportPlanUpdate) (AppImportView, error)
PutAppImportPlan calls PUT .../sessions/{id}/plan.
func (*Client) PutFunctionKV ¶
func (c *Client) PutFunctionKV(ctx context.Context, name, key, value string, ttl time.Duration) error
PutFunctionKV calls PUT /api/v1/functions/{name}/kv/value; a ttl of zero keeps the key.
func (*Client) PutFunctionWebhook ¶
func (c *Client) PutFunctionWebhook(ctx context.Context, name, path string, rotate bool) (FunctionWebhook, error)
PutFunctionWebhook enables, retargets or rotates the signed webhook of a function.
func (*Client) PutPreferences ¶
func (c *Client) PutPreferences(ctx context.Context, p Preferences) (Preferences, error)
PutPreferences calls PUT /api/v1/auth/preferences, replacing every field.
func (*Client) PutRuntimeSetting ¶
func (c *Client) PutRuntimeSetting(ctx context.Context, key string, req RuntimeSettingWrite) (RuntimeSettingResource, error)
PutRuntimeSetting calls PUT /api/v1/settings/runtime/{key}.
func (*Client) PutStatusPage ¶ added in v0.2.0
func (c *Client) PutStatusPage(ctx context.Context, s StatusPageSettings) (StatusPageSettings, error)
PutStatusPage calls PUT /api/v1/status-page.
func (*Client) QueryAppMetrics ¶
func (c *Client) QueryAppMetrics(ctx context.Context, name, metric string, from, to time.Time, step time.Duration) (AppMetricsResource, error)
QueryAppMetrics calls GET /api/v1/apps/{name}/metrics?metric=&from=&to=&step= (internal/api/metrics.go's handleQueryMetrics). from/to are sent as RFC3339; step of zero omits the query param, matching the server's own "step<=0 means raw unaggregated samples" contract (telemetry.Aggregate).
func (*Client) QueryAppMetricsSeries ¶ added in v0.2.0
func (c *Client) QueryAppMetricsSeries(ctx context.Context, name, metric string, from, to time.Time, opt MetricsQueryOptions) (MetricsSeriesResource, error)
QueryAppMetricsSeries calls GET /api/v1/apps/{name}/metrics with max_points and compare support.
func (*Client) QueryAppRequests ¶ added in v0.2.0
func (c *Client) QueryAppRequests(ctx context.Context, name string, from, to time.Time, step time.Duration) (AppRequestsResource, error)
QueryAppRequests calls GET /api/v1/apps/{name}/requests: ingress request rate, error rates and latency percentiles. A zero step lets the server pick.
func (*Client) QueryDatabase ¶ added in v0.2.0
func (c *Client) QueryDatabase(ctx context.Context, name string, req DatabaseQueryRequest, write bool) (DatabaseQueryResult, error)
QueryDatabase calls POST /api/v1/databases/{name}/query, or /query/write when write is true (admin only, confirm must equal the database name).
func (*Client) QueryDatabaseLogs ¶ added in v0.2.0
func (c *Client) QueryDatabaseLogs(ctx context.Context, name string, from, to time.Time, q string) ([]LogEntryResource, error)
QueryDatabaseLogs calls GET /api/v1/databases/{name}/logs?from=&to=&q= (internal/api/database_logs.go's handleQueryDatabaseLogs), the database counterpart to QueryLogs above: same request/response shape, same shared queryResourceLogs implementation server-side.
func (*Client) QueryDatabaseMetrics ¶ added in v0.2.0
func (c *Client) QueryDatabaseMetrics(ctx context.Context, name, metric string, from, to time.Time, step time.Duration) (AppMetricsResource, error)
QueryDatabaseMetrics calls GET /api/v1/databases/{name}/metrics?metric=&from=&to=&step= (internal/api/database_metrics.go's handleQueryDatabaseMetrics), the database-kind counterpart to QueryAppMetrics: same params, same response shape, since internal/api's queryResourceMetrics is the shared implementation behind both routes server-side.
func (*Client) QueryDatabaseSlowQueries ¶ added in v0.2.0
func (c *Client) QueryDatabaseSlowQueries(ctx context.Context, name string, from, to time.Time, limit, offset int) ([]SlowQueryEntryResource, int, error)
QueryDatabaseSlowQueries calls GET /api/v1/databases/{name}/slow-queries?from=&to=&limit=&offset= (internal/api/database_slow_queries.go's handleQueryDatabaseSlowQueries), returning parsed slow-query entries sorted by duration descending plus the total count before limit/offset truncation. limit <= 0 omits the ?limit param, letting the server apply its own default.
func (*Client) QueryLogs ¶
func (c *Client) QueryLogs(ctx context.Context, name string, from, to time.Time, q string) ([]LogEntryResource, error)
QueryLogs calls GET /api/v1/apps/{name}/logs?from=&to=&q= (internal/api/logs.go's handleQueryLogs): a real, historical full-text search over already-stored log entries. from/to are sent as RFC3339, the same format the server requires (internal/api's parseTimeRange); q empty means every entry in the window, matching the server's own "empty query" contract.
func (*Client) QueryLogsCompact ¶ added in v0.2.0
func (c *Client) QueryLogsCompact(ctx context.Context, q LogQuery, maxBytes int, now time.Time) (LogExcerpt, error)
QueryLogsCompact runs q against the logs API and returns a capped excerpt of the newest matching lines. The level, text and newest-N filtering happen server side; the byte cap is applied here.
func (*Client) QueryModelLogs ¶ added in v0.2.0
func (c *Client) QueryModelLogs(ctx context.Context, name string, from, to time.Time, q string) ([]LogEntryResource, error)
QueryModelLogs calls GET /api/v1/models/{name}/logs.
func (*Client) QueryNodeMetrics ¶ added in v0.2.0
func (c *Client) QueryNodeMetrics(ctx context.Context, id, metric string, from, to time.Time, step time.Duration) (NodeMetricsResource, error)
QueryNodeMetrics calls GET /api/v1/nodes/{id}/metrics?metric=&from=&to=&step= (internal/api/node_metrics.go's handleQueryNodeMetrics): a sum of every service placed on the node for most metrics, or a real host-level reading for the rest (disk usage, OS patches available); see that handler's own doc comment for exactly which metric names fall into each group. The server, not this client, is the authority on which metric names are valid.
func (*Client) ReapOrphans ¶ added in v0.2.0
ReapOrphans calls POST /api/v1/system/orphans/reap: one reaper pass now. dryRun reports what would go without removing it.
func (*Client) RebindSecrets ¶ added in v0.2.0
func (c *Client) RebindSecrets(ctx context.Context) (SecretRebindResult, error)
RebindSecrets calls POST /api/v1/system/secrets/rebind: re-encrypts every legacy secret value bound to its slot. Safe to repeat.
func (*Client) RecheckUpdatePreflight ¶ added in v0.2.0
func (c *Client) RecheckUpdatePreflight(ctx context.Context) (UpdatePreflight, error)
RecheckUpdatePreflight is GetUpdatePreflight bypassing the release cache.
func (*Client) ReclaimStorageOrphan ¶ added in v0.2.0
func (c *Client) ReclaimStorageOrphan(ctx context.Context, id, confirm string) (ReclaimOrphanResponse, error)
ReclaimStorageOrphan calls DELETE /api/v1/storage/orphans/{id}; confirm must equal id.
func (*Client) RecordChaosResults ¶
RecordChaosResults calls POST /api/v1/resilience/results and returns the stored IDs.
func (*Client) RedeemCLIPairing ¶
func (c *Client) RedeemCLIPairing(ctx context.Context, req CLIPairRequest) (CLIPairResponse, error)
RedeemCLIPairing calls POST /api/v1/auth/cli-pairing/redeem. Unauthenticated by design: build the Client with an empty token, the code is the credential.
func (*Client) RedeployComposeStack ¶ added in v0.2.0
RedeployComposeStack calls POST /api/v1/apps/{name}/compose/redeploy; service "" means every service.
func (*Client) RefreshBackupProtection ¶ added in v0.2.0
func (c *Client) RefreshBackupProtection(ctx context.Context, targetIDs []string) ([]TargetProtectionResource, error)
RefreshBackupProtection calls POST /api/v1/backups/protection/refresh.
func (*Client) RefreshDatabaseCatalog ¶
func (c *Client) RefreshDatabaseCatalog(ctx context.Context) (DBCatalogStatus, error)
RefreshDatabaseCatalog calls POST /api/v1/database-catalog/refresh.
func (*Client) RefreshDatabaseVersions ¶
RefreshDatabaseVersions calls POST /api/v1/database-versions/refresh?engine=.
func (*Client) RefreshMarketplace ¶
func (c *Client) RefreshMarketplace(ctx context.Context, sourceID string) (MarketplaceCatalog, error)
RefreshMarketplace calls POST /api/v1/plugin-marketplace/refresh. An empty sourceID refreshes every source.
func (*Client) RefreshRegistryCredential ¶
func (c *Client) RefreshRegistryCredential(ctx context.Context, id string) (RegistryCredentialResource, error)
RefreshRegistryCredential calls POST /api/v1/registry-credentials/{id}/refresh.
func (*Client) RegisterGitSourceWebhook ¶
func (c *Client) RegisterGitSourceWebhook(ctx context.Context, name string) (GitSourceResource, error)
RegisterGitSourceWebhook calls POST /api/v1/apps/{name}/git-source/webhook/register: registers the push webhook on the provider again and returns the source with the new outcome.
func (*Client) RejectDeployApproval ¶ added in v0.2.0
func (c *Client) RejectDeployApproval(ctx context.Context, id, reason string) (DeployApprovalResource, error)
RejectDeployApproval calls POST /api/v1/deploy-approvals/{id}/reject: records the decision, the app's desired state is left untouched.
func (*Client) RejoinNodeMesh ¶ added in v0.2.0
RejoinNodeMesh calls POST /api/v1/nodes/{id}/mesh/rejoin: forces an immediate fleet-wide mesh reconcile pass instead of waiting for the next scheduled resync. See internal/api/mesh.go's own doc comment: id is only used to validate the node exists, the resync itself always covers the whole fleet.
func (*Client) ReleaseNotes ¶
func (c *Client) ReleaseNotes(ctx context.Context, name, from, to string) (ReleaseNotesResource, error)
ReleaseNotes calls GET /api/v1/apps/{name}/deploys/release-notes: the commits between two deploys, grouped by conventional-commit type. to empty means the newest deploy that recorded a commit.
func (*Client) RemoveDatabaseRules ¶ added in v0.2.0
RemoveDatabaseRules calls DELETE /api/v1/databases/{name}/network/rules.
func (*Client) RemoveExposureRestriction ¶ added in v0.2.0
RemoveExposureRestriction calls DELETE .../exposure/restrictions/{protocol}/{port}.
func (*Client) RemoveMarketplaceSource ¶
RemoveMarketplaceSource calls DELETE /api/v1/plugin-marketplace/sources/{id}.
func (*Client) RemoveOrphanedContainer ¶ added in v0.2.0
RemoveOrphanedContainer calls POST /api/v1/system/containers/{name}/remove.
func (*Client) RemovePlugin ¶
RemovePlugin calls DELETE /api/v1/plugins/{name}.
func (*Client) RemovePluginKey ¶
RemovePluginKey calls DELETE /api/v1/plugin-keys/{id}.
func (*Client) RemoveTeamMember ¶ added in v0.2.0
RemoveTeamMember calls DELETE /api/v1/teams/{id}/members/{user}.
func (*Client) RenameGitConnection ¶
func (c *Client) RenameGitConnection(ctx context.Context, id, label string) (GitProviderConnectionResource, error)
RenameGitConnection calls PATCH /api/v1/git-connections/{id}.
func (*Client) RenameTeam ¶ added in v0.2.0
RenameTeam calls PATCH /api/v1/teams/{id}.
func (*Client) RenewDomainCertificate ¶ added in v0.2.0
func (c *Client) RenewDomainCertificate(ctx context.Context, name, domain string) (RenewCertificateResource, error)
RenewDomainCertificate calls POST /api/v1/apps/{name}/domains/{domain}/cert/renew: forces re-issuance of domain's automatically-managed certificate (ACME or internal; not valid for a domain with a BYO certificate uploaded, see handleRenewDomainCertificate's own doc comment).
func (*Client) RenewNodeCert ¶
RenewNodeCert calls POST /api/v1/nodes/{id}/cert/renew.
func (*Client) ReorderFirewallEdgeRules ¶
func (c *Client) ReorderFirewallEdgeRules(ctx context.Context, ids []string) ([]FirewallEdgeRule, error)
ReorderFirewallEdgeRules calls POST .../firewall/edge/rules/order.
func (*Client) ReplaceSSOGroupMappings ¶
func (c *Client) ReplaceSSOGroupMappings(ctx context.Context, req SSOGroupMappings) (SSOGroupMappings, error)
ReplaceSSOGroupMappings calls PUT /api/v1/sso/group-mappings.
func (*Client) ReplayEventWebhookDelivery ¶
func (c *Client) ReplayEventWebhookDelivery(ctx context.Context, id string) (EventDeliveryResource, error)
ReplayEventWebhookDelivery calls POST /api/v1/event-webhook-deliveries/{id}/replay.
func (*Client) ReplayFunctionInvocation ¶
func (c *Client) ReplayFunctionInvocation(ctx context.Context, name, id string) (FunctionInvokeResult, error)
ReplayFunctionInvocation repeats a recorded call whose input was stored.
func (*Client) ReplayPipelineWebhookDelivery ¶
func (c *Client) ReplayPipelineWebhookDelivery(ctx context.Context, app, name, deliveryID string) (PipelineRunResource, error)
ReplayPipelineWebhookDelivery calls POST .../webhook/deliveries/{id}/replay.
func (*Client) ReplayWebhookDelivery ¶
func (c *Client) ReplayWebhookDelivery(ctx context.Context, name, id string) (ReplayWebhookDeliveryResult, error)
ReplayWebhookDelivery calls POST /api/v1/apps/{name}/webhook-deliveries/{id}/replay: re-runs a stored delivery's exact payload through the same processing a live webhook takes, which can trigger a real build and deploy.
func (*Client) RerunPipelineRun ¶ added in v0.2.0
RerunPipelineRun calls POST .../pipeline-runs/{id}/rerun.
func (*Client) ResetAppBuildLimits ¶
ResetAppBuildLimits calls DELETE /api/v1/apps/{name}/build-limits.
func (*Client) ResetBuildLimits ¶
func (c *Client) ResetBuildLimits(ctx context.Context) (BuildLimits, error)
ResetBuildLimits calls DELETE /api/v1/build-limits.
func (*Client) ResetDefaultAlerts ¶
func (c *Client) ResetDefaultAlerts(ctx context.Context) ([]DefaultAlert, error)
ResetDefaultAlerts calls POST /api/v1/alert-defaults/reset.
func (*Client) ResetMailTemplate ¶
ResetMailTemplate calls DELETE /api/v1/mail/templates/{key}.
func (*Client) ResetSetupGuide ¶ added in v0.2.0
func (c *Client) ResetSetupGuide(ctx context.Context) (SetupGuideResource, error)
ResetSetupGuide calls POST /api/v1/setup/guide/reset.
func (*Client) ResolveAIChatConfirmation ¶ added in v0.2.0
func (c *Client) ResolveAIChatConfirmation(ctx context.Context, sessionID, confirmationID string, approve bool, onEvent func(AIChatSSEEvent) error) error
ResolveAIChatConfirmation calls POST /api/v1/ai/sessions/{id}/confirmations/{confirmationID}: approves or rejects a pending mutating tool call, streaming the turn's continuation the same way SendAIChatMessage does.
func (*Client) ResolveNodeFailure ¶
func (c *Client) ResolveNodeFailure(ctx context.Context, id, kind, name, action, target string) (NodeFailureStatus, error)
ResolveNodeFailure calls POST /api/v1/nodes/{id}/failure/resolve with action wait or restore.
func (*Client) RestartApp ¶
RestartApp calls POST /api/v1/apps/{name}/restart: force a running container to be recreated with no image change (internal/api/apps.go's own handleRestartApp). No request body; the response is the app's current desired state, unchanged.
func (*Client) RestartControlPlane ¶ added in v0.2.0
func (c *Client) RestartControlPlane(ctx context.Context) (SystemRestart, error)
RestartControlPlane calls POST /api/v1/system/restart.
func (*Client) RestartModel ¶ added in v0.2.0
RestartModel calls POST /api/v1/models/{name}/restart.
func (*Client) RestartPlugin ¶
RestartPlugin calls POST /api/v1/plugins/{name}/restart.
func (*Client) RestartProject ¶ added in v0.2.0
RestartProject calls POST /api/v1/projects/{id}/restart: force every app filed under this project to have its running container recreated with no image change (internal/api/project_restart.go's own handleRestartProject). No request body.
func (*Client) RestoreArchive ¶
RestoreArchive calls POST /api/v1/archives/{id}/restore.
func (*Client) RestoreIntegrity ¶
func (c *Client) RestoreIntegrity(ctx context.Context, name string, proof *StepUpProof) (IntegrityRestore, error)
RestoreIntegrity calls POST /api/v1/system/integrity/restore. An empty name picks the newest verified snapshot.
func (*Client) RestoreRestorePoint ¶
RestoreRestorePoint calls POST /api/v1/updates/restore-points/{id}/restore.
func (*Client) RestoreVolumeTo ¶ added in v0.2.0
func (c *Client) RestoreVolumeTo(ctx context.Context, name, volume string, req VolumeRestoreToRequest) (VolumeRestoreToResponse, error)
RestoreVolumeTo calls POST /api/v1/apps/{name}/volumes/{volume}/restore-to.
func (*Client) RestrictDomainPort ¶ added in v0.2.0
func (c *Client) RestrictDomainPort(ctx context.Context, name, domain string, port int, sources []string) (DomainPortsResource, error)
RestrictDomainPort calls PUT .../ports/{port}/restrict: only sources may reach the port.
func (*Client) RetryBuild ¶
RetryBuild calls POST /api/v1/apps/{app}/builds/{id}/retry and returns the server's message.
func (*Client) RetryFunctionInvocation ¶
RetryFunctionInvocation puts a dead-lettered call back in the queue.
func (*Client) RetrySelfUpgradeAttempt ¶
func (c *Client) RetrySelfUpgradeAttempt(ctx context.Context, id string) (SelfUpgradeStarted, error)
RetrySelfUpgradeAttempt calls POST .../self-upgrade/attempts/{id}/retry.
func (*Client) RevealDatabaseCredentials ¶
func (c *Client) RevealDatabaseCredentials(ctx context.Context, name string, proof *StepUpProof) (DatabaseRevealedCredential, error)
RevealDatabaseCredentials calls POST /api/v1/databases/{name}/credentials/reveal. It needs the token owner's step-up proof and is audited server side.
func (*Client) RevealEmailSecret ¶
func (c *Client) RevealEmailSecret(ctx context.Context, id, field string, proof *StepUpProof) (EmailSecretRevealed, error)
RevealEmailSecret calls POST /api/v1/settings/email/providers/{id}/secrets/{field}/reveal. It needs the token owner's step-up proof (password plus authenticator code) and is audited server side.
func (*Client) RevealEnv ¶ added in v0.2.0
func (c *Client) RevealEnv(ctx context.Context, app, key string, proof *StepUpProof) (RevealResult, error)
RevealEnv calls POST /api/v1/apps/{name}/env/reveal.
func (*Client) RevealLoginCode ¶ added in v0.2.0
RevealLoginCode calls POST /api/v1/auth/sign-in-requests/codes/{id}/reveal. A token must hold signin:approve.
func (*Client) RevealSecret ¶ added in v0.2.0
func (c *Client) RevealSecret(ctx context.Context, app, key string, proof *StepUpProof) (RevealResult, error)
RevealSecret calls POST /api/v1/apps/{name}/secrets/{key}/reveal.
func (*Client) RevokeAgentTokens ¶ added in v0.2.0
func (c *Client) RevokeAgentTokens(ctx context.Context) (RevokeAgentTokensResource, error)
RevokeAgentTokens calls POST /api/v1/settings/ai-control/revoke-agent-tokens.
func (*Client) RevokeAuthGateSessions ¶ added in v0.2.0
func (c *Client) RevokeAuthGateSessions(ctx context.Context, name, domain string) (AuthGateSessionsRevoked, error)
RevokeAuthGateSessions calls DELETE .../auth-gate/sessions.
func (*Client) RevokeBuildHook ¶
RevokeBuildHook calls DELETE /api/v1/apps/{name}/build-hooks/{id}.
func (*Client) RevokeDatabaseTemp ¶ added in v0.2.0
RevokeDatabaseTemp calls DELETE /api/v1/databases/{name}/access/temp/{id}.
func (*Client) RevokeInvite ¶
RevokeInvite calls DELETE /api/v1/invites/{id}.
func (*Client) RevokeJoinTokens ¶
RevokeJoinTokens calls DELETE /api/v1/nodes/join-tokens, or .../{id} when id is set.
func (*Client) RevokeMigrationAgentSession ¶
RevokeMigrationAgentSession calls DELETE /api/v1/migration/agent/sessions/{id}.
func (*Client) RevokeMobileDevice ¶ added in v0.2.0
RevokeMobileDevice calls DELETE /api/v1/mobile/devices/{id}.
func (*Client) RevokeModelKey ¶ added in v0.2.0
RevokeModelKey calls DELETE /api/v1/models/{name}/keys/{id}.
func (*Client) RevokeNodeCert ¶ added in v0.2.0
RevokeNodeCert calls POST /api/v1/nodes/{id}/revoke-cert.
func (*Client) RevokeOtherSecuritySessions ¶ added in v0.2.0
func (c *Client) RevokeOtherSecuritySessions(ctx context.Context, userID string) (RevokedSessions, error)
RevokeOtherSecuritySessions calls POST /api/v1/security/sessions/revoke-others.
func (*Client) RevokeSCIMToken ¶
RevokeSCIMToken calls DELETE /api/v1/sso/scim/tokens/{id}.
func (*Client) RevokeSecuritySession ¶ added in v0.2.0
RevokeSecuritySession calls DELETE /api/v1/security/sessions/{id}.
func (*Client) RevokeTeamInvite ¶ added in v0.2.0
RevokeTeamInvite calls DELETE /api/v1/teams/{id}/invites/{invite}.
func (*Client) RevokeTrustedDevice ¶ added in v0.2.0
RevokeTrustedDevice calls DELETE /api/v1/auth/trusted-devices/{id}.
func (*Client) RollbackAndLockDeploy ¶
func (c *Client) RollbackAndLockDeploy(ctx context.Context, appName, deployID string, req RollbackToRequest) (DeployTriggerResult, error)
RollbackAndLockDeploy calls POST /api/v1/apps/{name}/deploys/{id}/rollback-lock.
func (*Client) RollbackAppImport ¶ added in v0.2.0
func (c *Client) RollbackAppImport(ctx context.Context, id string, items []string) (AppImportView, error)
RollbackAppImport calls POST .../sessions/{id}/rollback.
func (*Client) RollbackAppImportCutover ¶ added in v0.2.0
func (c *Client) RollbackAppImportCutover(ctx context.Context, session, item, run string) (ImportCutoverRun, error)
RollbackAppImportCutover calls POST .../cutover/runs/{run}/rollback.
func (*Client) RollbackComposeStack ¶ added in v0.2.0
func (c *Client) RollbackComposeStack(ctx context.Context, name string, revision int) (ComposeRollbackResult, error)
RollbackComposeStack calls POST /api/v1/apps/{name}/compose/rollback; revision 0 means the previous one.
func (*Client) RollbackFunction ¶
RollbackFunction calls POST /api/v1/functions/{name}/rollback. An empty to picks the newest earlier version; pin also locks publishing.
func (*Client) RollbackMajorUpgrade ¶ added in v0.2.0
func (c *Client) RollbackMajorUpgrade(ctx context.Context, name, id string) (MajorUpgradeResource, error)
RollbackMajorUpgrade calls POST .../major-upgrades/{id}/rollback.
func (*Client) RollbackSelfUpgradeAttempt ¶
RollbackSelfUpgradeAttempt calls POST .../self-upgrade/attempts/{id}/rollback.
func (*Client) RollbackTakeover ¶
func (c *Client) RollbackTakeover(ctx context.Context, id, reason string) (TakeoverStartResult, error)
RollbackTakeover calls POST /api/v1/migration/takeover/runs/{run}/rollback.
func (*Client) RollbackToDeploy ¶ added in v0.2.0
func (c *Client) RollbackToDeploy(ctx context.Context, appName, deployID string, req RollbackToRequest) (DeployTriggerResult, error)
RollbackToDeploy calls POST /api/v1/apps/{name}/deploys/{deployId}/rollback: redeploys the content that past deploy recorded, pinned by digest.
func (*Client) RotateBuildHook ¶
func (c *Client) RotateBuildHook(ctx context.Context, appName, id string) (BuildHookResource, error)
RotateBuildHook calls POST /api/v1/apps/{name}/build-hooks/{id}/rotate.
func (*Client) RotateDEK ¶
func (c *Client) RotateDEK(ctx context.Context, app string, proof *StepUpProof) (RotateDEKResult, error)
RotateDEK calls POST /api/v1/system/encryption-keys/rotate for one app, or every app when app is empty. It needs the token owner's step-up proof.
func (*Client) RotateDatabasePassword ¶
func (c *Client) RotateDatabasePassword(ctx context.Context, name string, proof *StepUpProof) (DatabasePasswordRotation, error)
RotateDatabasePassword calls POST /api/v1/databases/{name}/password-rotation. It needs the token owner's step-up proof.
func (*Client) RotateDatabaseUser ¶ added in v0.2.0
func (c *Client) RotateDatabaseUser(ctx context.Context, name, role string) (DatabaseCredential, error)
RotateDatabaseUser calls POST /api/v1/databases/{name}/users/{role}/rotate.
func (*Client) RotateEventWebhookSecret ¶
func (c *Client) RotateEventWebhookSecret(ctx context.Context, id string) (EventWebhookResource, error)
RotateEventWebhookSecret calls POST /api/v1/event-webhooks/{id}/rotate-secret.
func (*Client) RotateFunctionKVToken ¶
RotateFunctionKVToken calls POST /api/v1/functions/{name}/kv/token, enabling the store or replacing its token.
func (*Client) RotateGitSourceWebhookSecret ¶ added in v0.2.0
func (c *Client) RotateGitSourceWebhookSecret(ctx context.Context, name string) (GitSourceResource, error)
RotateGitSourceWebhookSecret calls POST /api/v1/apps/{name}/git-source/rotate-webhook-secret: mints a fresh webhook secret without touching repo_url/branch/build config. The returned resource's WebhookSecret is populated this one time, the caller's only chance to see it.
func (*Client) RotateImageUpdateWebhook ¶ added in v0.2.0
func (c *Client) RotateImageUpdateWebhook(ctx context.Context, appName string) (ImageUpdateWebhookResource, error)
RotateImageUpdateWebhook calls POST /api/v1/apps/{name}/auto-update/webhook.
func (*Client) RotateMasterKey ¶
func (c *Client) RotateMasterKey(ctx context.Context, newMasterKey string) (RotateMasterKeyResult, error)
RotateMasterKey calls POST /api/v1/system/master-key/rotate: re-wraps every stored DEK from the control plane's currently active master key to newMasterKey, live, in one atomic step.
func (*Client) RotateModelAPIKey ¶ added in v0.2.0
RotateModelAPIKey calls POST /api/v1/models/{name}/api-key.
func (*Client) RotateModelKey ¶ added in v0.2.0
func (c *Client) RotateModelKey(ctx context.Context, name, id string, grace *time.Duration) (CreatedModelKeyResource, error)
RotateModelKey calls POST /api/v1/models/{name}/keys/{id}/rotate. A nil grace uses the server default; zero retires the old key at once.
func (*Client) RotateNodeMeshKey ¶ added in v0.2.0
RotateNodeMeshKey calls POST /api/v1/nodes/{id}/mesh/rotate-key: generates a fresh WireGuard keypair for id and makes it live immediately. Works for any node currently connected to the target control plane, local or remote (internal/api/mesh.go's own doc comment).
func (*Client) RotatePipelineOIDCKey ¶ added in v0.2.0
func (c *Client) RotatePipelineOIDCKey(ctx context.Context, retireAfter string) (PipelineOIDCRotation, error)
RotatePipelineOIDCKey calls POST /api/v1/pipelines/oidc/rotate-key. retireAfter is a Go duration string (e.g. "1h"); empty uses the control plane's default grace period.
func (*Client) RotatePipelineWebhook ¶
func (c *Client) RotatePipelineWebhook(ctx context.Context, app, name string) (PipelineWebhook, error)
RotatePipelineWebhook calls POST .../pipelines/{name}/webhook/rotate.
func (*Client) RotateSCIMToken ¶
RotateSCIMToken calls POST /api/v1/sso/scim/tokens/{id}/rotate.
func (*Client) RotateSecretNow ¶
func (c *Client) RotateSecretNow(ctx context.Context, name, key string) (SecretRotationPolicyResource, error)
RotateSecretNow calls POST .../secrets/{key}/rotation/rotate.
func (*Client) RotateSecretValue ¶
func (c *Client) RotateSecretValue(ctx context.Context, name, key, value string) (SecretRotationPolicyResource, error)
RotateSecretValue calls POST /api/v1/apps/{name}/secrets/{key}/rotate. An empty value asks the control plane to generate one. The app is not restarted.
func (*Client) RotateVaultCredential ¶
func (c *Client) RotateVaultCredential(ctx context.Context, credential string) (VaultSettingsResource, error)
RotateVaultCredential calls POST /api/v1/settings/vault/rotate-credential.
func (*Client) RunBucketLifecycle ¶
RunBucketLifecycle calls POST /api/v1/storage/buckets/{id}/lifecycle/run.
func (*Client) RunCleanup ¶
func (c *Client) RunCleanup(ctx context.Context, id string, days *int, dryRun bool) (CleanupRunResult, error)
RunCleanup calls POST /api/v1/cleanup/{id}/run. A dry run records what would be deleted and writes nothing.
func (*Client) RunControlPlaneDrill ¶ added in v0.2.0
RunControlPlaneDrill calls POST /api/v1/system/control-plane-dr/drill.
func (*Client) RunControlPlaneOffboxBackup ¶ added in v0.2.0
RunControlPlaneOffboxBackup calls POST /api/v1/system/control-plane-dr/run. The backup runs in the background; poll GetControlPlaneDR for the result.
func (*Client) RunGoLive ¶ added in v0.2.0
func (c *Client) RunGoLive(ctx context.Context, app, domain string, req GoLiveRequest) (GoLiveResult, error)
RunGoLive calls POST .../domains/{domain}/go-live.
func (*Client) RunImageGC ¶
func (c *Client) RunImageGC(ctx context.Context, req ImageGCRequest) (ImageGCResource, error)
RunImageGC calls POST /api/v1/images/gc.
func (*Client) RunJanitor ¶
RunJanitor calls POST /api/v1/system/janitor/run. dryRun previews; force false waits for disk pressure before the size-driven stages run.
func (*Client) RunJob ¶ added in v0.2.0
RunJob calls POST .../jobs/{id}/run and returns the started run's ID in the response's RunID.
func (*Client) RunPipelineSync ¶ added in v0.2.0
RunPipelineSync calls POST /api/v1/apps/{app}/pipeline-sync.
func (*Client) RunScheduledTask ¶
func (c *Client) RunScheduledTask(ctx context.Context, name, id string) (ScheduledTaskResource, error)
RunScheduledTask calls POST /api/v1/apps/{name}/scheduled-tasks/{id}/run: triggers an immediate run and returns as soon as it starts, not once the command finishes.
func (*Client) RunSecretScan ¶
RunSecretScan calls POST /api/v1/apps/{name}/secret-scan/run.
func (*Client) SAMLSPMetadata ¶
SAMLSPMetadata fetches the public SP metadata XML for a connection.
func (*Client) SSHHostKeys ¶
func (c *Client) SSHHostKeys(ctx context.Context, req AppImportSSHProbe) (AppImportSSHResult, error)
SSHHostKeys calls POST /api/v1/migration/apps/ssh/host-keys.
func (*Client) SaveAppAsTemplate ¶ added in v0.2.0
func (c *Client) SaveAppAsTemplate(ctx context.Context, name string, req SaveAppAsTemplateRequest) (CustomTemplateDetail, error)
SaveAppAsTemplate calls POST /api/v1/apps/{name}/save-as-template (internal/api/service_templates_custom.go): derives a compose.yaml from name's current desired state and saves it as a reusable, operator-defined template. No secret, database, or vault-backed env value is ever captured, only the key name (see compose. FromDesiredServices' own doc comment); result.RequiredEnvKeys lists exactly which keys will need a real value before this template can deploy.
func (*Client) SaveConsoleView ¶
SaveConsoleView calls POST /api/v1/resources/views.
func (*Client) SaveSearch ¶
SaveSearch calls POST /api/v1/search/saved.
func (*Client) ScanAppEnv ¶
func (c *Client) ScanAppEnv(ctx context.Context, name string, vars map[string]string) (EnvScanResponse, error)
ScanAppEnv calls POST /api/v1/apps/{name}/env/scan.
func (*Client) ScanDeployment ¶ added in v0.2.0
ScanDeployment calls POST /api/v1/apps/{name}/deployments/{id}/scan.
func (*Client) Search ¶
func (c *Client) Search(ctx context.Context, q, kind string, limit int, cursor string) (SearchResponse, error)
Search calls GET /api/v1/search.
func (*Client) SearchAppLogs ¶ added in v0.2.0
func (c *Client) SearchAppLogs(ctx context.Context, name string, s LogSearch) (LogSearchResource, error)
SearchAppLogs calls GET /api/v1/apps/{name}/logs with the filter params.
func (*Client) SelectMigrationItems ¶ added in v0.2.0
func (c *Client) SelectMigrationItems(ctx context.Context, id string, items []HubSelection) (HubSession, error)
SelectMigrationItems updates the selection and names of a session.
func (*Client) SendAIChatMessage ¶ added in v0.2.0
func (c *Client) SendAIChatMessage(ctx context.Context, sessionID, content string, onEvent func(AIChatSSEEvent) error) error
SendAIChatMessage calls POST /api/v1/ai/sessions/{id}/messages: sends content as a new user message and streams the assistant's turn, calling onEvent for every SSE event in arrival order (see AIChatSSEEvent's own doc comment for the four shapes). Returns once the server sends "done" or the connection ends, matching streamLogEvents' own contract.
func (*Client) SendFormTest ¶
SendFormTest posts a sample submission, marked as a test, through the real storage path.
func (*Client) SendTestEmail ¶
SendTestEmail calls POST /api/v1/settings/email/test; an empty to means the signed-in user's own address.
func (*Client) SetAIChoice ¶
func (c *Client) SetAIChoice(ctx context.Context, req AIChoiceRequest) (AIAssistantSettingsResource, error)
SetAIChoice calls PUT /api/v1/settings/ai-assistant.
func (*Client) SetAIProvider ¶
func (c *Client) SetAIProvider(ctx context.Context, id string, req SetAIProviderRequest) (AIProviderResource, error)
SetAIProvider calls PUT /api/v1/settings/ai-assistant/providers/{id}.
func (*Client) SetAdvisorFindingState ¶ added in v0.2.0
func (c *Client) SetAdvisorFindingState(ctx context.Context, id, verb, duration string) (AdvisorFinding, error)
SetAdvisorFindingState dismisses, snoozes (for duration) or restores a finding.
func (*Client) SetAppAbuse ¶
SetAppAbuse calls PUT /api/v1/apps/{name}/abuse; it replaces the whole policy.
func (*Client) SetAppAutoscale ¶
func (c *Client) SetAppAutoscale(ctx context.Context, app string, u AppAutoscaleUpdate) (AppAutoscale, error)
SetAppAutoscale calls PUT /api/v1/apps/{name}/autoscale.
func (*Client) SetAppBranchEnv ¶ added in v0.2.0
func (c *Client) SetAppBranchEnv(ctx context.Context, name, branchPattern, key, value string, secret bool) (AppBranchEnvOverride, error)
SetAppBranchEnv calls POST /api/v1/apps/{name}/branch-env: declares (or, for the same branchPattern+key, replaces) one env var's value for name, applied only when a preview built from a matching branch is deployed.
func (*Client) SetAppBudget ¶
func (c *Client) SetAppBudget(ctx context.Context, app string, u AppBudgetUpdate) (AppBudget, error)
SetAppBudget calls PUT /api/v1/apps/{name}/budget.
func (*Client) SetAppBuildLimits ¶
func (c *Client) SetAppBuildLimits(ctx context.Context, app string, req BuildLimitsRequest) (AppBuildLimits, error)
SetAppBuildLimits calls PUT /api/v1/apps/{name}/build-limits.
func (*Client) SetAppContext ¶
func (c *Client) SetAppContext(ctx context.Context, name string, cfg AppContextConfig) (AppContextConfig, error)
SetAppContext calls PUT /api/v1/apps/{name}/contexts: it replaces one context's overrides.
func (*Client) SetAppDatabaseAttachment ¶
func (c *Client) SetAppDatabaseAttachment(ctx context.Context, name string, req SetAppDatabaseRequest) (AppDatabaseResource, error)
SetAppDatabaseAttachment calls PUT /api/v1/apps/{name}/database: attaches an existing managed database to name as a real, persisted connection env var source.
func (*Client) SetAppEgressPolicy ¶ added in v0.2.0
func (c *Client) SetAppEgressPolicy(ctx context.Context, name string, req SetAppEgressPolicyRequest) (AppEgressPolicyResource, error)
SetAppEgressPolicy calls PUT /api/v1/apps/{name}/egress-policy: sets (or replaces) name's outbound network allowlist.
func (*Client) SetAppEnvironment ¶
func (c *Client) SetAppEnvironment(ctx context.Context, name, environmentID string) (AppResource, error)
SetAppEnvironment calls PUT /api/v1/apps/{name}/environment. An empty environmentID clears the assignment. Returns the updated app.
func (*Client) SetAppExposure ¶
func (c *Client) SetAppExposure(ctx context.Context, name string, req AppExposureRequest) (AppExposureResource, error)
SetAppExposure calls PUT /api/v1/apps/{name}/exposure.
func (*Client) SetAppGitHubActions ¶
func (c *Client) SetAppGitHubActions(ctx context.Context, name string, req AppGitHubActionsResource) (AppGitHubActionsResource, error)
SetAppGitHubActions calls PUT /api/v1/apps/{name}/github-actions.
func (*Client) SetAppHealth ¶ added in v0.2.0
func (c *Client) SetAppHealth(ctx context.Context, name string, health ServiceHealth) (AppHealthResource, error)
SetAppHealth calls PUT /api/v1/apps/{name}/health, replacing name's readiness and liveness config as a whole.
func (*Client) SetAppIngressLimits ¶
func (c *Client) SetAppIngressLimits(ctx context.Context, app string, maxBodyBytes *int64) (AppIngressLimits, error)
SetAppIngressLimits calls PUT /api/v1/apps/{name}/ingress-limits; a nil cap clears the override.
func (*Client) SetAppMaintenance ¶
func (c *Client) SetAppMaintenance(ctx context.Context, name string, req SetDomainMaintenanceRequest) (AppMaintenanceResource, error)
SetAppMaintenance calls PUT /api/v1/apps/{name}/maintenance: maintenance on every domain, all or none.
func (*Client) SetAppNode ¶ added in v0.2.0
SetAppNode calls PUT /api/v1/apps/{name}/node: an instant placement change (internal/api's handleSetAppNode), no volumes involved. An empty nodeID moves the app back to the control plane's own local node. Returns the updated app. See MoveAppWithVolumes for the same move, taking the app's named volumes along with it.
func (*Client) SetAppPreviewEnvOverride ¶ added in v0.2.0
func (c *Client) SetAppPreviewEnvOverride(ctx context.Context, name, key, value string) (AppPreviewEnvOverride, error)
SetAppPreviewEnvOverride calls PUT /api/v1/apps/{name}/preview-env/{key}: declares (or replaces) one env var's preview-specific value on an app that already exists, applied only the next time a preview environment is created from it.
func (*Client) SetAppProject ¶
SetAppProject calls PUT /api/v1/apps/{name}/project. An empty projectID clears the assignment. Returns the updated app.
func (*Client) SetAppSchedule ¶ added in v0.2.0
func (c *Client) SetAppSchedule(ctx context.Context, name string, req SetAppScheduleRequest) (AppScheduleResource, error)
SetAppSchedule calls PUT /api/v1/apps/{name}/schedule: sets or replaces the app's recurring redeploy schedule.
func (*Client) SetAppSleep ¶ added in v0.2.0
func (c *Client) SetAppSleep(ctx context.Context, appName string, idleMinutes int) (AppSleepResource, error)
SetAppSleep calls PUT /api/v1/apps/{name}/sleep; 0 minutes turns sleeping off.
func (*Client) SetAppSleepHold ¶ added in v0.2.0
func (c *Client) SetAppSleepHold(ctx context.Context, appName string, idleMinutes int, hold bool) (AppSleepResource, error)
SetAppSleepHold calls PUT /api/v1/apps/{name}/sleep with function mode on or off.
func (*Client) SetAppStorage ¶ added in v0.2.0
func (c *Client) SetAppStorage(ctx context.Context, name, storageTargetID string) (AppStorageResource, error)
SetAppStorage calls PUT /api/v1/apps/{name}/storage: attaches an already-connected backup target to name as its object-storage credential source.
func (*Client) SetAppVaultEnv ¶ added in v0.2.0
func (c *Client) SetAppVaultEnv(ctx context.Context, name, key string, req AppVaultEnvRef) (AppVaultEnvRef, error)
SetAppVaultEnv calls PUT /api/v1/apps/{name}/vault-env/{key}: declares (or replaces) one env var as resolving live from the platform's configured external Vault instance, for an app that already exists.
func (*Client) SetAppVolumes ¶ added in v0.2.0
func (c *Client) SetAppVolumes(ctx context.Context, name string, req SetAppVolumesRequest) (SetAppVolumesResponse, error)
SetAppVolumes calls PUT /api/v1/apps/{name}/volumes: attaches (or removes) a named Docker volume outside a redeploy, replacing name's whole desired volume list with req.Volumes.
func (*Client) SetArchivePolicy ¶
func (c *Client) SetArchivePolicy(ctx context.Context, p ArchivePolicy) (ArchivePolicy, error)
SetArchivePolicy calls PUT /api/v1/archives/policy.
func (*Client) SetAutoRollback ¶ added in v0.2.0
func (c *Client) SetAutoRollback(ctx context.Context, appName string, enabled bool) (AutoRollbackSettingResource, error)
SetAutoRollback calls PUT /api/v1/apps/{name}/auto-rollback, opting appName into (or out of) automatic rollback on a crashloop. Off by default.
func (*Client) SetAutoRollbackSLOBurn ¶ added in v0.2.0
func (c *Client) SetAutoRollbackSLOBurn(ctx context.Context, appName, mode string) (AutoRollbackSLOBurnSettingResource, error)
SetAutoRollbackSLOBurn calls PUT /api/v1/apps/{name}/auto-rollback-slo-burn, setting appName's mode for automatic rollback on an SLO burn-rate alert. mode is one of "off", "auto", "dry_run", "pause_for_human"; "off" by default.
func (*Client) SetBackupSchedule ¶
func (c *Client) SetBackupSchedule(ctx context.Context, name string, req SetBackupScheduleRequest) (BackupScheduleResource, error)
SetBackupSchedule calls PUT /api/v1/databases/{name}/backup-schedule: configures a recurring backup, replacing any previously configured schedule for name.
func (*Client) SetBackupTargetEncryption ¶
func (c *Client) SetBackupTargetEncryption(ctx context.Context, id string, enabled bool) (BackupTargetEncryptionResource, error)
SetBackupTargetEncryption calls PUT /api/v1/backup-targets/{id}/encryption (root only).
func (*Client) SetBetaFeature ¶ added in v0.2.0
func (c *Client) SetBetaFeature(ctx context.Context, feature string, enabled bool) (BetaFeature, error)
SetBetaFeature calls PUT /api/v1/settings/beta-features/{feature}.
func (*Client) SetBranchDeploySettings ¶
func (c *Client) SetBranchDeploySettings(ctx context.Context, name, mode string, patterns []string) (BranchDeploys, error)
SetBranchDeploySettings calls PUT /api/v1/apps/{name}/branch-deploys.
func (*Client) SetBuildCache ¶ added in v0.2.0
func (c *Client) SetBuildCache(ctx context.Context, req BuildCacheRequest) (BuildCacheSetting, error)
SetBuildCache calls PUT /api/v1/build-cache.
func (*Client) SetBuildLimits ¶
func (c *Client) SetBuildLimits(ctx context.Context, req BuildLimitsRequest) (BuildLimits, error)
SetBuildLimits calls PUT /api/v1/build-limits.
func (*Client) SetCanaryWeight ¶ added in v0.2.0
func (c *Client) SetCanaryWeight(ctx context.Context, appName string, weight int) (CanaryResource, error)
SetCanaryWeight calls PUT /api/v1/apps/{name}/canary; 0 pauses the canary.
func (*Client) SetCancelSuperseded ¶ added in v0.2.0
func (c *Client) SetCancelSuperseded(ctx context.Context, appName string, enabled bool) (CancelSupersededResource, error)
SetCancelSuperseded calls PUT /api/v1/apps/{name}/cancel-superseded.
func (*Client) SetChannelQuietHours ¶
func (c *Client) SetChannelQuietHours(ctx context.Context, id string, q QuietHoursResource) (QuietHoursResource, error)
SetChannelQuietHours calls PUT /api/v1/notification-channels/{id}/quiet-hours.
func (*Client) SetCleanupMode ¶
func (c *Client) SetCleanupMode(ctx context.Context, id, mode string) (CleanupTargetResource, error)
SetCleanupMode calls PUT /api/v1/cleanup/{id}/mode with off, preview or on.
func (*Client) SetCloudflareDNS ¶
func (c *Client) SetCloudflareDNS(ctx context.Context, req UpdateCloudflareDNSRequest) (CloudflareDNSResource, error)
SetCloudflareDNS calls PUT /api/v1/settings/cloudflare-dns.
func (*Client) SetCloudflareTunnel ¶
func (c *Client) SetCloudflareTunnel(ctx context.Context, req UpdateCloudflareTunnelRequest) (CloudflareTunnelResource, error)
SetCloudflareTunnel calls PUT /api/v1/settings/cloudflare-tunnel.
func (*Client) SetDNSProvider ¶
func (c *Client) SetDNSProvider(ctx context.Context, app string, req DNSProviderRequest) (DNSProviderState, error)
SetDNSProvider writes the instance default, or an app's override when app is set.
func (*Client) SetDNSProviderPlugin ¶
SetDNSProviderPlugin calls PUT /api/v1/settings/dns-provider-plugin. An empty name selects the built-in client.
func (*Client) SetDatabaseCatalogRemote ¶
func (c *Client) SetDatabaseCatalogRemote(ctx context.Context, enabled bool) (DBCatalogStatus, error)
SetDatabaseCatalogRemote calls PUT /api/v1/settings/database-catalog.
func (*Client) SetDatabaseNode ¶ added in v0.2.0
func (c *Client) SetDatabaseNode(ctx context.Context, name, nodeID string) (DatabaseResource, error)
SetDatabaseNode calls PUT /api/v1/databases/{name}/node (internal/api/databases.go's handleSetDatabaseNode), the database counterpart to SetAppNode: an empty nodeID moves the database back to this control plane's own local node. Reuses SetAppNodeRequest, an identical {node_id} body shape on both routes.
func (*Client) SetDatabasePasswordRotationInterval ¶
func (c *Client) SetDatabasePasswordRotationInterval(ctx context.Context, name string, days int) (DatabasePasswordRotation, error)
SetDatabasePasswordRotationInterval calls PUT .../password-rotation/policy; 0 turns the schedule off.
func (*Client) SetDatabaseProject ¶
func (c *Client) SetDatabaseProject(ctx context.Context, name, projectID string) (DatabaseResource, error)
SetDatabaseProject calls PUT /api/v1/databases/{name}/project. An empty projectID clears the assignment. Returns the updated database.
func (*Client) SetDatabasePublicAccess ¶
func (c *Client) SetDatabasePublicAccess(ctx context.Context, name string, port int, bindAddress string) (DatabasePublicAccessResource, error)
SetDatabasePublicAccess calls PUT /api/v1/databases/{name}/public-access: exposes name on the host at port (0 requests auto-assignment) bound to bindAddress ("" requests the server's own default, "private").
func (*Client) SetDatabaseRequireTLS ¶ added in v0.2.0
SetDatabaseRequireTLS calls PUT /api/v1/databases/{name}/network/tls.
func (*Client) SetDatabaseResources ¶
func (c *Client) SetDatabaseResources(ctx context.Context, name string, resources *ServiceResources) (DatabaseResource, error)
SetDatabaseResources calls PUT /api/v1/databases/{name}/resources: applies memory/CPU limits to name, replacing whatever was set before.
func (*Client) SetDatabaseScope ¶ added in v0.2.0
func (c *Client) SetDatabaseScope(ctx context.Context, name, scope string, dryRun, confirm bool) (DatabaseScopeResult, error)
SetDatabaseScope calls PUT /api/v1/databases/{name}/network/scope. With dryRun nothing changes. A scope that would cut apps off is not applied without confirm; the result then has ConfirmRequired set.
func (*Client) SetDatabaseTLSEnabled ¶
func (c *Client) SetDatabaseTLSEnabled(ctx context.Context, name string, enabled bool) (DatabaseTLSToggle, error)
SetDatabaseTLSEnabled calls PUT /api/v1/databases/{name}/tls: server TLS for MySQL, MariaDB, MongoDB and Redis.
func (*Client) SetDatabaseUpgradePolicy ¶ added in v0.2.0
func (c *Client) SetDatabaseUpgradePolicy(ctx context.Context, name string, p DBUpgradePolicy) (DBUpgradePolicy, error)
SetDatabaseUpgradePolicy calls PUT /api/v1/databases/{name}/upgrade-policy.
func (*Client) SetDatabaseUserLogin ¶ added in v0.2.0
SetDatabaseUserLogin calls POST .../users/{role}/disable or /enable.
func (*Client) SetDatabaseVersion ¶ added in v0.2.0
func (c *Client) SetDatabaseVersion(ctx context.Context, name, version string) (DatabaseResource, error)
SetDatabaseVersion calls PUT /api/v1/databases/{name}/version: a minor or patch image change over the same data volume.
func (*Client) SetDefaultAlertEnabled ¶
func (c *Client) SetDefaultAlertEnabled(ctx context.Context, id string, enabled bool) (DefaultAlert, error)
SetDefaultAlertEnabled calls PUT /api/v1/alert-defaults/{id}.
func (*Client) SetDefaultGitConnection ¶
func (c *Client) SetDefaultGitConnection(ctx context.Context, id string) (GitProviderConnectionResource, error)
SetDefaultGitConnection calls POST /api/v1/git-connections/{id}/default.
func (*Client) SetDeployFreeze ¶ added in v0.2.0
func (c *Client) SetDeployFreeze(ctx context.Context, name string, windows []FreezeWindowResource) (DeployFreezeResource, error)
SetDeployFreeze calls PUT /api/v1/apps/{name}/deploy-freeze, replacing the app's windows; an empty list clears them.
func (*Client) SetDeployPolicy ¶
func (c *Client) SetDeployPolicy(ctx context.Context, scope, id string, rules map[string]DeployPolicyRule) (DeployPolicy, error)
SetDeployPolicy calls PUT /api/v1/deploy-policies/{scope}/{id}.
func (*Client) SetDeploySafety ¶ added in v0.2.0
func (c *Client) SetDeploySafety(ctx context.Context, appName string, overrides DeploySafetyOverrides) (DeploySafetyResource, error)
SetDeploySafety calls PUT /api/v1/apps/{name}/deploy-safety, replacing every override.
func (*Client) SetDomainAliases ¶ added in v0.2.0
func (c *Client) SetDomainAliases(ctx context.Context, name, domain string, req AliasesRequest) (DomainRedirectsResource, error)
SetDomainAliases calls PUT .../domains/{domain}/redirects/aliases.
func (*Client) SetDomainAuthGate ¶ added in v0.2.0
func (c *Client) SetDomainAuthGate(ctx context.Context, name, domain string, req SetDomainAuthGateRequest) (DomainAuthGateResource, error)
SetDomainAuthGate calls PUT /api/v1/apps/{name}/domains/{domain}/auth-gate.
func (*Client) SetDomainBasicAuth ¶
func (c *Client) SetDomainBasicAuth(ctx context.Context, name, domain string, req SetDomainBasicAuthRequest) (DomainBasicAuthResource, error)
SetDomainBasicAuth calls PUT /api/v1/apps/{name}/domains/{domain}/auth: enables HTTP Basic Auth on domain, enforced by Caddy on the next ingress reconcile pass.
func (*Client) SetDomainCache ¶ added in v0.2.0
func (c *Client) SetDomainCache(ctx context.Context, name, domain string, spec trafficpolicy.Cache) (CachePolicyResource, error)
SetDomainCache calls PUT .../domains/{domain}/cache.
func (*Client) SetDomainCanonical ¶ added in v0.2.0
func (c *Client) SetDomainCanonical(ctx context.Context, name, domain string, req CanonicalRequest) (DomainRedirectsResource, error)
SetDomainCanonical calls POST .../domains/{domain}/redirects/canonical.
func (*Client) SetDomainErrorPage ¶ added in v0.2.0
func (c *Client) SetDomainErrorPage(ctx context.Context, name, domain string, req SetDomainErrorPageRequest) (DomainErrorPagesResource, error)
SetDomainErrorPage calls PUT /api/v1/apps/{name}/domains/{domain}/error-pages: upserts one status-code-to-body mapping for domain, enforced by Caddy on the next ingress reconcile pass.
func (*Client) SetDomainForwarders ¶ added in v0.2.0
func (c *Client) SetDomainForwarders(ctx context.Context, name, domain string, spec trafficpolicy.Forwarders) (ForwardersPolicyResource, error)
SetDomainForwarders calls PUT .../domains/{domain}/forwarders.
func (*Client) SetDomainGeo ¶ added in v0.2.0
func (c *Client) SetDomainGeo(ctx context.Context, name, domain string, spec trafficpolicy.Geo) (GeoPolicyResource, error)
SetDomainGeo calls PUT .../domains/{domain}/geo.
func (*Client) SetDomainHeaders ¶ added in v0.2.0
func (c *Client) SetDomainHeaders(ctx context.Context, name, domain string, spec trafficpolicy.Headers) (HeadersPolicyResource, error)
SetDomainHeaders calls PUT .../domains/{domain}/headers.
func (*Client) SetDomainMaintenance ¶
func (c *Client) SetDomainMaintenance(ctx context.Context, name, domain string) (DomainMaintenanceResource, error)
SetDomainMaintenance calls PUT /api/v1/apps/{name}/domains/{domain}/maintenance: enables maintenance mode on domain, enforced by Caddy on the next ingress reconcile pass.
func (*Client) SetDomainMaintenanceOptions ¶
func (c *Client) SetDomainMaintenanceOptions(ctx context.Context, name, domain string, req SetDomainMaintenanceRequest) (DomainMaintenanceResource, error)
SetDomainMaintenanceOptions calls PUT /api/v1/apps/{name}/domains/{domain}/maintenance with page copy, an end time and bypass rules.
func (*Client) SetDomainRedirect ¶ added in v0.2.0
func (c *Client) SetDomainRedirect(ctx context.Context, name, domain string, req SetDomainRedirectRequest) (DomainRedirectResource, error)
SetDomainRedirect calls PUT /api/v1/apps/{name}/domains/{domain}/redirect: configures domain to redirect to a target URL, enforced by Caddy on the next ingress reconcile pass.
func (*Client) SetDomainRedirectSettings ¶ added in v0.2.0
func (c *Client) SetDomainRedirectSettings(ctx context.Context, name, domain string, s trafficpolicy.Redirects) (DomainRedirectsResource, error)
SetDomainRedirectSettings calls PUT .../domains/{domain}/redirects.
func (*Client) SetDomainSearchVisibility ¶ added in v0.2.0
func (c *Client) SetDomainSearchVisibility(ctx context.Context, name, domain string, hidden bool) (DomainSearchVisibilityResource, error)
SetDomainSearchVisibility calls PUT .../domains/{domain}/search-visibility.
func (*Client) SetDomainShield ¶
func (c *Client) SetDomainShield(ctx context.Context, name, domain string, spec trafficpolicy.Shield) (ShieldPolicyResource, error)
SetDomainShield calls PUT .../domains/{domain}/shield.
func (*Client) SetDomainTLSCert ¶
func (c *Client) SetDomainTLSCert(ctx context.Context, name, domain string, req SetDomainTLSCertRequest) (DomainTLSCertResource, error)
SetDomainTLSCert calls PUT /api/v1/apps/{name}/domains/{domain}/tls-cert: uploads a BYO certificate for domain, used by Caddy in place of automatic ACME/ internal issuance on the next ingress reconcile pass.
func (*Client) SetDomainWAF ¶ added in v0.2.0
func (c *Client) SetDomainWAF(ctx context.Context, name, domain string, req SetDomainWAFRequest) (DomainWAFResource, error)
SetDomainWAF calls PUT /api/v1/apps/{name}/domains/{domain}/waf: sets WAF and/or rate-limit configuration for domain, enforced by Caddy on the next ingress reconcile pass.
func (*Client) SetEnvironmentEnv ¶
func (c *Client) SetEnvironmentEnv(ctx context.Context, id string, vars map[string]string) (map[string]string, error)
SetEnvironmentEnv calls PUT /api/v1/environments/{id}/env: a full replace, mirroring PUT /apps/{name}'s own env field semantics.
func (*Client) SetErrorStatus ¶
func (c *Client) SetErrorStatus(ctx context.Context, app, fingerprint, status string) (ErrorIssueDetail, error)
SetErrorStatus calls PATCH /api/v1/apps/{name}/errors/{fingerprint}.
func (*Client) SetExecAccess ¶ added in v0.2.0
func (c *Client) SetExecAccess(ctx context.Context, appName string, enabled bool) (ExecAccessResource, error)
SetExecAccess calls PUT /api/v1/apps/{name}/exec-access, opting appName into (or out of) shell/exec access.
func (*Client) SetFirewallEdgeSettings ¶
func (c *Client) SetFirewallEdgeSettings(ctx context.Context, s edgefw.Settings) (FirewallEdgeSettings, error)
SetFirewallEdgeSettings calls PUT .../firewall/edge/settings.
func (*Client) SetFormFields ¶
func (c *Client) SetFormFields(ctx context.Context, app, form string, schema json.RawMessage) (Form, error)
SetFormFields replaces the form's designer schema (fields, success message, allowed origins).
func (*Client) SetFunctionRoute ¶
SetFunctionRoute calls PUT /api/v1/functions/{name}/route: serve the function at domain/path.
func (*Client) SetFunctionSettings ¶
func (c *Client) SetFunctionSettings(ctx context.Context, name string, u FunctionSettingsUpdate) (FunctionSettings, error)
SetFunctionSettings calls PUT /api/v1/functions/{name}/settings.
func (*Client) SetGitDeploySettings ¶ added in v0.2.0
func (c *Client) SetGitDeploySettings(ctx context.Context, name string, req SetGitDeploySettingsRequest) (GitDeploySettings, error)
SetGitDeploySettings calls PUT /api/v1/apps/{name}/git-source/deploy-settings.
func (*Client) SetGitRemoteBranch ¶
SetGitRemoteBranch calls PUT /api/v1/apps/{name}/git-remote.
func (*Client) SetGitSource ¶
func (c *Client) SetGitSource(ctx context.Context, name string, req SetGitSourceRequest) (GitSourceResource, error)
SetGitSource calls PUT /api/v1/apps/{name}/git-source: connects a repo (creating a new webhook secret) the first time it's called for an app, or edits the connection on every call after.
func (*Client) SetGitSourceBuild ¶ added in v0.2.0
func (c *Client) SetGitSourceBuild(ctx context.Context, name string, req SetGitSourceBuildRequest) (GitSourceResource, error)
SetGitSourceBuild calls PUT /api/v1/apps/{name}/git-source/build.
func (*Client) SetGlobalDeployFreeze ¶ added in v0.2.0
func (c *Client) SetGlobalDeployFreeze(ctx context.Context, windows []FreezeWindowResource) (DeployFreezeResource, error)
SetGlobalDeployFreeze calls PUT /api/v1/settings/deploy-freeze, replacing the fleet-wide windows; an empty list clears them.
func (*Client) SetGoogleCloudDNS ¶
func (c *Client) SetGoogleCloudDNS(ctx context.Context, req UpdateGoogleCloudDNSRequest) (GoogleCloudDNSResource, error)
SetGoogleCloudDNS calls PUT /api/v1/settings/google-cloud-dns.
func (*Client) SetHSTS ¶
SetHSTS calls PUT /api/v1/security/hsts (root); enabling is refused unless the probe passes.
func (*Client) SetHostFirewall ¶ added in v0.2.0
func (c *Client) SetHostFirewall(ctx context.Context, enable bool, dryRun bool) (HostFirewallResource, error)
SetHostFirewall calls POST /api/v1/firewall/host/enable or /disable.
func (*Client) SetImageAutoUpdate ¶ added in v0.2.0
func (c *Client) SetImageAutoUpdate(ctx context.Context, appName string, enabled bool) (ImageAutoUpdateResource, error)
SetImageAutoUpdate calls PUT /api/v1/apps/{name}/auto-update.
func (*Client) SetInboxPrefs ¶
func (c *Client) SetInboxPrefs(ctx context.Context, p InboxPrefs) (InboxPrefs, error)
SetInboxPrefs calls PUT /api/v1/inbox/preferences.
func (*Client) SetJobEnabled ¶ added in v0.2.0
func (c *Client) SetJobEnabled(ctx context.Context, app, id string, enabled bool) (ScheduledTaskResource, error)
SetJobEnabled calls POST .../jobs/{id}/enable or /disable.
func (*Client) SetLoadBalancer ¶ added in v0.2.0
func (c *Client) SetLoadBalancer(ctx context.Context, name string, cfg LoadBalancerConfig) (LoadBalancerResource, error)
SetLoadBalancer calls PUT /api/v1/apps/{name}/loadbalancer.
func (*Client) SetLoadBalancerUpstreamState ¶ added in v0.2.0
func (c *Client) SetLoadBalancerUpstreamState(ctx context.Context, name, id, state string) (LoadBalancerUpstreamStatus, error)
SetLoadBalancerUpstreamState calls PUT /api/v1/apps/{name}/loadbalancer/upstreams/{id}.
func (*Client) SetLogArchivePolicy ¶ added in v0.2.0
func (c *Client) SetLogArchivePolicy(ctx context.Context, req LogArchivePolicyRequest) (LogArchivePolicy, error)
SetLogArchivePolicy calls PUT /api/v1/log-archive/policy.
func (*Client) SetLogBudget ¶
SetLogBudget calls PUT /api/v1/apps/{name}/log-budget.
func (*Client) SetLogDrain ¶
func (c *Client) SetLogDrain(ctx context.Context, name string, req SetLogDrainRequest) (LogDrainResource, error)
SetLogDrain calls PUT /api/v1/apps/{name}/log-drain.
func (*Client) SetLogPipeline ¶
func (c *Client) SetLogPipeline(ctx context.Context, app string, rules []LogPipelineRule) (LogPipeline, error)
SetLogPipeline calls PUT /api/v1/apps/{name}/log-pipeline.
func (*Client) SetMailTemplate ¶
func (c *Client) SetMailTemplate(ctx context.Context, key string, t MailTemplateBody) (MailTemplate, error)
SetMailTemplate calls PUT /api/v1/mail/templates/{key}.
func (*Client) SetModelEndpointCredential ¶
func (c *Client) SetModelEndpointCredential(ctx context.Context, name, credential string) (ModelDetail, error)
SetModelEndpointCredential calls PUT /api/v1/models/{name}/endpoint/credential. An empty credential removes it.
func (*Client) SetModelEndpointRouting ¶
func (c *Client) SetModelEndpointRouting(ctx context.Context, name, fallback, fallbackRef string, budgetMS int64) (ModelDetail, error)
SetModelEndpointRouting calls PUT /api/v1/models/{name}/endpoint/routing. An empty fallback turns the policy off.
func (*Client) SetModelHFToken ¶ added in v0.2.0
SetModelHFToken calls PUT /api/v1/models/{name}/hf-token.
func (*Client) SetModelResidency ¶ added in v0.2.0
func (c *Client) SetModelResidency(ctx context.Context, name, residency string, idleTTLSeconds int) error
SetModelResidency calls PUT /api/v1/models/{name}/residency.
func (*Client) SetModelSwapGroup ¶ added in v0.2.0
SetModelSwapGroup calls PUT /api/v1/models/{name}/swap-group. An empty group clears it.
func (*Client) SetNodeFailureDomain ¶
func (c *Client) SetNodeFailureDomain(ctx context.Context, id string, req SetNodeFailureDomainRequest) (NodeResource, error)
SetNodeFailureDomain calls PUT /api/v1/nodes/{id}/region: updates the node's region, provider and zone labels, leaving nil fields unchanged.
func (*Client) SetNodeFailurePolicy ¶
func (c *Client) SetNodeFailurePolicy(ctx context.Context, id, mode string, graceSeconds int) (NodeFailureStatus, error)
SetNodeFailurePolicy calls PUT /api/v1/nodes/{id}/failure-policy.
func (*Client) SetNodeLabels ¶ added in v0.2.0
func (c *Client) SetNodeLabels(ctx context.Context, id string, labels map[string]string) (NodeLabels, error)
SetNodeLabels calls PUT /api/v1/nodes/{id}/labels, replacing the set.
func (*Client) SetNodeProviderCredential ¶ added in v0.2.0
func (c *Client) SetNodeProviderCredential(ctx context.Context, req SetNodeProviderCredentialRequest) (NodeProviderResource, error)
SetNodeProviderCredential calls POST /api/v1/node-providers.
func (*Client) SetNodeWorkloads ¶
func (c *Client) SetNodeWorkloads(ctx context.Context, id string, req SetNodeWorkloadsRequest) (NodeResource, error)
SetNodeWorkloads calls PUT /api/v1/nodes/{id}/workloads: a full replace of both workload flags, not a partial patch, matching handleSetNodeWorkloads' own contract.
func (*Client) SetOAuthSSOPolicy ¶
func (c *Client) SetOAuthSSOPolicy(ctx context.Context, provider string, req OAuthSSOPolicyRequest) (OAuthSSOPolicy, error)
SetOAuthSSOPolicy calls PUT /api/v1/sso/oidc/{provider}.
func (*Client) SetOrganizationEnv ¶
func (c *Client) SetOrganizationEnv(ctx context.Context, id string, vars map[string]string) (map[string]string, error)
SetOrganizationEnv calls PUT /api/v1/organizations/{id}/env: a full replace, mirroring PUT /apps/{name}'s own env field semantics.
func (*Client) SetPRPreviewEnv ¶
func (c *Client) SetPRPreviewEnv(ctx context.Context, name string, pr int, key, value string, secret bool) (PRPreviewEnvOverride, error)
SetPRPreviewEnv calls POST /api/v1/apps/{name}/previews/{pr}/env: declares (or replaces) one env var for that pull request's next preview deploy.
func (*Client) SetPasswordChangeRequired ¶
func (c *Client) SetPasswordChangeRequired(ctx context.Context, id string, required bool) (UserResource, error)
SetPasswordChangeRequired calls PUT /api/v1/users/{id}/password-change-required.
func (*Client) SetPipelineSync ¶ added in v0.2.0
func (c *Client) SetPipelineSync(ctx context.Context, app string, repoIsTruth bool) (PipelineSyncStatus, error)
SetPipelineSync calls PUT /api/v1/apps/{app}/pipeline-sync.
func (*Client) SetPipelineWebhook ¶
func (c *Client) SetPipelineWebhook(ctx context.Context, app, name string, req PipelineWebhookRequest) (PipelineWebhook, error)
SetPipelineWebhook calls PUT .../pipelines/{name}/webhook.
func (*Client) SetPlacement ¶ added in v0.2.0
func (c *Client) SetPlacement(ctx context.Context, kind, name string, selector map[string]string) (PlacementResource, error)
SetPlacement calls PUT /api/v1/{apps|databases}/{name}/placement.
func (*Client) SetPlatformUpgradePolicy ¶ added in v0.2.0
func (c *Client) SetPlatformUpgradePolicy(ctx context.Context, p DBUpgradePolicy) (DBUpgradePolicy, error)
SetPlatformUpgradePolicy calls PUT /api/v1/settings/database-upgrades.
func (*Client) SetPreview ¶ added in v0.2.0
func (c *Client) SetPreview(ctx context.Context, name string, req PreviewSettingsRequest) (PreviewStatus, error)
SetPreview calls PUT /api/v1/apps/{name}/preview.
func (*Client) SetPreviewEnabled ¶
func (c *Client) SetPreviewEnabled(ctx context.Context, appName string, enabled bool) (PreviewSettingsResource, error)
SetPreviewEnabled calls PUT /api/v1/apps/{name}/preview-settings, touching only the enabled toggle: post_pr_comments, if previously set, is left unchanged (SetPreviewSettingsRequest's own doc comment).
func (*Client) SetPreviewPolicy ¶ added in v0.2.0
func (c *Client) SetPreviewPolicy(ctx context.Context, appName string, req SetPreviewPolicyRequest) (PreviewPolicyResource, error)
SetPreviewPolicy calls PUT /api/v1/apps/{name}/preview-policy.
func (*Client) SetPreviewPostPRComments ¶
func (c *Client) SetPreviewPostPRComments(ctx context.Context, appName string, enabled bool) (PreviewSettingsResource, error)
SetPreviewPostPRComments calls PUT /api/v1/apps/{name}/preview-settings, touching only the post_pr_comments toggle: enabled, if previously set, is left unchanged.
func (*Client) SetProjectEnv ¶
func (c *Client) SetProjectEnv(ctx context.Context, id string, vars map[string]string) (map[string]string, error)
SetProjectEnv calls PUT /api/v1/projects/{id}/env: a full replace, mirroring PUT /apps/{name}'s own env field semantics.
func (*Client) SetProjectOrganization ¶
func (c *Client) SetProjectOrganization(ctx context.Context, projectID, orgID string) (ProjectResource, error)
SetProjectOrganization calls PUT /api/v1/projects/{id}/organization. An empty orgID clears the assignment. Returns the updated project.
func (*Client) SetQuota ¶
func (c *Client) SetQuota(ctx context.Context, scope, id string, l QuotaLimits) (QuotaResource, error)
SetQuota calls PUT /api/v1/{teams|projects}/{id}/quota.
func (*Client) SetRoute53DNS ¶ added in v0.2.0
func (c *Client) SetRoute53DNS(ctx context.Context, req UpdateRoute53DNSRequest) (Route53DNSResource, error)
SetRoute53DNS calls PUT /api/v1/settings/route53-dns.
func (*Client) SetSCIMDefaultRole ¶
SetSCIMDefaultRole calls PUT /api/v1/sso/settings with the directory default role.
func (*Client) SetSSOEnforce ¶
SetSSOEnforce calls PUT /api/v1/sso/settings.
func (*Client) SetSecret ¶
func (c *Client) SetSecret(ctx context.Context, name, key, value string, overwriteLocked bool) error
SetSecret calls PUT /api/v1/apps/{name}/secrets/{key}. No response body beyond the status (internal/api/secrets.go's handleSetSecret returns 204 on success), matching that handler's own doc comment on why a secret's value is never echoed back. overwriteLocked bypasses the server's 409-if-locked guard, the same escape hatch the dashboard's SecretsEditor exposes.
func (*Client) SetSecretBuildTime ¶
SetSecretBuildTime calls POST /api/v1/apps/{name}/secrets/{key}/build-time: opts an existing secret in or out of build.secrets.
func (*Client) SetSecretLock ¶
SetSecretLock calls POST /api/v1/apps/{name}/secrets/{key}/lock: toggles the accidental-overwrite guard SetSecret's overwriteLocked bypasses. Reversible either direction, not a permanent write-once marker.
func (*Client) SetSecretRotation ¶
func (c *Client) SetSecretRotation(ctx context.Context, name, key string, req SetSecretRotationPolicyRequest) (SecretRotationPolicyResource, error)
SetSecretRotation calls PUT /api/v1/apps/{name}/secrets/{key}/rotation.
func (*Client) SetSecretScanPolicy ¶
func (c *Client) SetSecretScanPolicy(ctx context.Context, name, policy string) (SecretScanSettings, error)
SetSecretScanPolicy calls PUT /api/v1/apps/{name}/secret-scan.
func (*Client) SetSecretWithBuildTime ¶
func (c *Client) SetSecretWithBuildTime(ctx context.Context, name, key, value string, overwriteLocked, buildTime bool) error
SetSecretWithBuildTime is SetSecret plus an explicit build_time flag (whether build.secrets may mount the secret).
func (*Client) SetServerAddress ¶ added in v0.2.0
func (c *Client) SetServerAddress(ctx context.Context, override ServerAddressPair) (ServerAddress, error)
SetServerAddress calls PUT /api/v1/system/server-address; both empty clears the override.
func (*Client) SetServerProfile ¶
func (c *Client) SetServerProfile(ctx context.Context, req UpdateServerProfileRequest) (ServerProfile, error)
SetServerProfile calls PUT /api/v1/settings/server-profile.
func (*Client) SetSessionPolicy ¶
func (c *Client) SetSessionPolicy(ctx context.Context, teamID string, req SessionPolicyRequest) (SessionPolicy, error)
SetSessionPolicy calls PUT /api/v1/security/session-policies/{team_id}.
func (*Client) SetSetupGuideHidden ¶ added in v0.2.0
SetSetupGuideHidden calls PUT /api/v1/setup/guide/visibility.
func (*Client) SetSetupGuideStep ¶ added in v0.2.0
func (c *Client) SetSetupGuideStep(ctx context.Context, id, state string) (SetupGuideResource, error)
SetSetupGuideStep calls PUT /api/v1/setup/guide/steps/{id}; state is "skipped", "done" or "todo" (clears an override).
func (*Client) SetSharedEnvSecret ¶ added in v0.2.0
SetSharedEnvSecret calls PUT /api/v1/{scope}s/{id}/env/secrets/{key}: encrypts value and marks key secret. No response body beyond the status, matching SetSecret's own "never echo a value back" rule.
func (*Client) SetSplitWeights ¶
func (c *Client) SetSplitWeights(ctx context.Context, appName string, weights map[string]int) (SplitTest, error)
SetSplitWeights calls PUT /api/v1/apps/{name}/split; keys are variant IDs or labels.
func (*Client) SetStorageDefault ¶
func (c *Client) SetStorageDefault(ctx context.Context, class, targetID string) (StorageDefault, error)
SetStorageDefault calls PUT /api/v1/storage/defaults/{class}.
func (*Client) SetSupplyChain ¶ added in v0.2.0
func (c *Client) SetSupplyChain(ctx context.Context, name string, req SupplyChainSettingsRequest) (SupplyChainSettings, error)
SetSupplyChain calls PUT /api/v1/apps/{name}/supply-chain.
func (*Client) SetTeamMemberRole ¶ added in v0.2.0
SetTeamMemberRole calls PUT /api/v1/teams/{id}/members/{user}.
func (*Client) SetUpdateSettings ¶ added in v0.2.0
func (c *Client) SetUpdateSettings(ctx context.Context, req UpdateSettingsResource) (UpdateSettingsResource, error)
SetUpdateSettings calls PUT /api/v1/updates/settings.
func (*Client) SetUpgradePolicy ¶ added in v0.2.0
func (c *Client) SetUpgradePolicy(ctx context.Context, req UpgradePolicyRequest) (UpgradePolicy, error)
SetUpgradePolicy calls PUT /api/v1/updates/auto.
func (*Client) SetUsageBudget ¶ added in v0.2.0
func (c *Client) SetUsageBudget(ctx context.Context, scope, scopeID string, monthly, warnPct float64) (usagecost.Budget, error)
SetUsageBudget calls PUT /api/v1/usage/budgets.
func (*Client) SetUserEnvironmentGrants ¶ added in v0.2.0
func (c *Client) SetUserEnvironmentGrants(ctx context.Context, userID string, environmentIDs []string) (EnvironmentGrants, error)
SetUserEnvironmentGrants calls PUT /api/v1/users/{id}/environment-grants.
func (*Client) SetUserRole ¶ added in v0.2.0
SetUserRole calls PUT /api/v1/users/{id}/role.
func (*Client) SetVault ¶ added in v0.2.0
func (c *Client) SetVault(ctx context.Context, req UpdateVaultSettingsRequest) (VaultSettingsResource, error)
SetVault calls PUT /api/v1/settings/vault.
func (*Client) SetVolumeBackupPolicy ¶ added in v0.2.0
func (c *Client) SetVolumeBackupPolicy(ctx context.Context, name, volume string, p VolumeBackupPolicyResource) (VolumeBackupPolicyResource, error)
SetVolumeBackupPolicy calls PUT /api/v1/apps/{name}/volumes/{volume}/backup-policy.
func (*Client) SetVolumeBackupSchedule ¶
func (c *Client) SetVolumeBackupSchedule(ctx context.Context, name, volume string, req SetVolumeBackupScheduleRequest) (VolumeBackupScheduleResource, error)
SetVolumeBackupSchedule calls PUT /api/v1/apps/{name}/volumes/{volume}/backup-schedule: the app service volume counterpart of SetBackupSchedule.
func (*Client) SetupProxyIntegration ¶ added in v0.2.0
func (c *Client) SetupProxyIntegration(ctx context.Context, req ProxySetupRequest) (ProxyIntegration, error)
SetupProxyIntegration runs setup; without Confirm it is a dry run.
func (*Client) ShieldBots ¶
func (c *Client) ShieldBots(ctx context.Context) (ShieldBotList, error)
ShieldBots calls GET /api/v1/system/shield/bots.
func (*Client) SilenceAlertRule ¶ added in v0.2.0
func (c *Client) SilenceAlertRule(ctx context.Context, app, ruleID, duration, reason string) (SilenceResource, error)
SilenceAlertRule calls POST /api/v1/apps/{name}/alerts/{id}/silence.
func (*Client) SimulateFailure ¶
SimulateFailure asks what would happen if a zone or one node were lost.
func (*Client) SimulateIAM ¶ added in v0.2.0
func (c *Client) SimulateIAM(ctx context.Context, principalType, principalID, action, resource string) (IAMSimulation, error)
SimulateIAM calls GET /api/v1/iam/simulate.
func (*Client) SimulatePlacement ¶
func (c *Client) SimulatePlacement(ctx context.Context, cpuMilli, memoryMiB int64, count int, selector string) (PlacementSimulation, error)
SimulatePlacement asks where count apps asking for cpuMilli and memoryMiB would land.
func (*Client) SimulateResilience ¶
func (c *Client) SimulateResilience(ctx context.Context) (OutageReport, error)
SimulateResilience calls POST /api/v1/system/resilience/simulate (a dry run, nothing is stopped).
func (*Client) SleepAppNow ¶
SleepAppNow calls POST /api/v1/apps/{name}/sleep/now.
func (*Client) SleepModel ¶ added in v0.2.0
SleepModel calls POST /api/v1/models/{name}/sleep.
func (*Client) StageAppImport ¶ added in v0.2.0
StageAppImport calls POST .../sessions/{id}/stage. A blocked preflight is returned as an *APIError with the status 422.
func (*Client) StageAppImportItems ¶
func (c *Client) StageAppImportItems(ctx context.Context, id string, items []string) (AppImportView, error)
StageAppImportItems calls POST .../sessions/{id}/stage for the named items only, which is how one failed item is retried.
func (*Client) StartAccountExport ¶
func (c *Client) StartAccountExport(ctx context.Context) (AccountExport, error)
StartAccountExport calls POST /api/v1/auth/export.
func (*Client) StartApp ¶
StartApp calls POST /api/v1/apps/{name}/start: clears the suspended flag StopApp set, letting the reconciler bring the container back.
func (*Client) StartAppImportCutover ¶ added in v0.2.0
func (c *Client) StartAppImportCutover(ctx context.Context, session, item string, body ImportCutoverStart) (ImportCutoverRun, error)
StartAppImportCutover calls POST .../items/{item}/cutover/runs.
func (*Client) StartAppImportVolumeCopy ¶
func (c *Client) StartAppImportVolumeCopy(ctx context.Context, id string, items []string) (AppImportVolumeCopy, error)
StartAppImportVolumeCopy calls POST .../sessions/{id}/volumes/copy.
func (*Client) StartBackupDrill ¶ added in v0.2.0
StartBackupDrill calls POST /api/v1/backups/drills and returns the drill ID.
func (*Client) StartCanary ¶ added in v0.2.0
func (c *Client) StartCanary(ctx context.Context, appName, image string, weight int) (CanaryResource, error)
StartCanary calls POST /api/v1/apps/{name}/canary. A weight of 0 uses the server default.
func (*Client) StartCanaryWith ¶
func (c *Client) StartCanaryWith(ctx context.Context, appName string, req CanaryStartRequest) (CanaryResource, error)
StartCanaryWith calls POST /api/v1/apps/{name}/canary with the full request.
func (*Client) StartDatabase ¶ added in v0.2.0
StartDatabase calls POST /api/v1/databases/{name}/start: clears the suspended flag StopDatabase set, letting the reconciler bring the container back against the same data volume.
func (*Client) StartDatabaseDataCopy ¶ added in v0.2.0
func (c *Client) StartDatabaseDataCopy(ctx context.Context, name string, src DataCopySource) (DataCopyStatus, error)
StartDatabaseDataCopy calls POST /api/v1/imports/platform/databases/{name}/copy.
func (*Client) StartDeviceAuth ¶
func (c *Client) StartDeviceAuth(ctx context.Context, req DeviceStartRequest) (DeviceStartResponse, error)
StartDeviceAuth calls POST /api/v1/auth/device/start. Unauthenticated by design: call it on a Client built with an empty token (NewClient(baseURL, "")).
func (*Client) StartFirewallEdgeAttack ¶
func (c *Client) StartFirewallEdgeAttack(ctx context.Context, minutes int, challenge bool) (FirewallEdgeAttack, error)
StartFirewallEdgeAttack calls POST .../firewall/edge/attack-mode.
func (*Client) StartLogArchiveDump ¶ added in v0.2.0
func (c *Client) StartLogArchiveDump(ctx context.Context, req LogArchiveDumpRequest) (LogArchiveRun, error)
StartLogArchiveDump calls POST /api/v1/log-archive/dump.
func (*Client) StartMajorUpgrade ¶ added in v0.2.0
func (c *Client) StartMajorUpgrade(ctx context.Context, name, version string) (MajorUpgradeResource, error)
StartMajorUpgrade calls POST /api/v1/databases/{name}/major-upgrade.
func (*Client) StartMove ¶ added in v0.2.0
func (c *Client) StartMove(ctx context.Context, kind, name, nodeID string) (NodeMoveResource, error)
StartMove calls POST /api/v1/{apps|databases}/{name}/move. kind is "app" or "database"; an empty nodeID lets the scheduler pick.
func (*Client) StartNodeDrain ¶ added in v0.2.0
func (c *Client) StartNodeDrain(ctx context.Context, id, targetNodeID string) (NodeDrainResource, error)
StartNodeDrain calls POST /api/v1/nodes/{id}/drain and returns the drain job.
func (*Client) StartPipelineRun ¶ added in v0.2.0
func (c *Client) StartPipelineRun(ctx context.Context, app, name string, req PipelineStartRequest) (PipelineRunResource, error)
StartPipelineRun calls POST /api/v1/apps/{app}/pipelines/{name}/runs.
func (*Client) StartProject ¶ added in v0.2.0
StartProject calls POST /api/v1/projects/{id}/start: clears the suspended flag StopProject set on every app and database in the project.
func (*Client) StartRollback ¶
StartRollback calls POST /api/v1/updates/rollback for a binary-only rollback to a retained release.
func (*Client) StartSelfUpgrade ¶ added in v0.2.0
func (c *Client) StartSelfUpgrade(ctx context.Context, target string, ack []string) (SelfUpgradeStarted, error)
StartSelfUpgrade calls POST /api/v1/updates/self-upgrade.
func (*Client) StartSplit ¶
func (c *Client) StartSplit(ctx context.Context, appName string, req SplitStartRequest) (SplitTest, error)
StartSplit calls POST /api/v1/apps/{name}/split.
func (*Client) StartTakeover ¶
func (c *Client) StartTakeover(ctx context.Context, body TakeoverStart) (TakeoverStartResult, error)
StartTakeover calls POST /api/v1/migration/takeover/runs.
func (*Client) StartUnderAttack ¶
func (c *Client) StartUnderAttack(ctx context.Context, name, domain string, minutes int) (ShieldPolicyResource, error)
StartUnderAttack calls POST .../domains/{domain}/shield/under-attack.
func (*Client) StatusPagePreview ¶ added in v0.2.0
func (c *Client) StatusPagePreview(ctx context.Context) (StatusPageView, error)
StatusPagePreview calls GET /api/v1/status-page/preview.
func (*Client) StepMigrationChecklist ¶
func (c *Client) StepMigrationChecklist(ctx context.Context, app, step string, req MigrationStepRequest) (MigrationChecklist, error)
StepMigrationChecklist calls POST /api/v1/migration/checklists/{app}/steps/{step}.
func (*Client) StopApp ¶
StopApp calls POST /api/v1/apps/{name}/stop: marks the service suspended, so the reconciler stops (and leaves stopped) its container on the next pass, without touching desired state otherwise.
func (*Client) StopAppWatch ¶
StopAppWatch calls POST /api/v1/apps/{name}/watch/stop.
func (*Client) StopDatabase ¶ added in v0.2.0
StopDatabase calls POST /api/v1/databases/{name}/stop: marks the database suspended, so the reconciler removes its container on the next pass without touching desired state or its data volume otherwise.
func (*Client) StopFirewallEdgeAttack ¶
func (c *Client) StopFirewallEdgeAttack(ctx context.Context) (FirewallEdgeAttack, error)
StopFirewallEdgeAttack calls DELETE .../firewall/edge/attack-mode.
func (*Client) StopOrphanedContainer ¶ added in v0.2.0
StopOrphanedContainer calls POST /api/v1/system/containers/{name}/stop. Server-side re-confirms the container isn't Levelrail-managed (409 if it is); use "apps stop" for a managed app instead.
func (*Client) StopProject ¶ added in v0.2.0
StopProject calls POST /api/v1/projects/{id}/stop: suspends every app and database filed under the project, mirroring StopApp's own single- resource shape at the project scope.
func (*Client) StopUnderAttack ¶
func (c *Client) StopUnderAttack(ctx context.Context, name, domain string) (ShieldPolicyResource, error)
StopUnderAttack calls DELETE .../domains/{domain}/shield/under-attack.
func (*Client) StreamDatabaseLogs ¶ added in v0.2.0
func (c *Client) StreamDatabaseLogs(ctx context.Context, name string, onEntry func(LogStreamEntry) error) error
StreamDatabaseLogs calls GET /api/v1/databases/{name}/logs/stream (internal/api/database_logs.go's handleLiveDatabaseLogStream), the database counterpart to StreamLogs above.
func (*Client) StreamDeployEventTimeline ¶
func (c *Client) StreamDeployEventTimeline(ctx context.Context, id string, onMsg func(DeployEventMessage) error) error
StreamDeployEventTimeline calls GET /api/v1/deployments/{id}/timeline/stream and hands each message to onMsg until onMsg returns an error, the server sends its end message and closes, or ctx ends.
func (*Client) StreamDeployLog ¶ added in v0.2.0
func (c *Client) StreamDeployLog(ctx context.Context, name, deployID string, onEntry func(LogStreamEntry) error) error
StreamDeployLog calls GET /api/v1/apps/{name}/deploys/{deployId}/logs (internal/api/deploy_attempts.go's handleDeployLogStream): the same SSE connection the dashboard's deploy log page opens, replaying the attempt's log so far and then tailing live until the attempt finishes, ctx is canceled, or the server closes the connection. Same wire shape and same onEntry contract as StreamLogs above, just a different endpoint.
func (*Client) StreamDeploySteps ¶ added in v0.2.0
func (c *Client) StreamDeploySteps(ctx context.Context, name, deployID string, onStep func(DeployStepEvent) error) error
StreamDeploySteps calls GET /api/v1/apps/{name}/deploys/{deployId}/steps and calls onStep for each step event until onStep returns an error (the server holds the connection open after the last step) or ctx is canceled.
func (*Client) StreamDeployments ¶ added in v0.2.0
StreamDeployments calls GET /api/v1/deployments/stream and invokes onEvent for each change until onEvent errors or ctx is canceled.
func (*Client) StreamLogs ¶ added in v0.2.0
func (c *Client) StreamLogs(ctx context.Context, name string, onEntry func(LogStreamEntry) error) error
StreamLogs calls GET /api/v1/apps/{name}/logs/stream (internal/api/live_logs.go's handleLiveLogStream): an SSE connection that replays a short recent backfill then tails live output until ctx is canceled or the server closes the connection. See streamLogEvents for the onEntry contract and transport details shared with StreamDeployLog below.
func (*Client) StreamModelLogs ¶ added in v0.2.0
func (c *Client) StreamModelLogs(ctx context.Context, name string, onEntry func(LogStreamEntry) error) error
StreamModelLogs calls GET /api/v1/models/{name}/logs/stream.
func (*Client) StreamPipelineRunLogs ¶ added in v0.2.0
func (c *Client) StreamPipelineRunLogs(ctx context.Context, app, id, job string, onLine func(PipelineLogLine) error) error
StreamPipelineRunLogs follows GET .../pipeline-runs/{id}/logs/stream until the run finishes or ctx is cancelled.
func (*Client) SweepPreviewEnvironments ¶
func (c *Client) SweepPreviewEnvironments(ctx context.Context) (SweepPreviewEnvironmentsResult, error)
SweepPreviewEnvironments calls POST /api/v1/previews/sweep: the manual trigger for the TTL fallback that tears down any preview environment whose pull-request-closed webhook never arrived, cross-app.
func (*Client) SyncBetaFeatures ¶
SyncBetaFeatures fetches the server's enabled beta features and applies them to this process, so gating follows Settings. APP_EXPERIMENTAL stays an override.
func (*Client) TakeoverRun ¶
TakeoverRun calls GET /api/v1/migration/takeover/runs/{run}.
func (*Client) TakeoverRuns ¶
func (c *Client) TakeoverRuns(ctx context.Context) ([]TakeoverRun, error)
TakeoverRuns calls GET /api/v1/migration/takeover/runs, newest first.
func (*Client) TakeoverStatus ¶
TakeoverStatus calls GET /api/v1/migration/takeover/plan.
func (*Client) TeardownPreviewEnvironment ¶
func (c *Client) TeardownPreviewEnvironment(ctx context.Context, appName string, prNumber int) error
TeardownPreviewEnvironment calls POST /api/v1/apps/{name}/previews/{number}/teardown: the manual safety net alongside a pull request's own automatic close-triggered teardown.
func (*Client) TestAIProvider ¶
TestAIProvider calls POST /api/v1/settings/ai-assistant/providers/{id}/test.
func (*Client) TestAppImportSSH ¶
func (c *Client) TestAppImportSSH(ctx context.Context, req AppImportSSHProbe) (AppImportSSHResult, error)
TestAppImportSSH calls POST /api/v1/migration/apps/ssh/test.
func (*Client) TestBackupTarget ¶
TestBackupTarget calls POST /api/v1/backup-targets/{id}/test: probes the target's stored credentials against its configured bucket, without uploading or deleting anything.
func (*Client) TestDNSProvider ¶
func (c *Client) TestDNSProvider(ctx context.Context, app string, req DNSProviderRequest) (DNSProviderTestResult, error)
TestDNSProvider resolves a sample hostname through the chosen (or effective) provider.
func (*Client) TestEmailProvider ¶
TestEmailProvider calls POST /api/v1/settings/email/providers/{id}/test: one send through that provider alone.
func (*Client) TestEventWebhook ¶
TestEventWebhook calls POST /api/v1/event-webhooks/{id}/test.
func (*Client) TestExistingNotificationChannel ¶
TestExistingNotificationChannel calls POST /api/v1/notification-channels/{id}/test: the same real send, against an already-saved channel's own kind/notify_url.
func (*Client) TestExportDestination ¶ added in v0.2.0
TestExportDestination calls POST /api/v1/export/destinations/{id}/test.
func (*Client) TestExternalDatabase ¶ added in v0.2.0
func (c *Client) TestExternalDatabase(ctx context.Context, req ExternalDatabaseRequest) (ExternalDatabaseProbe, error)
TestExternalDatabase calls POST /api/v1/external-databases/test.
func (*Client) TestGitConnection ¶
func (c *Client) TestGitConnection(ctx context.Context, req TestGitConnectionRequest) (TestGitConnectionResult, error)
TestGitConnection calls POST /api/v1/git-connections/test.
func (*Client) TestGoogleCloudDNS ¶
func (c *Client) TestGoogleCloudDNS(ctx context.Context) (GoogleCloudDNSTestResult, error)
TestGoogleCloudDNS calls POST /api/v1/settings/google-cloud-dns/test.
func (*Client) TestMigrationSource ¶
func (c *Client) TestMigrationSource(ctx context.Context, req AppImportRequest) (MigrationSourceTest, error)
TestMigrationSource calls POST /api/v1/migration/apps/test. Nothing is stored.
func (*Client) TestModelEndpoint ¶
TestModelEndpoint calls POST /api/v1/models/{name}/endpoint/test.
func (*Client) TestModelEndpointInput ¶
func (c *Client) TestModelEndpointInput(ctx context.Context, req TestEndpointRequest) (EndpointTest, error)
TestModelEndpointInput calls POST /api/v1/model-endpoints/test.
func (*Client) TestNetworkShare ¶ added in v0.2.0
TestNetworkShare calls POST /api/v1/network-shares/{id}/test: dials the share's host on its protocol's standard port to confirm it's reachable. This is a reachability check only, never an authentication check.
func (*Client) TestNodeProvider ¶
func (c *Client) TestNodeProvider(ctx context.Context, provider string) (NodeProviderTestResult, error)
TestNodeProvider calls POST /api/v1/node-providers/{provider}/test with no body, testing the stored credential.
func (*Client) TestNotificationChannel ¶
TestNotificationChannel calls POST /api/v1/notification-channels/test: fires a real test message via kind/notifyURL without requiring the channel to exist yet.
func (*Client) TestPackageRegistry ¶
func (c *Client) TestPackageRegistry(ctx context.Context, id string) (NodeProviderTestResult, error)
TestPackageRegistry calls POST /api/v1/package-registries/{id}/test.
func (*Client) TestPlugin ¶
TestPlugin calls POST /api/v1/plugins/{name}/test (dns_provider plugins only).
func (*Client) TestRegistryCredential ¶
TestRegistryCredential calls POST /api/v1/registry-credentials/{id}/test: authenticates the credential's stored username/password against its registry host, without pulling anything.
func (*Client) TestStaticRoutes ¶
func (c *Client) TestStaticRoutes(ctx context.Context, name string, req StaticRoutesTestRequest) (staticroutes.Decision, error)
TestStaticRoutes calls POST /api/v1/apps/{name}/static-routes/test.
func (*Client) TestStorageDestination ¶ added in v0.2.0
TestStorageDestination calls POST /api/v1/storage/destinations/{id}/test.
func (*Client) TestTrafficExportSink ¶
func (c *Client) TestTrafficExportSink(ctx context.Context, id string) (TrafficExportTestResult, error)
TestTrafficExportSink calls POST /api/v1/settings/traffic-export/sinks/{id}/test.
func (*Client) TrafficSummary ¶ added in v0.2.0
func (c *Client) TrafficSummary(ctx context.Context) (TrafficSummary, error)
TrafficSummary calls GET /api/v1/traffic/summary.
func (*Client) TransferAppImportImages ¶ added in v0.2.0
func (c *Client) TransferAppImportImages(ctx context.Context, id string, body AppImportImagesTransfer) (AppImportImages, error)
TransferAppImportImages calls POST .../sessions/{id}/images/transfer.
func (*Client) TransferTeam ¶ added in v0.2.0
TransferTeam calls POST /api/v1/teams/{id}/transfer.
func (*Client) TriggerBackup ¶
func (c *Client) TriggerBackup(ctx context.Context, name, targetID string) (BackupHistoryResource, error)
TriggerBackup calls POST /api/v1/databases/{name}/backups: starts a real backup of name to targetID and returns as soon as the attempt is recorded and under way, not once the dump and upload actually finish. ListBackups is how a caller finds out whether it did.
func (*Client) TriggerBaseBackup ¶ added in v0.2.0
func (c *Client) TriggerBaseBackup(ctx context.Context, name, targetID string) (BaseBackupHistoryResource, error)
TriggerBaseBackup calls POST /api/v1/databases/{name}/base-backups: starts a real physical base backup, the point-in-time-restore counterpart of TriggerBackup.
func (*Client) TriggerBuild ¶
func (c *Client) TriggerBuild(ctx context.Context, name string, req BuildTriggerRequest) (BuildTriggerResponse, error)
TriggerBuild calls POST /api/v1/apps/{name}/builds.
func (*Client) TriggerCloneRestore ¶
func (c *Client) TriggerCloneRestore(ctx context.Context, name string, req TriggerCloneRestoreRequest) (CloneRestoreResource, error)
TriggerCloneRestore calls POST /api/v1/databases/{name}/restore-as-new: the non-destructive counterpart to TriggerRestore above. Creates a brand-new database and restores a previously succeeded backup of name into it, never touching name's own live data.
func (*Client) TriggerPITRRestore ¶ added in v0.2.0
func (c *Client) TriggerPITRRestore(ctx context.Context, name, baseBackupID, targetTime, restoreAs string) (PITRRestoreHistoryResource, error)
TriggerPITRRestore calls POST /api/v1/databases/{name}/pitr-restore: starts a real point-in-time restore to targetTime, replaying archived WAL forward from baseBackupID.
func (*Client) TriggerRestore ¶
func (c *Client) TriggerRestore(ctx context.Context, name, backupID string) (RestoreHistoryResource, error)
TriggerRestore calls POST /api/v1/databases/{name}/restore: overwrites name's live data in place from a previously succeeded backup attempt. The single most destructive call this Client makes; callers must gate this behind their own explicit confirmation before ever reaching it.
func (*Client) TriggerVolumeBackup ¶
func (c *Client) TriggerVolumeBackup(ctx context.Context, name, volume, targetID string) (BackupHistoryResource, error)
TriggerVolumeBackup calls POST /api/v1/apps/{name}/volumes/{volume}/backups: the app service volume counterpart of TriggerBackup.
func (*Client) TriggerVolumeCloneRestore ¶
func (c *Client) TriggerVolumeCloneRestore(ctx context.Context, name, volume string, req TriggerVolumeCloneRestoreRequest) (VolumeCloneRestoreResource, error)
TriggerVolumeCloneRestore calls POST /api/v1/apps/{name}/volumes/{volume}/restore-as-new: the app service volume counterpart of TriggerCloneRestore. Creates a brand-new, standalone Docker volume and restores a previously succeeded backup of name/volume into it, never touching that volume's own live contents.
func (*Client) TriggerVolumeRestore ¶
func (c *Client) TriggerVolumeRestore(ctx context.Context, name, volume, backupID string) (RestoreHistoryResource, error)
TriggerVolumeRestore calls POST /api/v1/apps/{name}/volumes/{volume}/restore: overwrites the named app service volume's live contents in place from a previously succeeded backup attempt, the app service volume counterpart of TriggerRestore. The same "single most destructive call" warning TriggerRestore's own doc comment gives applies identically here.
func (*Client) TrimLogBudget ¶
TrimLogBudget calls POST /api/v1/apps/{name}/log-budget/trim.
func (*Client) URL ¶
URL returns an absolute URL on the API target, for pages the operator opens in a browser.
func (*Client) UnallowSecretFingerprint ¶
UnallowSecretFingerprint calls DELETE /api/v1/apps/{name}/secret-scan/allow/{fingerprint}.
func (*Client) UnbindAppBucket ¶
UnbindAppBucket calls DELETE /api/v1/apps/{name}/buckets/{id}.
func (*Client) UncordonNode ¶
UncordonNode calls POST /api/v1/nodes/{id}/uncordon: the inverse of CordonNode.
func (*Client) UndoAutomationRun ¶ added in v0.2.0
UndoAutomationRun calls POST /api/v1/domains/automation/runs/{id}/undo.
func (*Client) UnlinkProvider ¶
UnlinkProvider calls DELETE /api/v1/auth/link/{provider}.
func (*Client) UnlockPublishing ¶
UnlockPublishing calls DELETE /api/v1/apps/{name}/publish-lock.
func (*Client) UnrestrictDomainPort ¶ added in v0.2.0
func (c *Client) UnrestrictDomainPort(ctx context.Context, name, domain string, port int) (DomainPortsResource, error)
UnrestrictDomainPort calls DELETE .../ports/{port}/restrict.
func (*Client) UpdateAIControl ¶ added in v0.2.0
func (c *Client) UpdateAIControl(ctx context.Context, req UpdateAIControlRequest) (AIControlResource, error)
UpdateAIControl calls PUT /api/v1/settings/ai-control.
func (*Client) UpdateAlertRule ¶ added in v0.2.0
func (c *Client) UpdateAlertRule(ctx context.Context, name, id string, req UpdateAlertRuleRequest) (AlertRuleResource, error)
UpdateAlertRule calls PUT /api/v1/apps/{name}/alerts/{id}: a full replace of the rule's configuration.
func (*Client) UpdateApp ¶ added in v0.2.0
func (c *Client) UpdateApp(ctx context.Context, name string, app AppResource) (AppResource, error)
UpdateApp calls PUT /api/v1/apps/{name} with the full app, returning the saved app. The server replaces the whole desired state, so callers should start from GetApp and change only the fields they mean to.
func (*Client) UpdateBackupTarget ¶
func (c *Client) UpdateBackupTarget(ctx context.Context, id string, req UpdateBackupTargetRequest) (BackupTargetResource, error)
UpdateBackupTarget calls PUT /api/v1/backup-targets/{id}: a full replace of name/provider/endpoint/region/bucket, matching handleUpdateBackupTarget's own contract. Credentials rotate only when req carries both AccessKeyID and SecretAccessKey.
func (*Client) UpdateCodeLoginSettings ¶ added in v0.2.0
func (c *Client) UpdateCodeLoginSettings(ctx context.Context, in CodeLoginSettingsUpdate) (CodeLoginSettings, error)
UpdateCodeLoginSettings calls PUT /api/v1/settings/auth/code-login (root).
func (*Client) UpdateControlPlaneDR ¶ added in v0.2.0
func (c *Client) UpdateControlPlaneDR(ctx context.Context, s ControlPlaneDRSettings) (ControlPlaneDR, error)
UpdateControlPlaneDR calls PUT /api/v1/system/control-plane-dr/settings.
func (*Client) UpdateCostBudget ¶
func (c *Client) UpdateCostBudget(ctx context.Context, id string, body map[string]any) (costbudget.Budget, error)
UpdateCostBudget calls PUT /api/v1/costs/budgets/{id}; only the keys in body change.
func (*Client) UpdateDNSRecord ¶ added in v0.2.0
func (c *Client) UpdateDNSRecord(ctx context.Context, name, domain string, req UpdateDNSRecordRequest) (DNSRecordsResponse, error)
UpdateDNSRecord calls PUT .../dns-records: replaces one exact record (req.Original) with a new value (req.Record).
func (*Client) UpdateDNSZoneRecord ¶ added in v0.2.0
func (c *Client) UpdateDNSZoneRecord(ctx context.Context, provider, zone string, original DNSRecordKey, rs DNSRecordSet) (DNSRecordWrite, error)
UpdateDNSZoneRecord calls PUT /api/v1/dns/zones/{zone}/records.
func (*Client) UpdateDashboardURL ¶ added in v0.2.0
func (c *Client) UpdateDashboardURL(ctx context.Context, req DashboardURLResource) (DashboardURLResource, error)
UpdateDashboardURL calls PUT /api/v1/settings/dashboard-url.
func (*Client) UpdateDockerGuard ¶ added in v0.2.0
func (c *Client) UpdateDockerGuard(ctx context.Context, req UpdateDockerGuardRequest) (DockerGuardResource, error)
UpdateDockerGuard calls PUT /api/v1/system/docker-guard.
func (*Client) UpdateDomainAutomation ¶ added in v0.2.0
func (c *Client) UpdateDomainAutomation(ctx context.Context, p DomainAutomationOverride) (DomainAutomationResource, error)
UpdateDomainAutomation calls PUT /api/v1/settings/domain-automation.
func (*Client) UpdateEdgeSettings ¶
func (c *Client) UpdateEdgeSettings(ctx context.Context, u EdgeSettingsUpdate) (EdgeSettings, error)
UpdateEdgeSettings calls PUT /api/v1/settings/ingress/edge.
func (*Client) UpdateEmailBranding ¶
func (c *Client) UpdateEmailBranding(ctx context.Context, req EmailBranding) (EmailBranding, error)
UpdateEmailBranding calls PUT /api/v1/settings/email/branding, replacing the whole branding.
func (*Client) UpdateEmailProvider ¶
func (c *Client) UpdateEmailProvider(ctx context.Context, id string, req EmailProvider) (EmailProvider, error)
UpdateEmailProvider calls PUT /api/v1/settings/email/providers/{id}, which replaces the provider's fields.
func (*Client) UpdateEmailSettings ¶ added in v0.2.0
func (c *Client) UpdateEmailSettings(ctx context.Context, req EmailSettingsResource) (EmailSettingsResource, error)
UpdateEmailSettings calls PUT /api/v1/settings/email.
func (*Client) UpdateEnvSettings ¶ added in v0.2.0
func (c *Client) UpdateEnvSettings(ctx context.Context, app string, in EnvSettingsUpdate) (EnvSettings, error)
UpdateEnvSettings calls PUT /api/v1/apps/{name}/env/settings.
func (*Client) UpdateEnvironment ¶
func (c *Client) UpdateEnvironment(ctx context.Context, id string, req UpdateEnvironmentRequest) (EnvironmentResource, error)
UpdateEnvironment calls PATCH /api/v1/environments/{id}.
func (*Client) UpdateEventWebhook ¶
func (c *Client) UpdateEventWebhook(ctx context.Context, id string, req UpdateEventWebhookRequest) (EventWebhookResource, error)
UpdateEventWebhook calls PATCH /api/v1/event-webhooks/{id}.
func (*Client) UpdateExportDestination ¶ added in v0.2.0
func (c *Client) UpdateExportDestination(ctx context.Context, id string, req UpdateExportDestinationRequest) (ExportDestinationResource, error)
UpdateExportDestination calls PATCH /api/v1/export/destinations/{id}.
func (*Client) UpdateFeatureFlag ¶
func (c *Client) UpdateFeatureFlag(ctx context.Context, name, id string, req FeatureFlagRequest) (FeatureFlagResource, error)
UpdateFeatureFlag calls PUT /api/v1/apps/{name}/flags/{id}: a full replace of Name/Description/Enabled/RolloutPercentage, not a partial patch, matching handleUpdateFeatureFlag's own contract. Key is never updated once created.
func (*Client) UpdateFirewallEdgeRule ¶
func (c *Client) UpdateFirewallEdgeRule(ctx context.Context, id string, r edgefw.Rule, force bool) (FirewallEdgeRule, error)
UpdateFirewallEdgeRule calls PUT .../firewall/edge/rules/{id}.
func (*Client) UpdateForm ¶
UpdateForm changes a form's redirect, honeypot field or notification channels.
func (*Client) UpdateIngressSettings ¶ added in v0.2.0
func (c *Client) UpdateIngressSettings(ctx context.Context, req IngressSettingsResource) (IngressSettingsResource, error)
UpdateIngressSettings calls PUT /api/v1/settings/ingress.
func (*Client) UpdateJanitorPolicy ¶
func (c *Client) UpdateJanitorPolicy(ctx context.Context, patch JanitorPolicyPatch) (JanitorPolicy, error)
UpdateJanitorPolicy calls PUT /api/v1/system/janitor/policy.
func (*Client) UpdateJob ¶ added in v0.2.0
func (c *Client) UpdateJob(ctx context.Context, app, id string, req ScheduledTaskRequest) (ScheduledTaskResource, error)
UpdateJob calls PUT /api/v1/apps/{name}/jobs/{id}. Fields the request leaves out keep their stored value.
func (*Client) UpdateKeyPolicy ¶
func (c *Client) UpdateKeyPolicy(ctx context.Context, upd KeyPolicyUpdate) (EncryptionKeysStatus, error)
UpdateKeyPolicy calls PUT /api/v1/system/encryption-keys/policy.
func (*Client) UpdateMaintenanceWindow ¶ added in v0.2.0
func (c *Client) UpdateMaintenanceWindow(ctx context.Context, id string, req MaintenanceWindowResource) (MaintenanceWindowResource, error)
UpdateMaintenanceWindow calls PUT /api/v1/alert-maintenance-windows/{id}.
func (*Client) UpdateMeshSettings ¶ added in v0.2.0
func (c *Client) UpdateMeshSettings(ctx context.Context, req UpdateMeshSettingsRequest) (MeshSettings, error)
UpdateMeshSettings calls PUT /api/v1/mesh/settings.
func (*Client) UpdateNetworkShare ¶ added in v0.2.0
func (c *Client) UpdateNetworkShare(ctx context.Context, id string, req UpdateNetworkShareRequest) (NetworkShareResource, error)
UpdateNetworkShare calls PUT /api/v1/network-shares/{id}: a full replace of name/protocol/host/remote_path/mount_options/username. A blank Password in req keeps the share's existing stored password.
func (*Client) UpdateNodeGuardrails ¶
func (c *Client) UpdateNodeGuardrails(ctx context.Context, id string, s NodeGuardrailSettings) (NodeCapacityResource, error)
UpdateNodeGuardrails calls PUT /api/v1/nodes/{id}/guardrails.
func (*Client) UpdateNotificationChannel ¶ added in v0.2.0
func (c *Client) UpdateNotificationChannel(ctx context.Context, id string, req UpdateNotificationChannelRequest) (NotificationChannelResource, error)
UpdateNotificationChannel calls PUT /api/v1/notification-channels/{id}: a full replace of the channel's configuration.
func (*Client) UpdateOAuthProviderSettings ¶ added in v0.2.0
func (c *Client) UpdateOAuthProviderSettings(ctx context.Context, provider string, req UpdateOAuthProviderSettingsRequest) (OAuthProviderSettingsResource, error)
UpdateOAuthProviderSettings calls PUT /api/v1/settings/oauth/{provider}.
func (*Client) UpdatePipeline ¶ added in v0.2.0
func (c *Client) UpdatePipeline(ctx context.Context, app, name string, req PipelineSaveRequest) (PipelineResource, error)
UpdatePipeline calls PUT /api/v1/apps/{app}/pipelines/{name}.
func (*Client) UpdatePolicy ¶
func (c *Client) UpdatePolicy(ctx context.Context, id string, req PolicyRequest) (PolicyResource, error)
UpdatePolicy calls PUT /api/v1/iam/policies/{id}.
func (*Client) UpdatePrivateNetwork ¶
func (c *Client) UpdatePrivateNetwork(ctx context.Context, id string, req PrivateNetworkRequest) (PrivateNetworkChange, error)
UpdatePrivateNetwork calls PUT /api/v1/private-networks/{id}.
func (*Client) UpdateProxyIntegrationSettings ¶ added in v0.2.0
func (c *Client) UpdateProxyIntegrationSettings(ctx context.Context, s ProxyIntegrationSettings) (ProxyIntegrationSettings, error)
UpdateProxyIntegrationSettings replaces the settings.
func (*Client) UpdateRegistryCredential ¶
func (c *Client) UpdateRegistryCredential(ctx context.Context, id string, req UpdateRegistryCredentialRequest) (RegistryCredentialResource, error)
UpdateRegistryCredential calls PUT /api/v1/registry-credentials/{id}: a full replace of name/registry_host/username, matching handleUpdateRegistryCredential's own contract. The password rotates only when req carries one.
func (*Client) UpdateRegistrySettings ¶
func (c *Client) UpdateRegistrySettings(ctx context.Context, req UpdateRegistrySettingsRequest) (RegistrySettingsResource, error)
UpdateRegistrySettings calls PUT /api/v1/settings/registry.
func (*Client) UpdateRole ¶ added in v0.2.0
func (c *Client) UpdateRole(ctx context.Context, id string, req RoleRequest) (RoleResource, error)
UpdateRole calls PUT /api/v1/roles/{id}.
func (*Client) UpdateSAMLConnection ¶
func (c *Client) UpdateSAMLConnection(ctx context.Context, id string, req SAMLConnectionRequest) (SAMLConnection, error)
UpdateSAMLConnection calls PUT /api/v1/sso/saml/connections/{id}.
func (*Client) UpdateScheduledTask ¶
func (c *Client) UpdateScheduledTask(ctx context.Context, name, id string, req ScheduledTaskRequest) (ScheduledTaskResource, error)
UpdateScheduledTask calls PUT /api/v1/apps/{name}/scheduled-tasks/{id}: a full replace of Command/Schedule/Enabled, not a partial patch, matching handleUpdateScheduledTask's own contract.
func (*Client) UpdateSecurityPolicy ¶ added in v0.2.0
func (c *Client) UpdateSecurityPolicy(ctx context.Context, in SecurityPolicyUpdate) (SecurityPolicy, error)
UpdateSecurityPolicy calls PUT /api/v1/security/policy (root).
func (*Client) UpdateStandaloneDomain ¶ added in v0.2.0
func (c *Client) UpdateStandaloneDomain(ctx context.Context, domain string, req StandaloneDomainRequest) (StandaloneDomain, error)
UpdateStandaloneDomain calls PUT /api/v1/domains/standalone/{domain}.
func (*Client) UpdateStorageBucket ¶
func (c *Client) UpdateStorageBucket(ctx context.Context, id string, req UpdateStorageBucketRequest) (StorageBucket, error)
UpdateStorageBucket calls PATCH /api/v1/storage/buckets/{id}.
func (*Client) UpdateTrafficExportSink ¶
func (c *Client) UpdateTrafficExportSink(ctx context.Context, id string, req TrafficExportSink) (TrafficExportSink, error)
UpdateTrafficExportSink calls PUT /api/v1/settings/traffic-export/sinks/{id}.
func (*Client) UpdateUsageSettings ¶ added in v0.2.0
func (c *Client) UpdateUsageSettings(ctx context.Context, u UsageSettingsUpdate) (UsageSettings, error)
UpdateUsageSettings calls PUT /api/v1/usage/settings.
func (*Client) UpdateUserAbilities ¶
func (c *Client) UpdateUserAbilities(ctx context.Context, id string, req UpdateUserAbilitiesRequest) (UserResource, error)
UpdateUserAbilities calls PUT /api/v1/users/{id}/abilities.
func (*Client) UpgradeBackupNow ¶ added in v0.2.0
func (c *Client) UpgradeBackupNow(ctx context.Context) (UpgradeBackupNowResult, error)
UpgradeBackupNow calls POST /api/v1/updates/backup-now.
func (*Client) UpgradeDatabaseNow ¶ added in v0.2.0
func (c *Client) UpgradeDatabaseNow(ctx context.Context, name, version, confirm string) (DBUpgradeRun, error)
UpgradeDatabaseNow calls POST /api/v1/databases/{name}/upgrade-now.
func (*Client) UpgradePlugin ¶
func (c *Client) UpgradePlugin(ctx context.Context, name string, in InstallPluginInput) (Plugin, error)
UpgradePlugin calls POST /api/v1/plugins/{name}/upgrade.
func (*Client) UploadBenchmark ¶
UploadBenchmark calls POST /api/v1/benchmarks with a results file as written by bench chaos run --out.
func (*Client) UploadBucketObject ¶
func (c *Client) UploadBucketObject(ctx context.Context, id, key string, data []byte) (BucketObject, error)
UploadBucketObject calls PUT /api/v1/storage/buckets/{id}/objects with data as the raw body.
func (*Client) UploadSiteZip ¶
func (c *Client) UploadSiteZip(ctx context.Context, name string, archive io.Reader, size int64, progress func(sent int64)) (SourceUpload, error)
UploadSiteZip streams a zip of a static site to POST /api/v1/apps/{name}/uploads.
func (*Client) UploadSource ¶
func (c *Client) UploadSource(ctx context.Context, name string, archive io.Reader, size int64, progress func(sent int64)) (SourceUpload, error)
UploadSource streams a gzip tar of size bytes to POST /api/v1/apps/{name}/uploads. It uses no overall timeout: a large archive on a slow link is bounded by ctx.
func (*Client) UseGitConnectionRepoAsSource ¶
func (c *Client) UseGitConnectionRepoAsSource(ctx context.Context, id string, req UseRepoAsSourceRequest) (GitSourceResource, error)
UseGitConnectionRepoAsSource calls POST /api/v1/git-connections/{id}/use-as-source.
func (*Client) UseGitHubRepoAsSource ¶ added in v0.2.0
func (c *Client) UseGitHubRepoAsSource(ctx context.Context, owner, repo string, req UseRepoAsSourceRequest) (UseGitHubRepoAsSourceResponse, error)
UseGitHubRepoAsSource calls POST /api/v1/github-app/repos/{owner}/{repo}/use-as-source: connects the repo as req.AppName's git source and registers a push webhook.
func (*Client) ValidateGitProvider ¶
ValidateGitProvider calls POST /api/v1/git-providers/{provider}/validate.
func (*Client) ValidateGitSourceAccess ¶
ValidateGitSourceAccess calls POST /api/v1/apps/{name}/git-source/validate.
func (*Client) ValidateImageSignaturePolicy ¶
func (c *Client) ValidateImageSignaturePolicy(ctx context.Context, req ImageSignaturePolicyRequest) (ImageSignaturePolicyResource, error)
ValidateImageSignaturePolicy calls POST /api/v1/images/signature-policy/validate.
func (*Client) ValidatePipeline ¶ added in v0.2.0
ValidatePipeline calls POST /api/v1/pipelines/validate.
func (*Client) VerifyAppImport ¶ added in v0.2.0
func (c *Client) VerifyAppImport(ctx context.Context, id string, items []string) (AppImportView, error)
VerifyAppImport calls POST .../sessions/{id}/verify.
func (*Client) VerifyArchive ¶
VerifyArchive calls POST /api/v1/archives/{id}/verify.
func (*Client) VerifyAuditLog ¶
func (c *Client) VerifyAuditLog(ctx context.Context) (AuditChainReport, error)
VerifyAuditLog calls GET /api/v1/audit-log/verify: walks the audit hash chain.
func (*Client) VerifyBackup ¶
func (c *Client) VerifyBackup(ctx context.Context, name, historyID string) (BackupVerificationResource, error)
VerifyBackup calls POST /api/v1/databases/{name}/backups/{historyId}/verify: re-downloads a previously succeeded backup and checks it for corruption, returning as soon as the attempt is recorded and under way, not once the download and checks actually finish. ListBackupVerifications is how a caller finds out whether it passed.
func (*Client) VerifyControlPlaneBackup ¶ added in v0.2.0
func (c *Client) VerifyControlPlaneBackup(ctx context.Context, name string) (ControlPlaneBackupVerification, error)
VerifyControlPlaneBackup calls POST /api/v1/system/backups/{name}/verify. A failed check is a normal response with ok false, not an error.
func (*Client) VerifyEvidencePack ¶
VerifyEvidencePack calls POST .../evidence-packs/{id}/verify.
func (*Client) VerifyImage ¶
func (c *Client) VerifyImage(ctx context.Context, req ImageVerifyRequest) (ImageVerifyResource, error)
VerifyImage calls POST /api/v1/images/verify.
func (*Client) VerifyMigration ¶
func (c *Client) VerifyMigration(ctx context.Context, req MigrationVerifyRequest) (MigrationVerifyReport, error)
VerifyMigration calls POST /api/v1/migrations/verify. It changes nothing but stores the report.
func (*Client) VerifyMigrationAgent ¶
func (c *Client) VerifyMigrationAgent(ctx context.Context, id, app string, targets []MigrationAgentVerifyTarget, ackEmpty bool) (MigrationAgentVerifyResult, error)
VerifyMigrationAgent calls POST /api/v1/migration/agent/sessions/{id}/verify.
func (*Client) VerifyProxyIntegration ¶ added in v0.2.0
func (c *Client) VerifyProxyIntegration(ctx context.Context, domain string) (ProxyIntegration, error)
VerifyProxyIntegration probes every route, or only domain when set.
func (*Client) VerifyVolumeBackup ¶
func (c *Client) VerifyVolumeBackup(ctx context.Context, name, volume, historyID string) (BackupVerificationResource, error)
VerifyVolumeBackup calls POST /api/v1/apps/{name}/volumes/{volume}/backups/{historyId}/verify: the app service volume counterpart of VerifyBackup.
func (*Client) WaitForDeploy ¶ added in v0.2.0
func (c *Client) WaitForDeploy(ctx context.Context, name, deployID string, opts WaitOptions) (WaitResult, error)
WaitForDeploy polls one deploy until it is healthy, failed, canceled, superseded or blocked, or the window elapses. An empty or "latest" deployID is resolved once to a concrete id, so a newer deploy cannot take over the wait.
type CloneAppRequest ¶ added in v0.2.0
type CloneAppRequest struct {
NewName string `json:"new_name"`
CopySecrets bool `json:"copy_secrets,omitempty"`
Domains string `json:"domains,omitempty"`
DomainSuffix string `json:"domain_suffix,omitempty"`
EnvironmentID string `json:"environment_id,omitempty"`
}
CloneAppRequest mirrors internal/api's cloneAppRequest (internal/api/apps_clone.go): POST /api/v1/apps/{name}/clone's request body.
type ClonePreview ¶ added in v0.2.0
type ClonePreview struct {
Source string `json:"source"`
WillCopy []string `json:"will_copy"`
WillNotCopy []string `json:"will_not_copy"`
SecretNames []string `json:"secret_names"`
Domains []string `json:"source_domains"`
}
ClonePreview is GET /api/v1/apps/{name}/clone/preview's body.
type CloneRestoreResource ¶
type CloneRestoreResource struct {
ID string `json:"id"`
SourceDatabaseName string `json:"source_database_name"`
NewDatabaseName string `json:"new_database_name"`
BackupHistoryID string `json:"backup_history_id"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
CloneRestoreResource mirrors internal/api's cloneRestoreResource (internal/api/database_clone_restore.go): one "restore as new database" attempt.
type CloudflareDNSResource ¶
type CloudflareDNSResource struct {
Enabled bool `json:"enabled"`
HasToken bool `json:"has_token"`
}
CloudflareDNSResource mirrors internal/api's cloudflareDNSResource (internal/api/cloudflare_dns.go): GET/PUT/DELETE /api/v1/settings/cloudflare-dns's wire shape. The token itself never appears here in either direction.
type CloudflareTunnelResource ¶
type CloudflareTunnelResource struct {
Enabled bool `json:"enabled"`
HasToken bool `json:"has_token"`
Status string `json:"status"`
Message string `json:"message,omitempty"`
}
CloudflareTunnelResource mirrors internal/api's cloudflareTunnelResource (internal/api/cloudflare_tunnel.go): GET/PUT/DELETE /api/v1/settings/cloudflare-tunnel's wire shape. The token itself never appears here in either direction. A distinct credential and endpoint from CloudflareDNSResource: this one runs the cloudflared container, that one configures ACME's DNS-01 challenge.
type CodeLoginSettings ¶ added in v0.2.0
type CodeLoginSettings struct {
Admins bool `json:"admins"`
Others bool `json:"others"`
Saved bool `json:"saved"`
NewDeviceApproval bool `json:"new_device_approval"`
}
CodeLoginSettings mirrors internal/api's codeLoginSettingsResource.
type CodeLoginSettingsUpdate ¶ added in v0.2.0
type CodeLoginSettingsUpdate struct {
Admins *bool `json:"admins,omitempty"`
Others *bool `json:"others,omitempty"`
}
CodeLoginSettingsUpdate is the PUT body; nil fields keep their value.
type CompleteAccessReviewResult ¶
type CompleteAccessReviewResult struct {
Revoked int `json:"revoked"`
Failures []AccessReviewItem `json:"failures"`
}
CompleteAccessReviewResult is the answer of completing a campaign.
type ComposeDeployResult ¶
type ComposeDeployResult struct {
AppID string `json:"app_id"`
Services []AppResource `json:"services"`
}
ComposeDeployResult mirrors internal/api's composeDeployResponse (internal/api/apps_compose.go).
type ComposeDownResult ¶ added in v0.2.0
type ComposeDownResult struct {
AppID string `json:"app_id"`
Removed []string `json:"removed"`
TeardownPending []string `json:"teardown_pending,omitempty"`
VolumesKept []string `json:"volumes_kept,omitempty"`
VolumesRemoved []string `json:"volumes_removed,omitempty"`
VolumeErrors []string `json:"volume_errors,omitempty"`
}
ComposeDownResult mirrors DELETE /api/v1/apps/{name}/compose.
type ComposePreview ¶ added in v0.2.0
type ComposePreview struct {
Valid bool `json:"valid"`
Errors []string `json:"errors,omitempty"`
Services []struct {
Key string `json:"key"`
Image string `json:"image,omitempty"`
Port int `json:"port,omitempty"`
Domain string `json:"domain,omitempty"`
Volumes []string `json:"volumes,omitempty"`
DependsOn []string `json:"depends_on,omitempty"`
Env []struct {
Key string `json:"key"`
Generated bool `json:"generated,omitempty"`
Required bool `json:"required,omitempty"`
} `json:"env,omitempty"`
} `json:"services"`
Profiles []string `json:"profiles,omitempty"`
Skipped []string `json:"skipped_services,omitempty"`
Warnings []string `json:"warnings,omitempty"`
Notices []struct {
Level string `json:"level"`
Message string `json:"message"`
} `json:"notices,omitempty"`
NeedsRoot bool `json:"needs_root,omitempty"`
}
ComposePreview mirrors POST /api/v1/compose/preview.
type ComposeRevision ¶ added in v0.2.0
type ComposeRevision struct {
Revision int `json:"revision"`
Source string `json:"source"`
TemplateID string `json:"template_id,omitempty"`
Profiles []string `json:"profiles,omitempty"`
CreatedBy string `json:"created_by,omitempty"`
CreatedAt string `json:"created_at"`
Compose string `json:"compose,omitempty"`
}
ComposeRevision mirrors one compose revision.
type ComposeRollbackResult ¶ added in v0.2.0
type ComposeRollbackResult struct {
AppID string `json:"app_id"`
RolledBackTo int `json:"rolled_back_to"`
Deploy ComposeStackDeploy `json:"deploy"`
}
ComposeRollbackResult mirrors POST /api/v1/apps/{name}/compose/rollback.
type ComposeStack ¶ added in v0.2.0
type ComposeStack struct {
AppID string `json:"app_id"`
Phase string `json:"phase"`
Revision int `json:"revision,omitempty"`
DeployedAt string `json:"deployed_at,omitempty"`
Source string `json:"source,omitempty"`
TemplateID string `json:"template_id,omitempty"`
Profiles []string `json:"profiles,omitempty"`
Services []ComposeStackService `json:"services"`
}
ComposeStack mirrors GET /api/v1/apps/{name}/compose.
type ComposeStackDeploy ¶ added in v0.2.0
type ComposeStackDeploy struct {
AppID string `json:"app_id"`
Services []AppResource `json:"services"`
Notices []struct {
Level string `json:"level"`
Message string `json:"message"`
} `json:"notices,omitempty"`
Revision int `json:"revision,omitempty"`
Skipped []string `json:"skipped_services,omitempty"`
}
ComposeStackDeploy is a compose deploy response with its revision.
type ComposeStackService ¶ added in v0.2.0
type ComposeStackService struct {
Key string `json:"key"`
Name string `json:"name"`
Image string `json:"image"`
Port int `json:"port,omitempty"`
Domains []string `json:"domains,omitempty"`
DependsOn []string `json:"depends_on,omitempty"`
DependsOnHealthy []string `json:"depends_on_healthy,omitempty"`
Volumes []string `json:"volumes,omitempty"`
Replicas int `json:"replicas"`
Suspended bool `json:"suspended,omitempty"`
Ready string `json:"ready"`
Reason string `json:"reason,omitempty"`
Message string `json:"message,omitempty"`
Since string `json:"since,omitempty"`
}
ComposeStackService mirrors one entry of GET /api/v1/apps/{name}/compose.
type ConditionResource ¶
type ConditionResource struct {
Type string `json:"Type"`
Status string `json:"Status"`
Reason string `json:"Reason"`
Message string `json:"Message"`
LastTransitionTime time.Time `json:"LastTransitionTime"`
}
ConditionResource mirrors internal/reconcile.Condition, the wire shape both GET /api/v1/apps/{name}/deploys (internal/api/deploys.go's handleDeployHistory) and GET /api/v1/databases/{name}/status (internal/api/databases.go's handleDatabaseStatus) return. The source type carries no json struct tags, so its field names are the wire field names verbatim; the tags here just make that explicit rather than relying on encoding/json's case-insensitive match.
type ConnectableDatabaseResource ¶ added in v0.2.0
type ConnectableDatabaseResource struct {
Name string `json:"name"`
Engine string `json:"engine"`
NodeID string `json:"node_id,omitempty"`
CrossNode bool `json:"cross_node"`
AlreadyConnected bool `json:"already_connected"`
ConnectedEnvVars []string `json:"connected_env_vars,omitempty"`
}
ConnectableDatabaseResource mirrors internal/api's connectableDatabaseResource: GET /api/v1/apps/{name}/connectable-databases' wire shape for one candidate database.
type ConsoleBulkResult ¶
type ConsoleBulkResult struct {
Kind string `json:"kind"`
Name string `json:"name"`
Status string `json:"status"`
Message string `json:"message,omitempty"`
}
ConsoleBulkResult is one resource outcome of a bulk tag call.
type ConsoleBulkTagRequest ¶
type ConsoleBulkTagRequest struct {
Action string `json:"action"`
Tag string `json:"tag"`
Resources []ConsoleRef `json:"resources"`
DryRun bool `json:"dry_run,omitempty"`
}
ConsoleBulkTagRequest is the body of POST /api/v1/resources/tags/bulk.
type ConsoleBulkTagResponse ¶
type ConsoleBulkTagResponse struct {
Action string `json:"action"`
Tag string `json:"tag"`
DryRun bool `json:"dry_run"`
Results []ConsoleBulkResult `json:"results"`
Counts map[string]int `json:"counts"`
}
ConsoleBulkTagResponse is the bulk tag outcome.
type ConsoleList ¶
type ConsoleList struct {
Items []ConsoleResource `json:"items"`
Total int `json:"total"`
Counts map[string]int `json:"counts"`
}
ConsoleList is the explorer response.
type ConsoleQuery ¶
ConsoleQuery filters the explorer list.
type ConsoleRef ¶
ConsoleRef names one resource in a bulk request.
type ConsoleResource ¶
type ConsoleResource struct {
ID string `json:"id,omitempty"`
Kind string `json:"kind"`
Name string `json:"name"`
Detail string `json:"detail,omitempty"`
Status string `json:"status,omitempty"`
Tags []string `json:"tags"`
}
ConsoleResource is one row of GET /api/v1/resources.
type ConsoleView ¶
type ConsoleView struct {
ID string `json:"id"`
Name string `json:"name"`
Query string `json:"query"`
CreatedAt time.Time `json:"created_at"`
}
ConsoleView is a saved explorer view.
type ContainerPortResource ¶
type ContainerPortResource struct {
ContainerPort int `json:"container_port"`
HostPort int `json:"host_port"`
Protocol string `json:"protocol"`
}
ContainerPortResource mirrors internal/api's containerPortResource.
type ContainerResource ¶
type ContainerResource struct {
Name string `json:"name"`
Image string `json:"image"`
Running bool `json:"running"`
Ports []ContainerPortResource `json:"ports"`
}
ContainerResource mirrors internal/api's containerResource (internal/api/containers.go): every container on this node, Levelrail-managed or not. Read-only, no id: see that file's own doc comment on why a stop/restart action doesn't belong on this endpoint.
type ControlPlaneBackup ¶ added in v0.2.0
type ControlPlaneBackup struct {
Name string `json:"name"`
SizeBytes int64 `json:"size_bytes"`
CreatedAt string `json:"created_at"`
SHA256 string `json:"sha256"`
// VerifiedAt and VerifiedOK are set once the snapshot has been verified.
VerifiedAt string `json:"verified_at,omitempty"`
VerifiedOK *bool `json:"verified_ok,omitempty"`
}
ControlPlaneBackup mirrors internal/cpbackup.Info: one control plane database snapshot.
type ControlPlaneBackupCheck ¶ added in v0.2.0
type ControlPlaneBackupCheck struct {
Name string `json:"name"`
OK bool `json:"ok"`
Detail string `json:"detail"`
}
ControlPlaneBackupCheck is one step of a backup verification.
type ControlPlaneBackupVerification ¶ added in v0.2.0
type ControlPlaneBackupVerification struct {
Name string `json:"name"`
OK bool `json:"ok"`
Checks []ControlPlaneBackupCheck `json:"checks"`
VerifiedAt string `json:"verified_at"`
}
ControlPlaneBackupVerification mirrors internal/cpbackup.VerifyResult.
type ControlPlaneDR ¶ added in v0.2.0
type ControlPlaneDR struct {
Enabled bool `json:"enabled"`
Configured bool `json:"configured"`
TargetID string `json:"target_id"`
TargetName string `json:"target_name,omitempty"`
InstallID string `json:"install_id"`
Recipients []string `json:"recipients"`
Schedule string `json:"schedule"`
DrillSchedule string `json:"drill_schedule"`
RetainDaily int `json:"retain_daily"`
RetainWeekly int `json:"retain_weekly"`
RetainMonthly int `json:"retain_monthly"`
EscrowTargetID string `json:"escrow_target_id"`
EscrowGeneratedAt string `json:"escrow_generated_at,omitempty"`
EscrowAckedAt string `json:"escrow_acked_at,omitempty"`
NextBackupAt string `json:"next_backup_at,omitempty"`
NextDrillAt string `json:"next_drill_at,omitempty"`
LastBackupAt string `json:"last_backup_at,omitempty"`
LastBackupKey string `json:"last_backup_key,omitempty"`
LastBackupError string `json:"last_backup_error,omitempty"`
LastAttemptAt string `json:"last_attempt_at,omitempty"`
LastDrill ControlPlaneDRDrill `json:"last_drill"`
DrillIdentityConfigured bool `json:"drill_identity_configured"`
BackupRunning bool `json:"backup_running"`
DrillRunning bool `json:"drill_running"`
Checklist ControlPlaneDRChecklist `json:"checklist"`
Warnings []ControlPlaneDRWarning `json:"warnings"`
Replica *ControlPlaneReplica `json:"replica,omitempty"`
}
ControlPlaneDR mirrors internal/cpbackup.Status: off-box backup configuration and health. It carries public recipients only.
type ControlPlaneDRChecklist ¶ added in v0.2.0
type ControlPlaneDRChecklist struct {
DestinationChosen bool `json:"destination_chosen"`
RecipientSet bool `json:"recipient_set"`
EscrowAcknowledged bool `json:"escrow_acknowledged"`
DrillPassed bool `json:"drill_passed"`
}
ControlPlaneDRChecklist mirrors internal/cpbackup.Checklist.
type ControlPlaneDRDrill ¶ added in v0.2.0
type ControlPlaneDRDrill struct {
At string `json:"at,omitempty"`
OK bool `json:"ok"`
Partial bool `json:"partial"`
Detail string `json:"detail"`
DurationMs int64 `json:"duration_ms"`
}
ControlPlaneDRDrill mirrors internal/cpbackup.DrillStatus.
type ControlPlaneDRSettings ¶ added in v0.2.0
type ControlPlaneDRSettings struct {
Enabled bool `json:"enabled"`
TargetID string `json:"target_id"`
Recipients []string `json:"recipients"`
Schedule string `json:"schedule"`
DrillSchedule string `json:"drill_schedule"`
RetainDaily int `json:"retain_daily"`
RetainWeekly int `json:"retain_weekly"`
RetainMonthly int `json:"retain_monthly"`
EscrowTargetID string `json:"escrow_target_id"`
}
ControlPlaneDRSettings is the body of PUT /system/control-plane-dr/settings.
type ControlPlaneDRWarning ¶ added in v0.2.0
ControlPlaneDRWarning mirrors internal/cpbackup.Warning.
type ControlPlaneEscrowBundle ¶ added in v0.2.0
type ControlPlaneEscrowBundle struct {
Armored string `json:"armored"`
Instructions string `json:"instructions"`
Fingerprint string `json:"fingerprint"`
RecipientCount int `json:"recipient_count"`
CreatedAt string `json:"created_at"`
UploadedKey string `json:"uploaded_key,omitempty"`
}
ControlPlaneEscrowBundle mirrors internal/cpbackup.EscrowBundle.
type ControlPlaneOffboxBackup ¶ added in v0.2.0
type ControlPlaneOffboxBackup struct {
Key string `json:"key"`
ManifestKey string `json:"manifest_key"`
CreatedAt string `json:"created_at"`
SizeBytes int64 `json:"size_bytes"`
Complete bool `json:"complete"`
}
ControlPlaneOffboxBackup mirrors internal/cpbackup.Remote.
type ControlPlaneReplica ¶
type ControlPlaneReplica struct {
Enabled bool `json:"enabled"`
IntervalSeconds int `json:"interval_seconds"`
LastShipAt string `json:"last_ship_at,omitempty"`
LastShipMs int64 `json:"last_ship_ms,omitempty"`
LastSizeBytes int64 `json:"last_size_bytes,omitempty"`
LastError string `json:"last_error,omitempty"`
PendingSince string `json:"pending_since,omitempty"`
}
ControlPlaneReplica is the opt-in continuous replica state.
type ControlPlaneRestoreBackup ¶
type ControlPlaneRestoreBackup struct {
Key string `json:"key"`
CreatedAt string `json:"created_at"`
SizeBytes int64 `json:"size_bytes"`
}
ControlPlaneRestoreBackup is the newest complete off-box backup.
type ControlPlaneRestorePlan ¶
type ControlPlaneRestorePlan struct {
Ready bool `json:"ready"`
Backup *ControlPlaneRestoreBackup `json:"backup,omitempty"`
InstallID string `json:"install_id,omitempty"`
Source string `json:"source,omitempty"`
Endpoint string `json:"endpoint,omitempty"`
Command string `json:"command,omitempty"`
Steps []ControlPlaneRestoreStep `json:"steps"`
Warnings []string `json:"warnings"`
BinaryName string `json:"binary_name"`
}
ControlPlaneRestorePlan mirrors the restore-plan response.
type ControlPlaneRestoreStep ¶
ControlPlaneRestoreStep is one ordered recovery step and whether it is done.
type CostBudgetStatus ¶
type CostBudgetStatus struct {
costbudget.Budget
Currency string `json:"currency"`
Period string `json:"period"`
Spent float64 `json:"spent"`
Pct float64 `json:"pct"`
Forecast usagecost.Band `json:"forecast"`
ForecastPct float64 `json:"forecast_pct"`
Highest int `json:"highest"`
Enforced string `json:"enforced"`
Apps []string `json:"apps"`
Level string `json:"level"`
SuggestedMonthly float64 `json:"suggested_monthly"`
ResetsAt time.Time `json:"resets_at"`
}
CostBudgetStatus is one named budget with its month to date position.
type CostBudgets ¶
type CostBudgets struct {
Budgets []CostBudgetStatus `json:"budgets"`
Currency string `json:"currency"`
}
CostBudgets is GET /api/v1/costs/budgets.
type CostEstimateProviderResource ¶ added in v0.2.0
type CostEstimateProviderResource struct {
Key string `json:"key"`
Label string `json:"label"`
CPUCostUSD float64 `json:"cpu_cost_usd"`
MemoryCostUSD float64 `json:"memory_cost_usd"`
TotalUSD float64 `json:"total_usd"`
MinimumApplied bool `json:"minimum_applied"`
}
CostEstimateProviderResource mirrors internal/api's costEstimateProviderResource: one reference provider's resulting monthly estimate.
type CostEstimateResource ¶ added in v0.2.0
type CostEstimateResource struct {
ServiceName string `json:"service_name"`
VCPUCores float64 `json:"vcpu_cores"`
MemoryGiB float64 `json:"memory_gib"`
CPUBasis string `json:"cpu_basis"`
MemoryBasis string `json:"memory_basis"`
Providers []CostEstimateProviderResource `json:"providers"`
Note string `json:"note"`
}
CostEstimateResource mirrors internal/api's costEstimateResource: the response shape for GET /api/v1/apps/{name}/cost-estimate (internal/api/cost_estimate.go), a deterministic "what this would cost elsewhere" estimate (internal/costestimate) derived from the app's declared or observed CPU/memory. Note always restates that this is an estimate, not a real bill.
type CostExploration ¶
type CostExploration struct {
usagecost.Exploration
Granularity string `json:"granularity"`
Currency string `json:"currency"`
Period usagecost.Period `json:"period"`
Labels map[string]string `json:"labels"`
Forecast *usagecost.Band `json:"forecast,omitempty"`
Configured bool `json:"configured"`
TelemetryAvailable bool `json:"telemetry_available"`
GeneratedAt string `json:"generated_at"`
}
CostExploration is GET /api/v1/costs/explore.
type CostExploreQuery ¶
type CostExploreQuery struct {
GroupBy string
Granularity string
Period string
From string
To string
Months int
}
CostExploreQuery selects what the explorer aggregates.
type CoverageRowResource ¶ added in v0.2.0
type CoverageRowResource struct {
Kind string `json:"kind"`
AppName string `json:"app_name,omitempty"`
Name string `json:"name"`
Scratch bool `json:"scratch,omitempty"`
State string `json:"state"`
Reason string `json:"reason,omitempty"`
PrimaryAction string `json:"primary_action"`
Schedule string `json:"schedule,omitempty"`
TargetID string `json:"target_id,omitempty"`
NextRun string `json:"next_run,omitempty"`
LastBackupAt string `json:"last_backup_at,omitempty"`
LastVerifiedAt string `json:"last_verified_at,omitempty"`
TotalBytes int64 `json:"total_bytes"`
BackupCount int `json:"backup_count"`
Encrypted bool `json:"encrypted"`
ProtectionLevel string `json:"protection_level,omitempty"`
}
CoverageRowResource mirrors internal/api's coverageRowResource.
type CoverageSummaryResource ¶ added in v0.2.0
type CoverageSummaryResource struct {
Total int `json:"total"`
Protected int `json:"protected"`
Verified int `json:"verified"`
Unverified int `json:"unverified"`
NeverRan int `json:"never_ran"`
Failing int `json:"failing"`
Unprotected int `json:"unprotected"`
Scratch int `json:"scratch"`
StorageBytes int64 `json:"storage_bytes"`
LastVerifiedRestore string `json:"last_verified_restore,omitempty"`
NextRun string `json:"next_run,omitempty"`
}
CoverageSummaryResource mirrors internal/api's coverageSummaryResource.
type CreateAIChatMessageRequest ¶ added in v0.2.0
type CreateAIChatMessageRequest struct {
Content string `json:"content"`
}
CreateAIChatMessageRequest mirrors internal/api's createAIChatMessageRequest: POST /api/v1/ai/sessions/{id}/messages's request body.
type CreateAccessReviewRequest ¶
type CreateAccessReviewRequest struct {
Name string `json:"name,omitempty"`
DueDays int `json:"due_days,omitempty"`
RepeatDays int `json:"repeat_days,omitempty"`
}
CreateAccessReviewRequest is the POST body for a new campaign.
type CreateAlertRuleRequest ¶
type CreateAlertRuleRequest struct {
Name string `json:"name"`
Kind string `json:"kind"`
Metric string `json:"metric,omitempty"`
Comparator string `json:"comparator,omitempty"`
Threshold float64 `json:"threshold,omitempty"`
ForDuration string `json:"for_duration,omitempty"`
RestartCountThreshold int `json:"restart_count_threshold,omitempty"`
RestartWindow string `json:"restart_window,omitempty"`
// ScheduledTaskID is kind=scheduled_task_failure-only: which of this
// app's scheduled tasks the rule watches. RestartCountThreshold above
// doubles as its consecutive-failure threshold.
ScheduledTaskID string `json:"scheduled_task_id,omitempty"`
// BackupResourceKind/BackupDatabaseName/BackupServiceName/
// BackupVolumeName are kind=backup_missing-only: which database or
// service volume the rule watches. ForDuration above doubles as its
// overdue grace period.
BackupResourceKind string `json:"backup_resource_kind,omitempty"`
BackupDatabaseName string `json:"backup_database_name,omitempty"`
BackupServiceName string `json:"backup_service_name,omitempty"`
BackupVolumeName string `json:"backup_volume_name,omitempty"`
// SLO is kind=slo_burn-only: the request-based SLO the rule watches.
SLO *AlertSLOConfig `json:"slo,omitempty"`
// LogRule is kind=log_pattern and log_level_rate only.
LogRule *AlertLogRule `json:"log_rule,omitempty"`
ChannelID string `json:"channel_id,omitempty"`
NotifyURL string `json:"notify_url,omitempty"`
NotifyKind string `json:"notify_kind,omitempty"`
Enabled bool `json:"enabled"`
Severity string `json:"severity,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
ConsecutiveFailures int `json:"consecutive_failures,omitempty"`
FlapThreshold int `json:"flap_threshold,omitempty"`
FlapWindow string `json:"flap_window,omitempty"`
}
CreateAlertRuleRequest mirrors the fields internal/api's ruleResource actually reads from a create request body; id and resource_id always come from the server (alerting.NewRuleID, the app name in the URL), never the body, so this type has no fields for either. A kind=cert_expiry rule needs none of the threshold or crashloop fields below: it watches every stored certificate platform-wide, not this rule's own resource_id.
type CreateAppConnectionRequest ¶ added in v0.2.0
type CreateAppConnectionRequest struct {
Database string `json:"database"`
Field string `json:"field,omitempty"`
EnvVar string `json:"env_var,omitempty"`
}
CreateAppConnectionRequest mirrors internal/api's createAppConnectionRequest (apps_connections.go). Field and EnvVar are both optional: the server defaults Field to "url" and generates a collision-safe EnvVar (see defaultConnectionEnvVar's own doc comment) when left blank.
type CreateAppStreamRequest ¶ added in v0.2.0
type CreateAppStreamRequest struct {
ContainerPort int `json:"container_port"`
HostPort int `json:"host_port"`
Protocol string `json:"protocol,omitempty"`
}
CreateAppStreamRequest mirrors internal/api's createAppStreamRequest.
type CreateBackupTargetRequest ¶
type CreateBackupTargetRequest struct {
Name string `json:"name"`
Provider string `json:"provider"`
Endpoint string `json:"endpoint,omitempty"`
Region string `json:"region,omitempty"`
Bucket string `json:"bucket"`
AccessKeyID string `json:"access_key_id"`
SecretAccessKey string `json:"secret_access_key"`
EncryptDumps *bool `json:"encrypt_dumps,omitempty"`
}
CreateBackupTargetRequest mirrors internal/api's createBackupTargetRequest: AccessKeyID/SecretAccessKey are required here, unlike UpdateBackupTargetRequest where they're optional.
type CreateDeployNotifyTargetRequest ¶ added in v0.2.0
type CreateDeployNotifyTargetRequest struct {
ChannelID string `json:"channel_id"`
Enabled bool `json:"enabled"`
}
CreateDeployNotifyTargetRequest mirrors internal/api's createDeployTargetRequest: attach an already-connected channel by ID.
type CreateEnvironmentRequest ¶
type CreateEnvironmentRequest struct {
Name string `json:"name"`
Protected bool `json:"protected,omitempty"`
}
CreateEnvironmentRequest mirrors internal/api's createEnvironmentRequest.
type CreateEventWebhookRequest ¶
type CreateEventWebhookRequest struct {
Name string `json:"name"`
URL string `json:"url"`
Enabled *bool `json:"enabled,omitempty"`
Events []string `json:"events,omitempty"`
}
CreateEventWebhookRequest is the POST /api/v1/event-webhooks body.
type CreateExportDestinationRequest ¶ added in v0.2.0
type CreateExportDestinationRequest struct {
Name string `json:"name"`
Kind string `json:"kind"`
Endpoint string `json:"endpoint,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
Apps []string `json:"apps,omitempty"`
MinLevel string `json:"min_level,omitempty"`
Options ExportOptions `json:"options"`
Headers map[string]string `json:"headers,omitempty"`
HMACKey string `json:"hmac_key,omitempty"`
APIKey string `json:"api_key,omitempty"`
}
CreateExportDestinationRequest is the body of POST /api/v1/export/destinations.
type CreateFirewallRuleRequest ¶ added in v0.2.0
type CreateFirewallRuleRequest struct {
Port int `json:"port"`
Protocol string `json:"protocol,omitempty"`
SourceCIDR string `json:"source_cidr,omitempty"`
Action string `json:"action,omitempty"`
Label string `json:"label,omitempty"`
}
CreateFirewallRuleRequest mirrors internal/api's createFirewallRuleRequest.
type CreateGitConnectionRequest ¶
type CreateGitConnectionRequest struct {
Provider string `json:"provider"`
InstanceURL string `json:"instance_url,omitempty"`
ClientID string `json:"client_id,omitempty"`
ClientSecret string `json:"client_secret,omitempty"`
Label string `json:"label,omitempty"`
ReuseConnectionID string `json:"reuse_connection_id,omitempty"`
// Token is a personal access token, used instead of the OAuth fields (any host).
Token string `json:"token,omitempty"`
}
CreateGitConnectionRequest registers an OAuth application as a new connection.
type CreateGlobalEnvironmentRequest ¶ added in v0.2.0
type CreateGlobalEnvironmentRequest struct {
Name string `json:"name"`
Kind string `json:"kind,omitempty"`
Protected bool `json:"protected,omitempty"`
SortOrder int `json:"sort_order,omitempty"`
}
CreateGlobalEnvironmentRequest mirrors internal/api's createGlobalEnvironmentRequest.
type CreateInviteRequest ¶
type CreateInviteRequest struct {
Email string `json:"email"`
Role string `json:"role,omitempty"`
Abilities []string `json:"abilities,omitempty"`
}
CreateInviteRequest mirrors internal/api's createInviteRequest. Role, when set, takes precedence server-side over Abilities, same precedence CreateUserRequest documents.
type CreateInviteResponse ¶
type CreateInviteResponse struct {
InviteResource
Link string `json:"link"`
}
CreateInviteResponse mirrors internal/api's createInviteResponse: the invite plus Link, the accept URL to hand or send to the invited person.
type CreateIssueSilenceRequest ¶
type CreateIssueSilenceRequest struct {
IssueKey string `json:"issue_key"`
Scope string `json:"scope,omitempty"`
Duration string `json:"duration"`
Reason string `json:"reason,omitempty"`
Severity string `json:"severity,omitempty"`
Confirm bool `json:"confirm,omitempty"`
}
CreateIssueSilenceRequest is the body of POST /api/v1/silences.
type CreateModelDetailResponse ¶
type CreateModelDetailResponse struct {
ModelDetail
APIKey string `json:"api_key"`
}
CreateModelDetailResponse is a ModelDetail plus the one-time API key.
type CreateModelKeyRequest ¶ added in v0.2.0
type CreateModelKeyRequest struct {
Name string `json:"name"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
RPM int `json:"rpm,omitempty"`
TPM int `json:"tpm,omitempty"`
TPD int `json:"tpd,omitempty"`
MaxParallel int `json:"max_parallel,omitempty"`
AllowPaths []string `json:"allow_paths,omitempty"`
AllowModels []string `json:"allow_models,omitempty"`
}
CreateModelKeyRequest is the body of POST /api/v1/models/{name}/keys.
type CreateModelRequest ¶ added in v0.2.0
type CreateModelRequest struct {
Name string `json:"name"`
Engine string `json:"engine"`
Model string `json:"model"`
NodeID string `json:"node_id,omitempty"`
GPUCount int `json:"gpu_count,omitempty"`
GPUDeviceIDs []string `json:"gpu_device_ids,omitempty"`
ContextLength int `json:"context_length,omitempty"`
Quantization string `json:"quantization,omitempty"`
Domain string `json:"domain,omitempty"`
HFToken string `json:"hf_token,omitempty"`
Residency string `json:"residency,omitempty"`
IdleTTLSecs int `json:"idle_ttl_seconds,omitempty"`
SwapGroup string `json:"swap_group,omitempty"`
Compute string `json:"compute,omitempty"`
CatalogID string `json:"catalog_id,omitempty"`
CPUs float64 `json:"cpus,omitempty"`
MemoryMiB int `json:"memory_mib,omitempty"`
WeightsFile string `json:"weights_file,omitempty"`
AcceptLicense bool `json:"accept_license,omitempty"`
External *ExternalEndpointRequest `json:"external,omitempty"`
}
CreateModelRequest mirrors internal/api's createModelRequest.
type CreateModelResponse ¶ added in v0.2.0
type CreateModelResponse struct {
ModelResource
APIKey string `json:"api_key"`
}
CreateModelResponse is a ModelResource plus the one-time API key.
type CreateNetworkShareRequest ¶ added in v0.2.0
type CreateNetworkShareRequest struct {
}
CreateNetworkShareRequest mirrors internal/api's createNetworkShareRequest. Password is required for a cifs share, ignored for nfs.
type CreateNodeJoinTokenRequest ¶ added in v0.2.0
type CreateNodeJoinTokenRequest struct {
ControlPlaneAddr string `json:"control_plane_addr,omitempty"`
NodeName string `json:"node_name,omitempty"`
Mesh bool `json:"mesh,omitempty"`
Provider string `json:"provider,omitempty"`
Region string `json:"region,omitempty"`
Zone string `json:"zone,omitempty"`
}
CreateNodeJoinTokenRequest optionally tailors the returned join commands.
type CreateNodeJoinTokenResponse ¶
type CreateNodeJoinTokenResponse struct {
Token string `json:"token"`
ExpiresAt time.Time `json:"expires_at"`
CAFingerprint string `json:"ca_fingerprint,omitempty"`
ControlPlaneAddr string `json:"control_plane_addr,omitempty"`
JoinCommands *JoinCommands `json:"join_commands,omitempty"`
}
CreateNodeJoinTokenResponse mirrors internal/api's createNodeJoinTokenResponse: a join token's one and only plaintext appearance, the same "shown once, never recoverable again" shape a created API token uses.
type CreateNodeProvisionRequest ¶ added in v0.2.0
type CreateNodeProvisionRequest struct {
Provider string `json:"provider"`
Region string `json:"region"`
Size string `json:"size"`
Name string `json:"name"`
Role string `json:"role,omitempty"`
ControlPlaneAddr string `json:"control_plane_addr"`
// AllowSSHInbound is aws-only; other providers ignore it. Off by
// default, matching this platform's no-inbound-ports architecture.
AllowSSHInbound bool `json:"allow_ssh_inbound,omitempty"`
}
CreateNodeProvisionRequest is POST /api/v1/nodes/provision's body.
type CreateNotificationChannelRequest ¶
type CreateNotificationChannelRequest struct {
Name string `json:"name"`
Kind string `json:"kind"`
NotifyURL string `json:"notify_url"`
Enabled *bool `json:"enabled,omitempty"`
// NotifyDeviceLogin opts the channel into the CLI-login-waiting notice.
NotifyDeviceLogin bool `json:"notify_device_login,omitempty"`
// NotifyDeviceLoginExpired opts the channel into the login-expired notice.
NotifyDeviceLoginExpired bool `json:"notify_device_login_expired,omitempty"`
}
CreateNotificationChannelRequest mirrors internal/api's createNotificationChannelRequest.
type CreateOrganizationRequest ¶
type CreateOrganizationRequest struct {
Name string `json:"name"`
}
CreateOrganizationRequest mirrors internal/api's createOrganizationRequest.
type CreatePackageRegistryRequest ¶
type CreatePackageRegistryRequest struct {
Name string `json:"name"`
Ecosystem string `json:"ecosystem"`
URL string `json:"url"`
Username string `json:"username,omitempty"`
Secret string `json:"secret"`
ModulePatterns string `json:"module_patterns,omitempty"`
ScopeKind string `json:"scope_kind,omitempty"`
ScopeRef string `json:"scope_ref,omitempty"`
}
CreatePackageRegistryRequest is POST /api/v1/package-registries' body.
type CreateProjectRequest ¶
type CreateProjectRequest struct {
Name string `json:"name"`
}
CreateProjectRequest mirrors internal/api's createProjectRequest.
type CreateRegistryCredentialRequest ¶
type CreateRegistryCredentialRequest struct {
Name string `json:"name"`
RegistryHost string `json:"registry_host"`
Username string `json:"username"`
Password string `json:"password,omitempty"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
// Preset (ecr, artifact_registry, acr) and Region mint a self-refreshing
// login from the connected cloud account instead of a typed password.
Preset string `json:"preset,omitempty"`
Region string `json:"region,omitempty"`
}
CreateRegistryCredentialRequest mirrors internal/api's createRegistryCredentialRequest: Password is required here, unlike UpdateRegistryCredentialRequest where it's optional.
type CreateSSHNodeProvisionRequest ¶ added in v0.2.0
type CreateSSHNodeProvisionRequest struct {
Host string `json:"host"`
Port int `json:"port,omitempty"`
Username string `json:"username"`
Auth SSHNodeProvisionAuthRequest `json:"auth"`
Name string `json:"name"`
Role string `json:"role,omitempty"`
ControlPlaneAddr string `json:"control_plane_addr"`
// HostKeyFingerprint pins the server's SHA256 host key; required unless InsecureSkipHostKeyCheck.
HostKeyFingerprint string `json:"host_key_fingerprint,omitempty"`
InsecureSkipHostKeyCheck bool `json:"insecure_skip_host_key_check,omitempty"`
}
CreateSSHNodeProvisionRequest is POST /api/v1/nodes/ssh-provision's body.
type CreateSilenceRequest ¶ added in v0.2.0
type CreateSilenceRequest struct {
Matchers SilenceMatchers `json:"matchers"`
StartsAt *time.Time `json:"starts_at,omitempty"`
EndsAt *time.Time `json:"ends_at,omitempty"`
Duration string `json:"duration,omitempty"`
Reason string `json:"reason,omitempty"`
}
CreateSilenceRequest is the body of POST /api/v1/alert-silences. Set Duration or EndsAt; StartsAt defaults to now.
type CreateStorageBucketRequest ¶
type CreateStorageBucketRequest struct {
Name string `json:"name"`
TargetID string `json:"target_id"`
AppName string `json:"app_name,omitempty"`
EnvPrefix string `json:"env_prefix,omitempty"`
Public bool `json:"public,omitempty"`
QuotaBytes int64 `json:"quota_bytes,omitempty"`
LifecycleDays int `json:"lifecycle_days,omitempty"`
}
CreateStorageBucketRequest is the body of POST /api/v1/storage/buckets.
type CreateTagRequest ¶ added in v0.2.0
type CreateTagRequest struct {
Name string `json:"name"`
}
CreateTagRequest mirrors internal/api's tagResource decode shape for POST /api/v1/tags: only Name is read on create.
type CreateTeamInviteRequest ¶ added in v0.2.0
type CreateTeamInviteRequest struct {
Email string `json:"email,omitempty"`
Role string `json:"role"`
ExpiresInHours int `json:"expires_in_hours,omitempty"`
}
CreateTeamInviteRequest is POST /api/v1/teams/{id}/invites' body.
type CreateUserRequest ¶
type CreateUserRequest struct {
Email string `json:"email"`
DisplayName string `json:"display_name,omitempty"`
Password string `json:"password"`
Abilities []string `json:"abilities,omitempty"`
Role string `json:"role,omitempty"`
}
CreateUserRequest mirrors internal/api's createUserRequest. Role, when set, takes precedence server-side over Abilities (roles.go's resolveAbilities): set one or the other, not both.
type CreatedModelKeyResource ¶ added in v0.2.0
type CreatedModelKeyResource struct {
ModelKeyResource
APIKey string `json:"api_key"`
}
CreatedModelKeyResource is a key plus its one-time plaintext.
type Credentials ¶
type Credentials struct {
APIURL string
Token string
// InstanceID, Fingerprint and ServerName pin the server the token was issued by.
InstanceID string
Fingerprint string
ServerName string
}
Credentials is ReadCredentialsFile/WriteCredentialsFile's in-memory shape: the same two values as EnvAPIURL/EnvAPIToken.
func ReadCredentialsFile ¶
func ReadCredentialsFile(prog, profile string) (Credentials, error)
ReadCredentialsFile reads profile's section from prog's credentials file. A missing file is a plain error the caller treats as "no credentials file," not logged or reported: this is the lowest-priority source in ResolveToken/ResolveAPIURL's precedence chain, its absence is the common case, not a problem. A file that exists but has no section named profile returns a zero Credentials and no error, the same "nothing configured here" shape, since asking for an unconfigured profile is not itself a failure to read the file.
type CustomTemplateDetail ¶ added in v0.2.0
type CustomTemplateDetail struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
SourceApp string `json:"source_app,omitempty"`
Compose string `json:"compose"`
RequiresConfiguration bool `json:"requires_configuration"`
RequiredEnvKeys []string `json:"required_env_keys,omitempty"`
CreatedAt string `json:"created_at"`
}
CustomTemplateDetail mirrors internal/api's customTemplateDetail: POST /api/v1/apps/{name}/save-as-template's own response, including the derived compose.yaml body and which env var keys ended up required (never which secret values: see compose. FromDesiredServices' own doc comment for why there never are any).
type CustomTemplateListItem ¶ added in v0.2.0
type CustomTemplateListItem struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
SourceApp string `json:"source_app,omitempty"`
RequiresConfiguration bool `json:"requires_configuration"`
CreatedAt string `json:"created_at"`
}
CustomTemplateListItem mirrors internal/api's customTemplateListItem: one entry in GET /api/v1/templates/custom, without the full compose body (see CustomTemplateDetail).
type CutoverChange ¶ added in v0.2.0
type CutoverChange struct {
Type string `json:"type"`
Name string `json:"name"`
Value string `json:"value"`
TTL uint32 `json:"ttl"`
Replaces string `json:"replaces,omitempty"`
}
CutoverChange is the exact DNS edit to make.
type CutoverCheck ¶ added in v0.2.0
type CutoverCheck struct {
ID string `json:"id"`
Status string `json:"status"`
Detail string `json:"detail"`
Fix string `json:"fix,omitempty"`
}
CutoverCheck is one named check with what to do about it.
type CutoverDomain ¶ added in v0.2.0
type CutoverDomain struct {
App string `json:"app"`
Domain string `json:"domain"`
Verdict string `json:"verdict"`
Checks []CutoverCheck `json:"checks"`
Change *CutoverChange `json:"change,omitempty"`
}
CutoverDomain is the go or no-go for one domain.
type CutoverReport ¶ added in v0.2.0
type CutoverReport struct {
Verdict string `json:"verdict"`
Phase string `json:"phase"`
TargetIPs []string `json:"target_ips"`
Domains []CutoverDomain `json:"domains"`
Guidance []string `json:"guidance"`
}
CutoverReport is the pre-switch or post-switch result.
type DBCatalogStatus ¶
type DBCatalogStatus struct {
Source string `json:"source"`
Mode string `json:"mode"`
RemoteEnabled bool `json:"remote_enabled"`
DisabledReason string `json:"disabled_reason,omitempty"`
URL string `json:"url"`
GeneratedAt string `json:"generated_at,omitempty"`
FetchedAt string `json:"fetched_at,omitempty"`
LastChecked string `json:"last_checked,omitempty"`
NextAttempt string `json:"next_attempt,omitempty"`
LastError string `json:"last_error,omitempty"`
Freshness string `json:"freshness"`
ServingStaleCopy bool `json:"serving_stale_copy"`
EmbeddedUpdated string `json:"embedded_updated"`
LiveChecks map[string]string `json:"live_checks,omitempty"`
PublicKeyConfigured bool `json:"public_key_configured"`
}
DBCatalogStatus is GET /api/v1/database-catalog.
type DBUpgradeAdvice ¶ added in v0.2.0
type DBUpgradeAdvice struct {
Engine string `json:"engine"`
Current string `json:"current"`
Comparable bool `json:"comparable"`
Floating bool `json:"floating"`
Line string `json:"line,omitempty"`
EOL string `json:"eol,omitempty"`
Support string `json:"support"`
Advisories []string `json:"advisories,omitempty"`
Targets []DBUpgradeTarget `json:"targets"`
AutoMax string `json:"auto_max"`
ImageRevert bool `json:"image_revert"`
ManualReason string `json:"manual_reason,omitempty"`
Notes string `json:"notes,omitempty"`
Note string `json:"note,omitempty"`
CatalogUpdated string `json:"catalog_updated"`
}
DBUpgradeAdvice is the advisor's view of a database's version.
type DBUpgradePolicy ¶ added in v0.2.0
type DBUpgradePolicy struct {
Inherit bool `json:"inherit,omitempty"`
AutoUpgrade string `json:"auto_upgrade"`
WindowCron string `json:"window_cron"`
WindowDurationSeconds int64 `json:"window_duration_seconds"`
WindowTimezone string `json:"window_timezone"`
BackupBefore bool `json:"backup_before"`
VerifyAfter bool `json:"verify_after"`
RevertOnFailure bool `json:"revert_on_failure"`
Notify []string `json:"notify"`
Inherited bool `json:"inherited,omitempty"`
}
DBUpgradePolicy is a database's or the platform default's upgrade policy.
type DBUpgradeRun ¶ added in v0.2.0
type DBUpgradeRun struct {
ID string `json:"id"`
DatabaseName string `json:"database_name"`
Engine string `json:"engine"`
FromVersion string `json:"from_version"`
ToVersion string `json:"to_version"`
Kind string `json:"kind"`
Source string `json:"source"`
State string `json:"state"`
Phase string `json:"phase,omitempty"`
VerifyAfter bool `json:"verify_after"`
RevertOnFailure bool `json:"revert_on_failure"`
BackupID string `json:"backup_id,omitempty"`
VerificationID string `json:"verification_id,omitempty"`
FromImageDigest string `json:"from_image_digest,omitempty"`
SnapshotVolume string `json:"snapshot_volume,omitempty"`
RevertPath string `json:"revert_path,omitempty"`
Reason string `json:"reason,omitempty"`
RequestedBy string `json:"requested_by,omitempty"`
Timings map[string]string `json:"timings"`
CreatedAt string `json:"created_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
DBUpgradeRun is one upgrade attempt.
type DBUpgradeSummary ¶ added in v0.2.0
type DBUpgradeSummary struct {
Items []DBUpgradeSummaryItem `json:"items"`
SecurityCount int `json:"security_count"`
EOLCount int `json:"eol_count"`
}
DBUpgradeSummary is GET /api/v1/databases/upgrade-summary.
type DBUpgradeSummaryItem ¶ added in v0.2.0
type DBUpgradeSummaryItem struct {
Database string `json:"database"`
Engine string `json:"engine"`
Version string `json:"version"`
Support string `json:"support"`
EOL string `json:"eol,omitempty"`
Security bool `json:"security"`
Advisories []string `json:"advisories,omitempty"`
Available int `json:"available"`
ActiveState string `json:"active_state,omitempty"`
LastState string `json:"last_state,omitempty"`
LastReason string `json:"last_reason,omitempty"`
}
DBUpgradeSummaryItem is one database in the upgrade summary.
type DBUpgradeTarget ¶ added in v0.2.0
type DBUpgradeTarget struct {
Version string `json:"version"`
Kind string `json:"kind"`
Security bool `json:"security"`
Advisories []string `json:"advisories,omitempty"`
EOL string `json:"eol,omitempty"`
Automatic bool `json:"automatic"`
}
DBUpgradeTarget is one version the advisor offers.
type DBUpgradesResource ¶ added in v0.2.0
type DBUpgradesResource struct {
Database string `json:"database"`
Engine string `json:"engine"`
Version string `json:"version"`
Advice DBUpgradeAdvice `json:"advice"`
Policy DBUpgradePolicy `json:"policy"`
WindowOpen bool `json:"window_open"`
NextWindow string `json:"next_window,omitempty"`
NextTarget *DBUpgradeTarget `json:"next_target,omitempty"`
Blockers []string `json:"blockers"`
Active *DBUpgradeRun `json:"active,omitempty"`
History []DBUpgradeRun `json:"history"`
}
DBUpgradesResource is GET /api/v1/databases/{name}/upgrades.
type DBVersionInfo ¶
type DBVersionInfo struct {
Version string `json:"version"`
Channel string `json:"channel"`
Released string `json:"released,omitempty"`
EOL string `json:"eol,omitempty"`
Recommended bool `json:"recommended"`
}
DBVersionInfo is one selectable database version.
type DBVersionSource ¶
type DBVersionSource struct {
EOLURL string `json:"eol_url,omitempty"`
TagsURL string `json:"tags_url,omitempty"`
ReleaseNotesURL string `json:"release_notes_url,omitempty"`
}
DBVersionSource links to where a version list came from.
type DBVersions ¶
type DBVersions struct {
Engine string `json:"engine"`
Origin string `json:"origin"`
Versions []DBVersionInfo `json:"versions"`
Source DBVersionSource `json:"source"`
GeneratedAt string `json:"generated_at,omitempty"`
FetchedAt string `json:"fetched_at,omitempty"`
Freshness string `json:"freshness"`
Message string `json:"message,omitempty"`
Cooldown bool `json:"cooldown,omitempty"`
}
DBVersions is GET /api/v1/database-versions?engine=.
type DNSCapabilities ¶ added in v0.2.0
type DNSCapabilities struct {
Proxied bool `json:"proxied"`
Routing bool `json:"routing"`
HealthChecks bool `json:"health_checks"`
ApexCNAME bool `json:"apex_cname"`
}
DNSCapabilities mirrors internal/dnszones.Capabilities.
type DNSChange ¶ added in v0.2.0
type DNSChange struct {
Action string `json:"action"`
Set DNSRecordSet `json:"set"`
Issues []DNSIssue `json:"issues,omitempty"`
}
DNSChange is one planned change.
type DNSDelegation ¶ added in v0.2.0
type DNSDelegation struct {
Delegation struct {
Domain string `json:"domain"`
State string `json:"state"`
Expected []string `json:"expected"`
Resolvers []DNSResolverDelegation `json:"resolvers"`
Elsewhere []string `json:"elsewhere,omitempty"`
} `json:"delegation"`
CheckedAt string `json:"checked_at"`
}
DNSDelegation is GET .../delegation.
type DNSHealthCheck ¶ added in v0.2.0
type DNSHealthCheck struct {
ID string `json:"id,omitempty"`
Type string `json:"type"`
IPAddress string `json:"ip_address,omitempty"`
FQDN string `json:"fqdn,omitempty"`
Port int32 `json:"port,omitempty"`
ResourcePath string `json:"resource_path,omitempty"`
RequestInterval int32 `json:"request_interval,omitempty"`
FailureThreshold int32 `json:"failure_threshold,omitempty"`
}
DNSHealthCheck mirrors internal/dnszones.HealthCheck.
type DNSImportRequest ¶ added in v0.2.0
type DNSImportRequest struct {
Format string `json:"format"`
Content string `json:"content"`
Replace bool `json:"replace,omitempty"`
Apply bool `json:"apply,omitempty"`
Confirm string `json:"confirm,omitempty"`
}
DNSImportRequest is POST .../records/import.
type DNSImportResult ¶ added in v0.2.0
type DNSImportResult struct {
Plan struct {
Changes []DNSChange `json:"changes"`
Summary map[string]int `json:"summary"`
Blocked bool `json:"blocked"`
} `json:"plan"`
Warnings []string `json:"warnings,omitempty"`
Errors []string `json:"errors,omitempty"`
Applied int `json:"applied"`
}
DNSImportResult is the import and template response.
type DNSIssue ¶ added in v0.2.0
type DNSIssue struct {
Severity string `json:"severity"`
Code string `json:"code"`
Message string `json:"message"`
}
DNSIssue is a conflict or warning on a record set.
type DNSPropagation ¶ added in v0.2.0
type DNSPropagation struct {
Name string `json:"name"`
Type string `json:"type"`
Expected []string `json:"expected,omitempty"`
Answers []DNSPropagationAnswer `json:"answers"`
Agree bool `json:"agree"`
}
DNSPropagation is GET /api/v1/dns/check.
type DNSPropagationAnswer ¶ added in v0.2.0
type DNSPropagationAnswer struct {
Server string `json:"server"`
Source string `json:"source"`
Values []string `json:"values,omitempty"`
TTL uint32 `json:"ttl"`
CNAME string `json:"cname,omitempty"`
Error string `json:"error,omitempty"`
Matches *bool `json:"matches,omitempty"`
}
DNSPropagationAnswer is one server's answer in a check.
type DNSProviderEffective ¶
type DNSProviderEffective struct {
Provider string `json:"provider"`
CustomBaseDomain string `json:"custom_base_domain,omitempty"`
Inherited bool `json:"inherited"`
}
DNSProviderEffective is a provider selection.
type DNSProviderFix ¶
type DNSProviderFix struct {
Kind string `json:"kind"`
Provider string `json:"provider,omitempty"`
}
DNSProviderFix is a suggested remedy for a failed resolution test.
type DNSProviderInfo ¶
type DNSProviderInfo struct {
ID string `json:"id"`
Name string `json:"name"`
Suffix string `json:"suffix"`
IPFormat string `json:"ip_format"`
IPv4Only bool `json:"ipv4_only"`
Note string `json:"note"`
}
DNSProviderInfo is one built-in wildcard-DNS provider.
type DNSProviderPlugin ¶
DNSProviderPlugin is the dns_provider plugin chosen for DNS writes, empty for the built-in client.
type DNSProviderRequest ¶
type DNSProviderRequest struct {
Provider string `json:"provider"`
CustomBaseDomain string `json:"custom_base_domain,omitempty"`
}
DNSProviderRequest selects a provider; an empty Provider on an app clears its override.
type DNSProviderState ¶
type DNSProviderState struct {
Providers []DNSProviderInfo `json:"providers"`
Default DNSProviderEffective `json:"default"`
Effective DNSProviderEffective `json:"effective"`
PublicHost string `json:"public_host,omitempty"`
Hostname string `json:"hostname,omitempty"`
URL string `json:"url,omitempty"`
}
DNSProviderState is the wire shape of the DNS provider endpoints.
type DNSProviderTestResult ¶
type DNSProviderTestResult struct {
Status string `json:"status"`
Provider string `json:"provider"`
Hostname string `json:"hostname,omitempty"`
Expected []string `json:"expected,omitempty"`
Resolved []string `json:"resolved,omitempty"`
Message string `json:"message"`
Fixes []DNSProviderFix `json:"fixes,omitempty"`
DigCommand string `json:"dig_command,omitempty"`
}
DNSProviderTestResult is the outcome of a resolution test.
type DNSRecordKey ¶ added in v0.2.0
type DNSRecordKey struct {
Name string `json:"name"`
Type string `json:"type"`
SetIdentifier string `json:"set_identifier,omitempty"`
}
DNSRecordKey identifies a record set.
type DNSRecordResource ¶ added in v0.2.0
type DNSRecordResource struct {
Name string `json:"name"`
Type string `json:"type"`
Value string `json:"value"`
TTLSeconds int `json:"ttl_seconds"`
Status string `json:"status,omitempty"`
}
DNSRecordResource mirrors internal/api's dnsRecordResource (internal/api/dns_records.go): one A/AAAA/CNAME/TXT/MX/SRV/CAA record, used both in GET .../dns-records's own Records list and as the request body shape for create/update/delete.
type DNSRecordSet ¶ added in v0.2.0
type DNSRecordSet struct {
Name string `json:"name"`
Type string `json:"type"`
TTL int `json:"ttl"`
Values []string `json:"values"`
Proxied bool `json:"proxied,omitempty"`
Routing string `json:"routing,omitempty"`
SetIdentifier string `json:"set_identifier,omitempty"`
Weight *int64 `json:"weight,omitempty"`
Failover string `json:"failover,omitempty"`
HealthCheckID string `json:"health_check_id,omitempty"`
Managed bool `json:"managed,omitempty"`
Alias *struct {
DNSName string `json:"dns_name"`
} `json:"alias,omitempty"`
}
DNSRecordSet mirrors internal/dnszones.RecordSet.
type DNSRecordSuggestion ¶ added in v0.2.0
type DNSRecordSuggestion struct {
Type string `json:"type"`
Name string `json:"name"`
Value string `json:"value"`
Alternative bool `json:"alternative,omitempty"`
}
DNSRecordSuggestion is one record to create so a domain reaches this server.
type DNSRecordWrite ¶ added in v0.2.0
type DNSRecordWrite struct {
Record DNSRecordSet `json:"record"`
Issues []DNSIssue `json:"issues,omitempty"`
}
DNSRecordWrite is the create and update response.
type DNSRecordsList ¶ added in v0.2.0
type DNSRecordsList struct {
Zone DNSZone `json:"zone"`
Provider string `json:"provider"`
Records []DNSRecordSet `json:"records"`
Total int `json:"total"`
}
DNSRecordsList is GET /api/v1/dns/zones/{zone}/records.
type DNSRecordsResponse ¶ added in v0.2.0
type DNSRecordsResponse struct {
Domain string `json:"domain"`
Provider string `json:"provider"`
Zone string `json:"zone"`
Records []DNSRecordResource `json:"records"`
}
DNSRecordsResponse mirrors internal/api's dnsRecordsResponse: GET/ POST/PUT/DELETE .../dns-records all return this same shape, so the caller always sees the zone's full, current record list.
type DNSResolverDelegation ¶ added in v0.2.0
type DNSResolverDelegation struct {
Server string `json:"server"`
NameServers []string `json:"name_servers,omitempty"`
Verdict string `json:"verdict"`
Error string `json:"error,omitempty"`
}
DNSResolverDelegation is one resolver's NS answer.
type DNSZone ¶ added in v0.2.0
type DNSZone struct {
ID string `json:"id"`
Name string `json:"name"`
Provider string `json:"provider"`
Status string `json:"status,omitempty"`
RecordCount *int `json:"record_count,omitempty"`
NameServers []string `json:"name_servers"`
Private bool `json:"private,omitempty"`
ModifiedAt string `json:"modified_at,omitempty"`
}
DNSZone mirrors internal/dnszones.Zone.
type DNSZoneResult ¶ added in v0.2.0
type DNSZoneResult struct {
Domain string `json:"domain"`
Provider string `json:"provider"`
Configured bool `json:"configured"`
Found bool `json:"found"`
Zone string `json:"zone,omitempty"`
Message string `json:"message,omitempty"`
}
DNSZoneResult mirrors GET /api/v1/dns/zone.
type DNSZonesList ¶ added in v0.2.0
type DNSZonesList struct {
Provider string `json:"provider"`
Providers []string `json:"providers"`
Capabilities DNSCapabilities `json:"capabilities"`
Zones []DNSZone `json:"zones"`
}
DNSZonesList is GET /api/v1/dns/zones.
type DashboardResource ¶
type DashboardResource struct {
ID string `json:"id"`
Owner string `json:"owner"`
Scope string `json:"scope"`
ProjectID string `json:"project_id,omitempty"`
IsDefault bool `json:"is_default"`
Name string `json:"name"`
Editable bool `json:"editable"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Doc json.RawMessage `json:"doc"`
}
DashboardResource mirrors a custom dashboard; Doc is the portable document, kept raw so export round trips exactly.
type DashboardTemplate ¶
type DashboardTemplate struct {
Key string `json:"key"`
NeedsTarget string `json:"needs_target,omitempty"`
Doc json.RawMessage `json:"doc"`
}
DashboardTemplate is a built-in starter dashboard.
type DashboardURLResource ¶ added in v0.2.0
type DashboardURLResource struct {
DashboardURL string `json:"dashboard_url"`
}
DashboardURLResource mirrors internal/api's dashboardURLResource (GET/PUT /api/v1/settings/dashboard-url).
type DashboardWrite ¶
type DashboardWrite struct {
Scope string `json:"scope,omitempty"`
ProjectID string `json:"project_id,omitempty"`
IsDefault bool `json:"is_default,omitempty"`
Doc json.RawMessage `json:"doc"`
}
DashboardWrite is the body of a dashboard create or update.
type DataCopyFailure ¶ added in v0.2.0
type DataCopyFailure struct {
Code string `json:"code"`
Summary string `json:"summary"`
Hint string `json:"hint"`
Technical string `json:"technical,omitempty"`
}
DataCopyFailure is a failed copy in plain words, with the redacted raw error under Technical.
type DataCopySource ¶ added in v0.2.0
type DataCopySource struct {
Host string `json:"host"`
Port int `json:"port,omitempty"`
User string `json:"user,omitempty"`
Password string `json:"password,omitempty"`
Database string `json:"database,omitempty"`
AuthDatabase string `json:"auth_database,omitempty"`
TLS bool `json:"tls,omitempty"`
}
DataCopySource locates the database to copy from. Password is sent in the request body only and is never stored by the control plane.
type DataCopyStatus ¶ added in v0.2.0
type DataCopyStatus struct {
Database string `json:"database"`
Engine string `json:"engine"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
Failure *DataCopyFailure `json:"failure,omitempty"`
NextAction string `json:"next_action,omitempty"`
SourceHost string `json:"source_host,omitempty"`
SourcePort int `json:"source_port,omitempty"`
SourceDatabase string `json:"source_database,omitempty"`
Checked int `json:"checked"`
Mismatched int `json:"mismatched"`
Tables []DataCopyTable `json:"tables,omitempty"`
StartedAt string `json:"started_at,omitempty"`
FinishedAt string `json:"finished_at,omitempty"`
}
DataCopyStatus is one database's copy state.
type DataCopyTable ¶ added in v0.2.0
type DataCopyTable struct {
Name string `json:"name"`
Source int64 `json:"source"`
Target int64 `json:"target"`
OK bool `json:"ok"`
}
DataCopyTable is one table or collection compared across both sides.
type DatabaseClient ¶ added in v0.2.0
type DatabaseClient struct {
App string `json:"app"`
Via string `json:"via"`
ProjectName string `json:"project_name,omitempty"`
Environment string `json:"environment,omitempty"`
InScope bool `json:"in_scope"`
ScopeReason string `json:"scope_reason,omitempty"`
}
DatabaseClient is one app that reaches a database.
type DatabaseColumnResource ¶ added in v0.2.0
type DatabaseColumnResource struct {
Name string `json:"name"`
Type string `json:"type"`
Nullable bool `json:"nullable"`
Default string `json:"default,omitempty"`
PrimaryKey bool `json:"primary_key"`
}
DatabaseColumnResource is one column in GET /databases/{name}/schema.
type DatabaseCredential ¶ added in v0.2.0
type DatabaseCredential struct {
Username string `json:"username"`
Password string `json:"password"`
Database string `json:"database"`
Host string `json:"host"`
Port int `json:"port"`
SSLMode string `json:"sslmode"`
InternalURL string `json:"internal_url"`
ExternalURL string `json:"external_url,omitempty"`
ExternalNote string `json:"external_note,omitempty"`
ExpiresAt string `json:"expires_at,omitempty"`
}
DatabaseCredential is shown once by the server and is never stored.
type DatabaseEngineResource ¶
type DatabaseEngineResource struct {
ID string `json:"id"`
Label string `json:"label"`
DefaultVersion string `json:"default_version"`
}
DatabaseEngineResource mirrors internal/api's databaseEngineResource (internal/api/database_engines.go): one entry from GET /api/v1/database-engines, the dynamic registry backing the creation wizard's engine picker.
type DatabaseGrant ¶ added in v0.2.0
type DatabaseGrant struct {
PolicyName string `json:"policy_name"`
Principal string `json:"principal"`
Applied bool `json:"applied"`
Notes []string `json:"notes"`
}
DatabaseGrant is the grant response.
type DatabaseGrantRequest ¶ added in v0.2.0
type DatabaseGrantRequest struct {
Template string `json:"template"`
PrincipalType string `json:"principal_type"`
PrincipalID string `json:"principal_id"`
Preview bool `json:"preview,omitempty"`
}
DatabaseGrantRequest is POST /databases/{name}/access/grants.
type DatabaseIndexResource ¶ added in v0.2.0
type DatabaseIndexResource struct {
Name string `json:"name"`
Definition string `json:"definition"`
Unique bool `json:"unique"`
Primary bool `json:"primary"`
}
DatabaseIndexResource is one index in the schema listing.
type DatabaseLink ¶
type DatabaseLink struct {
App string `json:"app"`
EnvVar string `json:"env_var"`
Field string `json:"field"`
}
DatabaseLink is one app a database injects a connection env var into.
type DatabaseNetwork ¶ added in v0.2.0
type DatabaseNetwork struct {
Database string `json:"database"`
Running bool `json:"running"`
Internal struct {
Host string `json:"host"`
Address string `json:"address,omitempty"`
Port int `json:"port"`
} `json:"internal"`
Networks []struct {
Name string `json:"name"`
Address string `json:"address,omitempty"`
Kind string `json:"kind"`
} `json:"networks"`
Published *struct {
HostPort int `json:"host_port"`
ContainerPort int `json:"container_port"`
Bind []string `json:"bind"`
Class string `json:"class"`
} `json:"published,omitempty"`
Clients []DatabaseClient `json:"clients"`
Verdict struct {
Level string `json:"level"`
Text string `json:"text"`
} `json:"verdict"`
Rules struct {
Port int `json:"port,omitempty"`
Active bool `json:"active"`
Allow []DatabaseRule `json:"allow"`
Missing []string `json:"missing,omitempty"`
Extra []string `json:"extra,omitempty"`
CanRestrict bool `json:"can_restrict"`
CannotReason string `json:"cannot_restrict_reason,omitempty"`
} `json:"rules"`
Scope struct {
Current string `json:"current"`
ProjectName string `json:"project_name,omitempty"`
Environment string `json:"environment,omitempty"`
} `json:"scope"`
TLS struct {
Supported bool `json:"supported"`
Enabled bool `json:"enabled"`
Required bool `json:"required"`
State string `json:"state,omitempty"`
Drift bool `json:"drift"`
Toggleable bool `json:"toggleable"`
Mode string `json:"mode,omitempty"`
} `json:"tls"`
Caveats []string `json:"caveats"`
}
DatabaseNetwork is GET /databases/{name}/network.
type DatabasePasswordRotation ¶
type DatabasePasswordRotation struct {
Database string `json:"database"`
Engine string `json:"engine"`
Supported bool `json:"supported"`
Reason string `json:"reason,omitempty"`
RestartRequired bool `json:"restart_required"`
Apps []string `json:"apps"`
SuspendedApps []string `json:"suspended_apps"`
State string `json:"state"`
LastError string `json:"last_error,omitempty"`
LastChangedAt string `json:"last_changed_at,omitempty"`
AgeDays *int `json:"age_days,omitempty"`
IntervalDays int `json:"interval_days"`
NextDue string `json:"next_due,omitempty"`
RestartedApps []string `json:"restarted_apps,omitempty"`
RotatedAt string `json:"rotated_at,omitempty"`
}
DatabasePasswordRotation mirrors internal/api's databasePasswordRotationResource.
type DatabasePolicyRef ¶ added in v0.2.0
type DatabasePolicyRef struct {
ID string `json:"id"`
Name string `json:"name"`
Principals []string `json:"principals"`
ScopedToOne bool `json:"scoped_to_database"`
}
DatabasePolicyRef is a policy that touches a database.
type DatabasePrincipal ¶ added in v0.2.0
type DatabasePrincipal struct {
Type string `json:"type"`
ID string `json:"id"`
Name string `json:"name"`
Effective []string `json:"effective"`
Via []string `json:"via"`
}
DatabasePrincipal is a user or token with effective abilities on a database.
type DatabasePublicAccessResource ¶
type DatabasePublicAccessResource struct {
DatabaseName string `json:"database_name"`
PubliclyAccessible bool `json:"publicly_accessible"`
PublicPort int `json:"public_port,omitempty"`
// BindAddress: see SetDatabasePublicAccessRequest's own field doc
// comment for what this holds.
BindAddress string `json:"bind_address,omitempty"`
}
DatabasePublicAccessResource mirrors internal/api's databasePublicAccessResource (internal/api/database_public_access.go): PUT/DELETE .../public-access only ever touch these three fields.
type DatabaseQueryRequest ¶ added in v0.2.0
type DatabaseQueryRequest struct {
SQL string `json:"sql"`
Analyze bool `json:"analyze,omitempty"`
Confirm string `json:"confirm,omitempty"`
}
DatabaseQueryRequest is the body of the query, write, and explain routes.
type DatabaseQueryResult ¶ added in v0.2.0
type DatabaseQueryResult struct {
Columns []string `json:"columns"`
Rows [][]*string `json:"rows"`
RowCount int `json:"row_count"`
Truncated bool `json:"truncated"`
DurationMs int64 `json:"duration_ms"`
Mode string `json:"mode"`
Kind string `json:"kind"`
Fingerprint string `json:"fingerprint"`
}
DatabaseQueryResult is the response of the query routes. A nil cell is NULL.
type DatabaseResource ¶
type DatabaseResource struct {
Name string `json:"name"`
Engine string `json:"engine"`
Version string `json:"version"`
NodeID string `json:"node_id,omitempty"`
// AutoPlaced mirrors internal/api's databaseResource.AutoPlaced: see
// AppResource's identically-named field doc comment.
AutoPlaced bool `json:"auto_placed,omitempty"`
// ProjectID mirrors internal/api's databaseResource.ProjectID:
// response-only, set via PUT /api/v1/databases/{name}/project.
ProjectID string `json:"project_id,omitempty"`
// ExistingVolume is request-only: "reuse" or "discard" the data volume a
// deleted database of the same name left behind.
ExistingVolume string `json:"existing_volume,omitempty"`
// Resources and the Backup* fields may be sent at create time and are
// stored with the record; the dedicated PUT routes still work for a
// database that exists. ProvisionState is "pending" or "failed" while no
// container exists yet.
ProvisionState string `json:"provision_state,omitempty"`
ProvisionReason string `json:"provision_reason,omitempty"`
Resources *ServiceResources `json:"resources,omitempty"`
PubliclyAccessible bool `json:"publicly_accessible,omitempty"`
PublicPort int `json:"public_port,omitempty"`
BackupTargetID string `json:"backup_target_id,omitempty"`
BackupSchedule string `json:"backup_schedule,omitempty"`
BackupRetain int `json:"backup_retain,omitempty"`
BackupRetainDays int `json:"backup_retain_days,omitempty"`
// Suspended is set via POST /api/v1/databases/{name}/stop and
// .../start (StopDatabase/StartDatabase), the same response-only
// boundary NodeID/ProjectID already establish.
Suspended bool `json:"suspended,omitempty"`
// TLSEnabled mirrors internal/api's databaseResource.TLSEnabled:
// response-only, computed fresh on every read, true when this
// database's connection string (DATABASE_URL/REDIS_URL, injected
// into consuming app containers) is TLS-encrypted.
TLSEnabled bool `json:"tls_enabled,omitempty"`
}
DatabaseResource mirrors internal/api's databaseResource (internal/api/databases.go). NodeID is response-only on update, but settable at create time as an explicit placement override, the same boundary AppResource's own NodeID field documents.
type DatabaseRevealedCredential ¶
type DatabaseRevealedCredential struct {
Database string `json:"database"`
Engine string `json:"engine"`
Password string `json:"password"`
}
DatabaseRevealedCredential mirrors internal/api's databaseRevealResponse.
type DatabaseRule ¶ added in v0.2.0
type DatabaseRule struct {
Source string `json:"source"`
Description string `json:"description,omitempty"`
}
DatabaseRule is one allowed source.
type DatabaseRulesPlan ¶ added in v0.2.0
type DatabaseRulesPlan struct {
Commands []string `json:"commands"`
Drops string `json:"drops"`
Allow []string `json:"allow"`
Warnings []string `json:"warnings"`
Applied bool `json:"applied"`
}
DatabaseRulesPlan is the rules preview or apply response.
type DatabaseRulesRequest ¶ added in v0.2.0
type DatabaseRulesRequest struct {
Allow []DatabaseRule `json:"allow"`
LocalContainers bool `json:"local_containers,omitempty"`
Confirm bool `json:"confirm,omitempty"`
}
DatabaseRulesRequest is the body of the network rules preview and apply calls.
type DatabaseSchemaNodeResource ¶ added in v0.2.0
type DatabaseSchemaNodeResource struct {
Name string `json:"name"`
Tables []DatabaseTableResource `json:"tables"`
}
DatabaseSchemaNodeResource groups tables under one schema.
type DatabaseSchemaResource ¶ added in v0.2.0
type DatabaseSchemaResource struct {
Engine string `json:"engine"`
Schemas []DatabaseSchemaNodeResource `json:"schemas"`
}
DatabaseSchemaResource is GET /api/v1/databases/{name}/schema.
type DatabaseScopeResult ¶ added in v0.2.0
type DatabaseScopeResult struct {
Scope string `json:"scope"`
Applied bool `json:"applied"`
ConfirmRequired bool `json:"confirm_required"`
Verdicts []DatabaseScopeVerdict `json:"verdicts"`
Lost []DatabaseScopeVerdict `json:"lost"`
Notes []string `json:"notes"`
}
DatabaseScopeResult is the scope dry-run or apply response.
type DatabaseScopeVerdict ¶ added in v0.2.0
type DatabaseScopeVerdict struct {
App struct {
Name string `json:"name"`
} `json:"app"`
Allowed bool `json:"allowed"`
Reason string `json:"reason,omitempty"`
}
DatabaseScopeVerdict is one referencing app's fate under a scope.
type DatabaseTLSToggle ¶
type DatabaseTLSToggle struct {
Database string `json:"database"`
Mode string `json:"mode"`
Enabled bool `json:"enabled"`
}
DatabaseTLSToggle is the result of switching server TLS.
type DatabaseTTLLimits ¶ added in v0.2.0
type DatabaseTTLLimits struct {
MinMinutes int `json:"min_minutes"`
MaxMinutes int `json:"max_minutes"`
DefaultMinutes int `json:"default_minutes"`
}
DatabaseTTLLimits are the allowed temporary credential lifetimes.
type DatabaseTableResource ¶ added in v0.2.0
type DatabaseTableResource struct {
Name string `json:"name"`
Kind string `json:"kind"`
RowEstimate int64 `json:"row_estimate"`
SizeBytes int64 `json:"size_bytes"`
Columns []DatabaseColumnResource `json:"columns"`
Indexes []DatabaseIndexResource `json:"indexes"`
}
DatabaseTableResource is one table or view in the schema listing.
type DatabaseTemp ¶ added in v0.2.0
type DatabaseTemp struct {
ID string `json:"id"`
Role string `json:"role"`
Preset string `json:"preset"`
CreatedBy string `json:"created_by"`
CreatedAt string `json:"created_at"`
ExpiresAt string `json:"expires_at"`
State string `json:"state"`
}
DatabaseTemp is one tracked temporary credential, without its secret.
type DatabaseTempIssued ¶ added in v0.2.0
type DatabaseTempIssued struct {
Temp DatabaseTemp `json:"temp"`
Credential DatabaseCredential `json:"credential"`
Clamped bool `json:"clamped"`
Limits DatabaseTTLLimits `json:"limits"`
}
DatabaseTempIssued is the issue response.
type DatabaseTempList ¶ added in v0.2.0
type DatabaseTempList struct {
Items []DatabaseTemp `json:"items"`
Limits DatabaseTTLLimits `json:"limits"`
}
DatabaseTempList is GET /databases/{name}/access/temp.
type DatabaseUser ¶ added in v0.2.0
type DatabaseUser struct {
Name string `json:"name"`
Kind string `json:"kind"`
Preset string `json:"preset,omitempty"`
CanLogin bool `json:"can_login"`
Superuser bool `json:"superuser"`
CreateDB bool `json:"create_db"`
CreateRole bool `json:"create_role"`
ConnectionLimit int `json:"connection_limit"`
ValidUntil string `json:"valid_until,omitempty"`
Expired bool `json:"expired"`
Connections int `json:"connections"`
Protected bool `json:"protected"`
Managed bool `json:"managed"`
CreatedBy string `json:"created_by,omitempty"`
CreatedAt string `json:"created_at,omitempty"`
}
DatabaseUser mirrors internal/api's databaseUserResource. It never holds a secret.
type DatabaseUserCreateRequest ¶ added in v0.2.0
type DatabaseUserCreateRequest struct {
Name string `json:"name"`
Preset string `json:"preset,omitempty"`
ConnectionLimit int `json:"connection_limit,omitempty"`
ExpiresAt string `json:"expires_at,omitempty"`
}
DatabaseUserCreateRequest is POST /databases/{name}/users.
type DatabaseUserCreated ¶ added in v0.2.0
type DatabaseUserCreated struct {
User DatabaseUser `json:"user"`
Credential DatabaseCredential `json:"credential"`
}
DatabaseUserCreated is the create response.
type DatabaseWho ¶ added in v0.2.0
type DatabaseWho struct {
Database string `json:"database"`
Principals []DatabasePrincipal `json:"principals"`
Policies []DatabasePolicyRef `json:"policies"`
Templates []string `json:"grant_templates"`
}
DatabaseWho is GET /databases/{name}/access/principals.
type DefaultAlert ¶
type DefaultAlert struct {
ID string `json:"id"`
Name string `json:"name"`
Kind string `json:"kind"`
Severity string `json:"severity"`
Enabled bool `json:"enabled"`
Firing bool `json:"firing"`
LeadTime string `json:"lead_time,omitempty"`
}
DefaultAlert mirrors internal/api's defaultAlertResource.
type DeleteAppResult ¶ added in v0.2.0
type DeleteAppResult struct {
Pending bool `json:"pending"`
Message string `json:"message,omitempty"`
Error string `json:"error,omitempty"`
}
DeleteAppResult is DELETE /api/v1/apps/{name}'s outcome: Pending is true when the app is deleted but its containers are not yet confirmed gone.
type DeployApprovalDecisionResult ¶ added in v0.2.0
type DeployApprovalDecisionResult struct {
Approval DeployApprovalResource `json:"approval"`
App AppResource `json:"app"`
}
DeployApprovalDecisionResult mirrors internal/api's deployApprovalDecisionResponse (POST .../deploy-approvals/{id}/approve).
type DeployApprovalListResult ¶ added in v0.2.0
type DeployApprovalListResult struct {
Approvals []DeployApprovalResource `json:"approvals"`
}
DeployApprovalListResult mirrors internal/api's deployApprovalListResponse (GET /api/v1/deploy-approvals).
type DeployApprovalResource ¶ added in v0.2.0
type DeployApprovalResource struct {
ID string `json:"id"`
ServiceName string `json:"service_name"`
SourceServiceName string `json:"source_service_name,omitempty"`
EnvironmentID string `json:"environment_id"`
Action string `json:"action"`
Image string `json:"image"`
Status string `json:"status"`
RequestedByType string `json:"requested_by_type"`
RequestedBy string `json:"requested_by"`
RequestedByName string `json:"requested_by_name"`
ApprovedByType string `json:"approved_by_type,omitempty"`
ApprovedBy string `json:"approved_by,omitempty"`
ApprovedByName string `json:"approved_by_name,omitempty"`
Reason string `json:"reason,omitempty"`
CreatedAt string `json:"created_at"`
ExpiresAt string `json:"expires_at"`
DecidedAt string `json:"decided_at,omitempty"`
}
DeployApprovalResource mirrors internal/api's deployApprovalResource (deploy_approvals.go): a pending or decided two-person approval gate on a deploy/promote into a protected environment.
type DeployAttemptFilter ¶
type DeployAttemptFilter struct {
Branch string
Author string
Commit string
Status string
Query string
Limit int
}
DeployAttemptFilter narrows ListDeployAttemptsFiltered; empty fields are ignored.
type DeployAttemptResource ¶ added in v0.2.0
type DeployAttemptResource struct {
// DeployURL is the attempt's own immutable address while a retained copy exists.
DeployURL string `json:"deploy_url,omitempty"`
Live bool `json:"live,omitempty"`
ID string `json:"id"`
ServiceName string `json:"service_name"`
Image string `json:"image"`
CommitSHA string `json:"commit_sha,omitempty"`
Source string `json:"source,omitempty"`
Status string `json:"status"`
StartedAt time.Time `json:"started_at"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
Error string `json:"error,omitempty"`
// DetectedFramework is the wizard's pre-flight detection result for
// this build, e.g. "Node.js"; empty when detection was skipped
// (a CLI or webhook-triggered build) or found nothing buildable.
DetectedFramework string `json:"detected_framework,omitempty"`
Branch string `json:"branch,omitempty"`
CommitMessage string `json:"commit_message,omitempty"`
Author string `json:"author,omitempty"`
Trigger string `json:"trigger,omitempty"`
ImageDigest string `json:"image_digest,omitempty"`
DigestReason string `json:"digest_reason,omitempty"`
RolloutState string `json:"rollout_state,omitempty"`
RunningImageID string `json:"running_image_id,omitempty"`
Sequence int64 `json:"sequence,omitempty"`
Reason string `json:"reason,omitempty"`
QueuedAt *time.Time `json:"queued_at,omitempty"`
QueuePosition int `json:"queue_position,omitempty"`
WaitReason string `json:"wait_reason,omitempty"`
BlockedBy string `json:"blocked_by,omitempty"`
SupersededBy string `json:"superseded_by,omitempty"`
CanceledBy string `json:"canceled_by,omitempty"`
SBOMPackages *int `json:"sbom_packages,omitempty"`
VulnCounts *VulnCounts `json:"vuln_counts,omitempty"`
// Failure classifies why the deploy failed or is blocked; absent otherwise.
Failure *DeployFailure `json:"failure,omitempty"`
// Outcome is set by GetDeploy only: in_progress, healthy, failed,
// canceled, superseded or blocked.
Outcome string `json:"outcome,omitempty"`
// Phase is the stored attempt status when GetDeploy reports a derived
// Status (building, rolling_out, failed).
Phase string `json:"phase,omitempty"`
}
DeployAttemptResource mirrors internal/api's deployAttemptResource (internal/api/deploy_attempts.go): one row of GET /api/v1/apps/{name}/deploy-attempts, additive to the reconcile conditions GetDeployStatus already returns, not a replacement for it.
type DeployCompareEnvChange ¶
type DeployCompareEnvChange struct {
Key string `json:"key"`
Kind string `json:"kind"`
Status string `json:"status"`
From string `json:"from,omitempty"`
To string `json:"to,omitempty"`
}
DeployCompareEnvChange is one env var key that differs between two deploys.
type DeployCompareField ¶
type DeployCompareField struct {
Field string `json:"field"`
From string `json:"from"`
To string `json:"to"`
}
DeployCompareField mirrors internal/api's deployCompareField: one field that differs between From and To.
type DeployCompareResource ¶
type DeployCompareResource struct {
ServiceName string `json:"service_name"`
From DeployCompareSide `json:"from"`
To DeployCompareSide `json:"to"`
Changes []DeployCompareField `json:"changes"`
EnvChanges []DeployCompareEnvChange `json:"env_changes,omitempty"`
Commits []GitCommitSummary `json:"commits"`
CommitsNote string `json:"commits_note,omitempty"`
UnsnapshottedFields []string `json:"unsnapshotted_fields"`
Note string `json:"note"`
}
DeployCompareResource mirrors internal/api's deployCompareResource, GET /api/v1/apps/{name}/deploys/compare's response. UnsnapshottedFields and Note are the honest limitation this task's own design note requires: deploy_attempts never snapshotted env/resources/ domains/etc per attempt, so those cannot be diffed across past deploys, only reported as not tracked.
type DeployCompareSide ¶
type DeployCompareSide struct {
DeployID string `json:"deploy_id,omitempty"`
IsCurrent bool `json:"is_current"`
Image string `json:"image"`
ImageDigest string `json:"image_digest,omitempty"`
CommitSHA string `json:"commit_sha,omitempty"`
Source string `json:"source,omitempty"`
Status string `json:"status,omitempty"`
StartedAt *time.Time `json:"started_at,omitempty"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
}
DeployCompareSide mirrors internal/api's deployCompareSide (internal/api/deploy_compare.go): one side of a deploy comparison. IsCurrent true and DeployID empty means this side is the app's current live desired state, not a stored attempt.
type DeployEvent ¶
type DeployEvent struct {
ID string `json:"id"`
At time.Time `json:"at"`
Kind string `json:"kind"`
Phase string `json:"phase"`
Status string `json:"status"`
Code string `json:"code"`
Title string `json:"title"`
Detail string `json:"detail,omitempty"`
Reason string `json:"reason,omitempty"`
Service string `json:"service,omitempty"`
Stream string `json:"stream,omitempty"`
DurationMS int64 `json:"duration_ms,omitempty"`
Trigger *DeployEventTrigger `json:"trigger,omitempty"`
Impact *DeployEventImpact `json:"impact,omitempty"`
}
DeployEvent is one entry on a deploy's event timeline.
type DeployEventComparison ¶
type DeployEventComparison struct {
A DeployEventTimeline `json:"a"`
B DeployEventTimeline `json:"b"`
Phases []DeployEventPhaseDelta `json:"phases"`
OnlyA []string `json:"only_a"`
OnlyB []string `json:"only_b"`
}
DeployEventComparison puts two timelines next to each other.
type DeployEventImpact ¶
type DeployEventImpact struct {
CutoverAt time.Time `json:"cutover_at"`
WindowMS int64 `json:"window_ms"`
Complete bool `json:"complete"`
Before DeployEventWindow `json:"before"`
After DeployEventWindow `json:"after"`
}
DeployEventImpact compares request health before and after cutover.
type DeployEventMessage ¶
type DeployEventMessage struct {
Type string `json:"type"`
Timeline *DeployEventTimeline `json:"timeline,omitempty"`
Event *DeployEvent `json:"event,omitempty"`
Verdict string `json:"verdict,omitempty"`
Live bool `json:"live"`
Frozen bool `json:"frozen,omitempty"`
Phases []DeployEventPhase `json:"phases,omitempty"`
}
DeployEventMessage is one message on the timeline stream: snapshot, event, state or end.
type DeployEventPhase ¶
type DeployEventPhase struct {
Phase string `json:"phase"`
StartedAt time.Time `json:"started_at"`
EndedAt time.Time `json:"ended_at"`
DurationMS int64 `json:"duration_ms"`
}
DeployEventPhase is the time one phase took.
type DeployEventPhaseDelta ¶
type DeployEventPhaseDelta struct {
Phase string `json:"phase"`
AMS *int64 `json:"a_ms,omitempty"`
BMS *int64 `json:"b_ms,omitempty"`
DeltaMS *int64 `json:"delta_ms,omitempty"`
}
DeployEventPhaseDelta lines up one phase of two deploys.
type DeployEventTimeline ¶
type DeployEventTimeline struct {
DeployID string `json:"deploy_id"`
App string `json:"app"`
Verdict string `json:"verdict"`
Live bool `json:"live"`
Frozen bool `json:"frozen"`
StartedAt time.Time `json:"started_at"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
Trigger DeployEventTrigger `json:"trigger"`
Events []DeployEvent `json:"events"`
Phases []DeployEventPhase `json:"phases"`
Impact *DeployEventImpact `json:"impact,omitempty"`
LogsDropped int `json:"logs_dropped,omitempty"`
}
DeployEventTimeline is the whole story of one deploy.
type DeployEventTrigger ¶
type DeployEventTrigger struct {
Source string `json:"source"`
Actor string `json:"actor,omitempty"`
ActorKind string `json:"actor_kind,omitempty"`
Branch string `json:"branch,omitempty"`
CommitSHA string `json:"commit_sha,omitempty"`
CommitMessage string `json:"commit_message,omitempty"`
Author string `json:"author,omitempty"`
RerunOf string `json:"rerun_of,omitempty"`
}
DeployEventTrigger says who or what started the deploy.
type DeployEventWindow ¶
type DeployEventWindow struct {
HasTraffic bool `json:"has_traffic"`
Requests float64 `json:"requests"`
RatePerSec float64 `json:"rate_per_sec"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
P95Ms float64 `json:"p95_ms"`
}
DeployEventWindow is request health over one slice of time.
type DeployFailure ¶ added in v0.2.0
type DeployFailure struct {
Code string `json:"code"`
Cause string `json:"cause"`
FailingStep string `json:"failing_step,omitempty"`
LogExcerpt string `json:"log_excerpt,omitempty"`
SuggestedFix string `json:"suggested_fix"`
DocsURL string `json:"docs_url"`
Retryable bool `json:"retryable"`
Fixes []DeployFailureFix `json:"fixes,omitempty"`
DeployID string `json:"deploy_id"`
App string `json:"app"`
At time.Time `json:"at"`
}
DeployFailure mirrors internal/failure's Failure: the structured cause of a failed or blocked deploy, identical across the API, CLI and MCP.
type DeployFailureFix ¶
type DeployFailureFix struct {
Code string `json:"code"`
Kind string `json:"kind"`
Target string `json:"target,omitempty"`
Hint string `json:"hint"`
Match string `json:"match"`
}
DeployFailureFix mirrors internal/failure.Fix.
type DeployFreezeResource ¶ added in v0.2.0
type DeployFreezeResource struct {
Windows []FreezeWindowResource `json:"windows"`
Inherited []FreezeWindowResource `json:"inherited,omitempty"`
Status struct {
Frozen bool `json:"frozen"`
Until *time.Time `json:"until,omitempty"`
Reason string `json:"reason,omitempty"`
} `json:"status"`
}
DeployFreezeResource mirrors internal/api's deployFreezeResource.
type DeployFromCacheRequest ¶
type DeployFromCacheRequest struct {
Commit string `json:"commit,omitempty"`
OverrideFreeze bool `json:"override_freeze,omitempty"`
OverrideReason string `json:"override_reason,omitempty"`
}
DeployFromCacheRequest is the body of POST /api/v1/apps/{name}/deploys/from-cache. Commit defaults to the app's last successful source deploy.
type DeployGateResource ¶ added in v0.2.0
type DeployGateResource struct {
DeployID string `json:"deploy_id"`
Image string `json:"image"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
Error string `json:"error,omitempty"`
Stage string `json:"stage"`
Terminal bool `json:"terminal"`
Failed bool `json:"failed"`
Superseded bool `json:"superseded"`
Events []GateEventResource `json:"events"`
Settings DeploySafetySettingsResource `json:"settings"`
RollbackPin *RollbackTargetResource `json:"rollback_pin"`
Watch WatchStatusResource `json:"watch"`
}
DeployGateResource is GET /api/v1/apps/{name}/deploys/{deployId}/gate.
type DeployNotifyTargetResource ¶ added in v0.2.0
type DeployNotifyTargetResource struct {
ID string `json:"id,omitempty"`
ResourceID string `json:"resource_id,omitempty"`
ChannelID string `json:"channel_id,omitempty"`
NotifyURL string `json:"notify_url,omitempty"`
NotifyKind string `json:"notify_kind,omitempty"`
Enabled bool `json:"enabled"`
}
DeployNotifyTargetResource mirrors internal/api's deployTargetResource (internal/api/deploy_notify_targets.go). NotifyURL/NotifyKind are always the resolved values from the attached channel, response-only.
type DeployPolicy ¶
type DeployPolicy struct {
Scope string `json:"scope"`
ScopeID string `json:"scope_id"`
Rules map[string]DeployPolicyRule `json:"rules"`
UpdatedBy string `json:"updated_by,omitempty"`
UpdatedAt *time.Time `json:"updated_at,omitempty"`
}
DeployPolicy mirrors internal/api's deployPolicyResource.
type DeployPolicyRule ¶
type DeployPolicyRule struct {
Mode string `json:"mode"`
Values []string `json:"values,omitempty"`
Limit float64 `json:"limit,omitempty"`
}
DeployPolicyRule mirrors internal/policy.Rule.
type DeploySafetyOverrides ¶ added in v0.2.0
type DeploySafetyOverrides struct {
SuccessThreshold *int `json:"success_threshold"`
StableWindow *string `json:"stable_window"`
DrainTimeout *string `json:"drain_timeout"`
WatchWindow *string `json:"watch_window"`
WatchMaxRestarts *int `json:"watch_max_restarts"`
WatchErrorRate *float64 `json:"watch_error_rate"`
WatchMinRequests *int `json:"watch_min_requests"`
AutoRollback *bool `json:"auto_rollback"`
WatchMode *string `json:"watch_mode"`
WatchLatencyRatio *float64 `json:"watch_latency_ratio"`
WatchSoftRollback *bool `json:"watch_soft_rollback"`
}
DeploySafetyOverrides is one app's overrides; a nil field inherits the default.
type DeploySafetyResource ¶ added in v0.2.0
type DeploySafetyResource struct {
Overrides DeploySafetyOverrides `json:"overrides"`
Defaults DeploySafetySettingsResource `json:"defaults"`
Effective DeploySafetySettingsResource `json:"effective"`
}
DeploySafetyResource is GET and PUT /api/v1/apps/{name}/deploy-safety.
type DeploySafetySettingsResource ¶ added in v0.2.0
type DeploySafetySettingsResource struct {
SuccessThreshold int `json:"success_threshold"`
StableWindow string `json:"stable_window"`
DrainTimeout string `json:"drain_timeout"`
WatchWindow string `json:"watch_window"`
WatchMaxRestarts int `json:"watch_max_restarts"`
WatchErrorRate float64 `json:"watch_error_rate"`
WatchMinRequests int `json:"watch_min_requests"`
AutoRollback bool `json:"auto_rollback"`
RollbackPins int `json:"rollback_pins"`
WatchMode string `json:"watch_mode"`
WatchLatencyRatio float64 `json:"watch_latency_ratio"`
WatchLatencyMinDelta string `json:"watch_latency_min_delta"`
WatchSoftTicks int `json:"watch_soft_ticks"`
WatchSoftRollback bool `json:"watch_soft_rollback"`
}
DeploySafetySettingsResource is a fully resolved set of gate and watch settings.
type DeploySpecRequest ¶
type DeploySpecRequest struct {
RepoURL string `json:"repo_url"`
Ref string `json:"ref"`
ImageRepoBase string `json:"image_repo_base,omitempty"`
Services map[string]DeploySpecService `json:"services"`
// SingleServiceName overrides the default "<name>-<serviceKey>"
// naming for the sole entry in Services. Rejected unless Services has
// exactly one entry.
SingleServiceName string `json:"single_service_name,omitempty"`
}
DeploySpecRequest mirrors internal/api's deploySpecRequest (internal/api/apps_multi.go): POST /api/v1/apps/{name}/deploy-spec's body, one app.yaml services: map fanned out under app name.
type DeploySpecResult ¶
type DeploySpecResult struct {
AppID string `json:"app_id"`
Services []DeploySpecServiceResult `json:"services"`
AllSucceeded bool `json:"all_succeeded"`
}
DeploySpecResult mirrors internal/api's deploySpecResponse. AllSucceeded false means at least one ServiceKey's own Error is set; the request as a whole still succeeded at fanning out.
type DeploySpecService ¶
type DeploySpecService struct {
Build DeploySpecServiceBuild `json:"build"`
Domains []string `json:"domains,omitempty"`
Port int `json:"port,omitempty"`
Health *DeploySpecServiceHealth `json:"health,omitempty"`
Resources *DeploySpecServiceResources `json:"resources,omitempty"`
Env map[string]DeploySpecServiceEnv `json:"env,omitempty"`
Replicas int `json:"replicas,omitempty"`
Strategy string `json:"strategy,omitempty"`
Hooks *DeploySpecServiceHooks `json:"hooks,omitempty"`
}
DeploySpecService mirrors one entry in app.yaml's services: map (internal/spec.Service) as POST /api/v1/apps/{name}/deploy-spec expects to receive it directly, field for field.
type DeploySpecServiceBuild ¶
type DeploySpecServiceBuild struct {
Type string `json:"type"`
Path string `json:"path,omitempty"`
BaseDirectory string `json:"baseDirectory,omitempty"`
Image string `json:"image,omitempty"`
RegistryCredential string `json:"registryCredential,omitempty"`
}
DeploySpecServiceBuild mirrors internal/spec.Build's JSON wire shape: human-written field names, not AppResource's bytes/nanoCPUs encoding.
type DeploySpecServiceEnv ¶
type DeploySpecServiceEnv struct {
Value string `json:"value,omitempty"`
From string `json:"from,omitempty"`
Secret bool `json:"secret,omitempty"`
Required bool `json:"required,omitempty"`
}
DeploySpecServiceEnv mirrors internal/spec.EnvVar's JSON shape. Unlike app.yaml's YAML parsing, no plain-string shorthand: use Value for a literal.
type DeploySpecServiceHealth ¶
type DeploySpecServiceHealth struct {
Readiness *DeploySpecServiceProbe `json:"readiness,omitempty"`
Liveness *DeploySpecServiceProbe `json:"liveness,omitempty"`
ReadyTimeout string `json:"readyTimeout,omitempty"`
}
DeploySpecServiceHealth mirrors internal/spec.Health.
type DeploySpecServiceHooks ¶
type DeploySpecServiceHooks struct {
PreDeploy string `json:"preDeploy,omitempty"`
PostDeploy string `json:"postDeploy,omitempty"`
}
DeploySpecServiceHooks mirrors internal/spec.Hooks.
type DeploySpecServiceProbe ¶
type DeploySpecServiceProbe struct {
Path string `json:"path,omitempty"`
Scheme string `json:"scheme,omitempty"`
Host string `json:"host,omitempty"`
TLSSkipVerify bool `json:"tls_skip_verify,omitempty"`
FollowRedirects *bool `json:"follow_redirects,omitempty"`
ExpectedStatus string `json:"expected_status,omitempty"`
Exec []string `json:"exec,omitempty"`
Interval string `json:"interval,omitempty"`
Timeout string `json:"timeout,omitempty"`
Failures int `json:"failures,omitempty"`
}
DeploySpecServiceProbe mirrors internal/spec.Probe: human-readable duration strings ("5s"), not ServiceProbe's nanosecond encoding.
type DeploySpecServiceResources ¶
type DeploySpecServiceResources struct {
Memory string `json:"memory,omitempty"`
CPU float64 `json:"cpu,omitempty"`
}
DeploySpecServiceResources mirrors internal/spec.Resources: human-readable "512Mi"/0.5 values, not ServiceResources' bytes/ nanoCPUs encoding.
type DeploySpecServiceResult ¶
type DeploySpecServiceResult struct {
ServiceKey string `json:"service_key"`
ServiceName string `json:"service_name"`
Image string `json:"image,omitempty"`
Error string `json:"error,omitempty"`
}
DeploySpecServiceResult mirrors internal/api's deploySpecServiceResult: one service key's own build+deploy outcome. Error is set on failure, Image on success, matching deploy.ServiceOutcome's own "never both" contract.
type DeployStepEvent ¶ added in v0.2.0
type DeployStepEvent struct {
Step string `json:"step"`
Status string `json:"status"`
Timestamp string `json:"timestamp"`
// Key, Reason, Detail and the fields after them are set for traced steps.
Key string `json:"key,omitempty"`
Reason string `json:"reason,omitempty"`
Detail string `json:"detail,omitempty"`
Service string `json:"service,omitempty"`
StartedAt string `json:"started_at,omitempty"`
EndedAt string `json:"ended_at,omitempty"`
DurationMS int64 `json:"duration_ms,omitempty"`
Attempts int `json:"attempts,omitempty"`
}
DeployStepEvent mirrors internal/api's sseStepEvent.
type DeploySuggestion ¶ added in v0.2.0
type DeploySuggestion struct {
ID string `json:"id"`
Severity string `json:"severity"`
Reason string `json:"reason"`
Params map[string]string `json:"params,omitempty"`
}
DeploySuggestion is one computed next step for an app's deploys.
type DeployTriggerRequest ¶
type DeployTriggerRequest struct {
Image string `json:"image"`
Confirm bool `json:"confirm,omitempty"`
// Pull re-resolves the tag and fails if the registry is unreachable.
Pull bool `json:"pull,omitempty"`
Rollback bool `json:"rollback,omitempty"`
OverrideFreeze bool `json:"override_freeze,omitempty"`
OverrideReason string `json:"override_reason,omitempty"`
}
DeployTriggerRequest mirrors internal/api's deployTriggerRequest (internal/api/deploys.go).
type DeployTriggerResult ¶ added in v0.2.0
type DeployTriggerResult struct {
*AppResource
PendingApproval *DeployApprovalResource `json:"pending_approval,omitempty"`
}
DeployTriggerResult mirrors internal/api's deployTriggerResult (deploys.go): the common case is a flat AppResource on the wire (*AppResource is embedded so those fields promote to the top level, unchanged from before this type existed), PendingApproval is only ever set instead, when the target environment is protected and the deploy/promote was accepted as a pending approval rather than applied.
type DeploymentDay ¶ added in v0.2.0
type DeploymentDay struct {
Date string `json:"date"`
Total int `json:"total"`
Failed int `json:"failed"`
}
DeploymentDay is one sparkline bucket of the deployments summary.
type DeploymentEvent ¶ added in v0.2.0
type DeploymentEvent struct {
Type string `json:"type"`
Step *struct {
Name string `json:"name"`
Status string `json:"status"`
} `json:"step,omitempty"`
Deployment DeploymentResource `json:"deployment"`
}
DeploymentEvent is one message of GET /api/v1/deployments/stream.
type DeploymentList ¶ added in v0.2.0
type DeploymentList struct {
Items []DeploymentResource `json:"items"`
NextCursor string `json:"next_cursor"`
}
DeploymentList is the GET /api/v1/deployments response.
type DeploymentListOptions ¶ added in v0.2.0
type DeploymentListOptions struct {
Statuses []string
App string
Branch string
Triggers []string
Environment string
Since string
Until string
Query string
Live bool
PR int
Limit int
Cursor string
}
DeploymentListOptions are the GET /api/v1/deployments filters.
func (DeploymentListOptions) Values ¶ added in v0.2.0
func (o DeploymentListOptions) Values() url.Values
Values renders the options as a query string, omitting unset filters.
type DeploymentResource ¶ added in v0.2.0
type DeploymentResource struct {
ID string `json:"id"`
App string `json:"app"`
Status string `json:"status"`
Trigger string `json:"trigger"`
Environment string `json:"environment"`
Image string `json:"image"`
ImageRef string `json:"image_ref"`
ImageDigest string `json:"image_digest"`
DigestReason string `json:"digest_reason"`
RolloutState string `json:"rollout_state"`
CommitSHA string `json:"commit_sha"`
Branch string `json:"branch"`
CommitMessage string `json:"commit_message"`
Author string `json:"author"`
PRNumber *int `json:"pr_number"`
StartedAt time.Time `json:"started_at"`
FinishedAt *time.Time `json:"finished_at"`
DurationMS *int64 `json:"duration_ms"`
Steps *DeploymentSteps `json:"steps"`
ErrorSummary *string `json:"error_summary"`
ReasonCode string `json:"reason_code"`
Reason string `json:"reason"`
RollbackOf *string `json:"rollback_of"`
RolledBackBy *string `json:"rolled_back_by"`
SupersededBy *string `json:"superseded_by"`
IsLive bool `json:"is_live"`
ApprovalID *string `json:"approval_id"`
PreviewImageURL *string `json:"preview_image_url"`
SBOMPackages *int `json:"sbom_packages"`
VulnCounts *VulnCounts `json:"vuln_counts"`
Failure *DeployFailure `json:"failure,omitempty"`
}
DeploymentResource is one row of GET /api/v1/deployments.
type DeploymentSteps ¶ added in v0.2.0
type DeploymentSteps struct {
Done int `json:"done"`
Running int `json:"running"`
Failed int `json:"failed"`
FailingStep string `json:"failing_step,omitempty"`
}
DeploymentSteps is a live deployment's step tally.
type DeploymentSummary ¶ added in v0.2.0
type DeploymentSummary struct {
Window string `json:"window"`
Counts map[string]int `json:"counts"`
InProgress int `json:"in_progress"`
NeedsAttention int `json:"needs_attention"`
FailureRate24h *float64 `json:"failure_rate_24h"`
Duration struct {
MedianMS *int64 `json:"median_ms"`
P95MS *int64 `json:"p95_ms"`
Samples int `json:"samples"`
} `json:"duration"`
PerDay []DeploymentDay `json:"per_day"`
}
DeploymentSummary is the GET /api/v1/deployments/summary response.
type DetectFrameworkResource ¶ added in v0.2.0
type DetectFrameworkResource struct {
Provider string `json:"provider,omitempty"`
FrameworkName string `json:"framework_name,omitempty"`
Detected bool `json:"detected"`
FrameworkID string `json:"framework_id,omitempty"`
Port int `json:"port,omitempty"`
PortSource string `json:"port_source,omitempty"`
}
DetectFrameworkResource mirrors internal/api's detectFrameworkResponse.
type Detection ¶
type Detection struct {
Framework string `json:"framework"`
Language string `json:"language"`
BuildType string `json:"build_type"`
Confidence string `json:"confidence"`
Reasons []DetectionReason `json:"reasons"`
Port struct {
Value int `json:"value"`
Source string `json:"source"`
} `json:"port"`
StartCommand string `json:"start_command,omitempty"`
BuildCommand string `json:"build_command,omitempty"`
OutputDir string `json:"output_dir,omitempty"`
HealthPath string `json:"health_path"`
RuntimeVersion struct {
Value string `json:"value"`
Source string `json:"source"`
} `json:"runtime_version"`
EnvVars []struct {
Name string `json:"name"`
Source string `json:"source"`
Required bool `json:"required"`
SecretGuess bool `json:"secret_guess"`
} `json:"env_vars"`
Warnings []ImportWarning `json:"warnings"`
}
Detection mirrors internal/appwizard's Detection. EnvVars never carry a value.
type DetectionReason ¶
DetectionReason mirrors internal/appwizard's Reason.
type DeviceActivity ¶ added in v0.2.0
type DeviceActivity struct {
ID string `json:"id"`
State string `json:"state"`
ClientName string `json:"client_name"`
RequesterIP string `json:"requester_ip"`
UserAgent string `json:"user_agent"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
Dismissible bool `json:"dismissible"`
Dismissed bool `json:"dismissed"`
AuditPath string `json:"audit_path"`
}
DeviceActivity is one recent CLI login in any state. It never carries a user code or device code.
type DevicePendingLogin ¶ added in v0.2.0
type DevicePendingLogin struct {
ClientName string `json:"client_name"`
RequesterIP string `json:"requester_ip"`
UserAgent string `json:"user_agent"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
}
DevicePendingLogin is one waiting CLI login as the read-only summary shows it. It never carries a user code or device code.
type DeviceStartRequest ¶
type DeviceStartRequest struct {
ClientName string `json:"client_name,omitempty"`
}
DeviceStartRequest mirrors internal/api's deviceStartRequest.
type DeviceStartResponse ¶
type DeviceStartResponse struct {
DeviceCode string `json:"device_code"`
UserCode string `json:"user_code"`
VerificationURI string `json:"verification_uri"`
VerificationURIComplete string `json:"verification_uri_complete"`
ExpiresIn int `json:"expires_in"`
Interval int `json:"interval"`
}
DeviceStartResponse mirrors internal/api's deviceStartResponse.
type DeviceTokenRequest ¶
type DeviceTokenRequest struct {
DeviceCode string `json:"device_code"`
}
DeviceTokenRequest mirrors internal/api's deviceTokenRequest.
type DeviceTokenResponse ¶
type DeviceTokenResponse struct {
ID string `json:"id"`
Name string `json:"name"`
Abilities []string `json:"abilities"`
CreatedAt time.Time `json:"created_at"`
LastUsedAt *time.Time `json:"last_used_at,omitempty"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
RevokedAt *time.Time `json:"revoked_at,omitempty"`
Token string `json:"token"`
}
DeviceTokenResponse mirrors internal/api's createTokenResponse, the shape POST /api/v1/auth/device/token returns once a request is approved.
type DiagnosisCause ¶ added in v0.2.0
type DiagnosisCause struct {
Code string `json:"code"`
Title string `json:"title"`
Explanation string `json:"explanation"`
Confidence string `json:"confidence"`
Evidence []DiagnosisSignal `json:"evidence"`
Fixes []DiagnosisFix `json:"fixes"`
}
DiagnosisCause is one typed, evidence-backed reason for a failure.
type DiagnosisChange ¶ added in v0.2.0
type DiagnosisChange struct {
Field string `json:"field"`
From string `json:"from"`
To string `json:"to"`
NeedsInput bool `json:"needs_input,omitempty"`
}
DiagnosisChange is one field edit a fix proposes, on the app resource's own JSON paths ("port", "health.readiness.path", "resources.memory_bytes", "env.NAME").
type DiagnosisFix ¶ added in v0.2.0
type DiagnosisFix struct {
N int `json:"n"`
Label string `json:"label"`
Kind string `json:"kind"`
Changes []DiagnosisChange `json:"changes"`
Hint string `json:"hint,omitempty"`
Redeploy bool `json:"redeploy,omitempty"`
}
DiagnosisFix is one remedy for a cause. Kind is "patch", "input" or "manual"; only the first two carry changes.
func FindDiagnosisFix ¶ added in v0.2.0
func FindDiagnosisFix(d DiagnosisResource, n int) (DiagnosisFix, bool)
FindDiagnosisFix returns fix number n across every cause.
type DiagnosisResource ¶
type DiagnosisResource struct {
Explanation string `json:"explanation"`
Suggestion string `json:"suggestion"`
Confidence string `json:"confidence"`
MatchedSignals []DiagnosisSignal `json:"matched_signals"`
DeployAttemptID string `json:"deploy_attempt_id,omitempty"`
Causes []DiagnosisCause `json:"causes,omitempty"`
Fixable bool `json:"fixable,omitempty"`
Failure *DeployFailure `json:"failure,omitempty"`
// RecentChanges is what changed on the app shortly before the diagnosis.
RecentChanges *RecentChangesResource `json:"recent_changes,omitempty"`
}
DiagnosisResource mirrors internal/api's diagnosisResource (internal/api/diagnose.go): GET /api/v1/apps/{name}/diagnose's response, a deterministic explanation of a deploy failure or crashloop synthesized from internal/diagnose, never from an external model.
type DiagnosisSignal ¶
DiagnosisSignal mirrors internal/api's diagnosisSignalResource: one piece of evidence a diagnosis signature matched against.
type DimensionRecommendationResource ¶
type DimensionRecommendationResource struct {
Dimension string `json:"dimension"`
SampleCount int `json:"sample_count"`
DataSufficient bool `json:"data_sufficient"`
Confidence string `json:"confidence"`
CurrentLimit int64 `json:"current_limit"`
P95Usage float64 `json:"p95_usage"`
P99Usage float64 `json:"p99_usage"`
SuggestedLimit int64 `json:"suggested_limit"`
Action string `json:"action,omitempty"`
Reason string `json:"reason"`
}
DimensionRecommendationResource mirrors internal/api's dimensionRecommendationResource (internal/api/resource_recommendation.go): one resource dimension's (memory or cpu) right-sizing suggestion. CurrentLimit/SuggestedLimit are bytes for memory, nano-CPUs for cpu, the same raw-unit convention AppResource.Resources already uses. Action is "" when there isn't enough data, or no limit is currently set, to responsibly suggest a change.
type DiskResilience ¶
type DiskResilience struct {
diskguard.Status
Refusing bool `json:"refusing"`
FixAction bool `json:"free_space_available"`
}
DiskResilience mirrors GET /api/v1/resilience/disk.
type DockerGuardResource ¶ added in v0.2.0
type DockerGuardResource struct {
Mode string `json:"mode"`
Source string `json:"source"`
Effective string `json:"effective"`
Running bool `json:"running"`
Socket string `json:"socket,omitempty"`
Upstream string `json:"upstream,omitempty"`
RestartRequired bool `json:"restart_required"`
ConfigError string `json:"config_error,omitempty"`
StartError string `json:"start_error,omitempty"`
AuditSince string `json:"audit_since,omitempty"`
SinceBoot []DockerGuardRuleCount `json:"since_boot"`
Rules []string `json:"rules"`
Configured bool `json:"configured"`
WindowSeconds int64 `json:"window_seconds"`
Window []DockerGuardRuleSummary `json:"window"`
WouldDenyTotal int `json:"would_deny_total"`
DeniedTotal int `json:"denied_total"`
ReadyToEnforce bool `json:"ready_to_enforce"`
}
DockerGuardResource mirrors GET /api/v1/system/docker-guard.
type DockerGuardRuleCount ¶ added in v0.2.0
type DockerGuardRuleCount struct {
Rule string `json:"rule"`
Denied int64 `json:"denied"`
WouldDeny int64 `json:"would_deny"`
LastSeen string `json:"last_seen"`
LastPath string `json:"last_path"`
}
DockerGuardRuleCount mirrors one since-boot counter in the guard status.
type DockerGuardRuleSummary ¶ added in v0.2.0
type DockerGuardRuleSummary struct {
Rule string `json:"rule"`
Denied int `json:"denied"`
WouldDeny int `json:"would_deny"`
LastSeen string `json:"last_seen"`
LastPath string `json:"last_path"`
}
DockerGuardRuleSummary mirrors one rule's audit history over the window.
type DockerHealthCheck ¶
type DockerHealthCheck struct {
Code string `json:"code"`
Status string `json:"status"`
Message string `json:"message"`
FixAction string `json:"fix_action,omitempty"`
}
DockerHealthCheck is one row of the Docker health report.
type DockerHealthResource ¶
type DockerHealthResource struct {
Reachable bool `json:"reachable"`
Version string `json:"version,omitempty"`
Arch string `json:"arch,omitempty"`
OS string `json:"os,omitempty"`
RuntimeKind string `json:"runtime_kind,omitempty"`
Rootless bool `json:"rootless"`
DiskTotal int64 `json:"disk_total_bytes"`
DiskReclaim int64 `json:"disk_reclaimable_bytes"`
CheckedAt time.Time `json:"checked_at"`
Checks []DockerHealthCheck `json:"checks"`
}
DockerHealthResource is the GET /api/v1/docker/health response.
type DockerLintFinding ¶
type DockerLintFinding struct {
Rule string `json:"rule"`
Severity string `json:"severity"`
Line int `json:"line"`
Message string `json:"message"`
Fixable bool `json:"fixable"`
}
DockerLintFinding mirrors internal/dockerlint.Finding.
type DockerLintResource ¶
type DockerLintResource struct {
Findings []DockerLintFinding `json:"findings"`
FixedDockerfile string `json:"fixed_dockerfile"`
DockerignoreHint string `json:"dockerignore_suggestion,omitempty"`
}
DockerLintResource is the POST /api/v1/docker/lint response.
type DoctorAction ¶ added in v0.2.0
type DoctorAction struct {
Kind string `json:"kind"`
Label string `json:"label"`
API string `json:"api,omitempty"`
Value string `json:"value,omitempty"`
Body map[string]string `json:"body,omitempty"`
}
DoctorAction mirrors domaindoctor.Action.
type DoctorCheck ¶ added in v0.2.0
type DoctorCheck struct {
ID string `json:"id"`
Title string `json:"title"`
State string `json:"state"`
Tier int `json:"tier"`
Detail string `json:"detail,omitempty"`
Fix *DoctorFix `json:"fix,omitempty"`
}
DoctorCheck mirrors domaindoctor.Check.
type DoctorCheckResource ¶
type DoctorCheckResource struct {
Code string `json:"code"`
Name string `json:"name"`
Status string `json:"status"`
Message string `json:"message"`
Fix string `json:"fix,omitempty"`
DocsPath string `json:"docs_path,omitempty"`
// Class is "incident" or "recommendation" for a check that is not ok.
Class string `json:"class,omitempty"`
Group string `json:"group,omitempty"`
CheckID string `json:"check_id,omitempty"`
Evidence string `json:"evidence,omitempty"`
// FixID and FixKind name the typed fix (auto, guided or manual) for a failing check.
FixID string `json:"fix_id,omitempty"`
FixKind string `json:"fix_kind,omitempty"`
}
DoctorCheckResource mirrors internal/api's doctorCheckResource: one preflight check's result (Status is "ok", "warn", "fail", or "unknown"). Fix/DocsPath are empty when the check is ok or has no single actionable command.
type DoctorFix ¶ added in v0.2.0
type DoctorFix struct {
Summary string `json:"summary"`
Kind string `json:"kind,omitempty"`
Action *DoctorAction `json:"action,omitempty"`
Records []DoctorRecord `json:"records,omitempty"`
CLI string `json:"cli,omitempty"`
}
DoctorFix mirrors domaindoctor.Fix.
type DoctorPropagation ¶
type DoctorPropagation struct {
State string `json:"state"`
Detail string `json:"detail"`
NextCheckSeconds int `json:"next_check_seconds,omitempty"`
NextCheckAt time.Time `json:"next_check_at,omitzero"`
}
DoctorPropagation mirrors domaindoctor.Propagation.
type DoctorRecord ¶
type DoctorRecord struct {
Name string `json:"name"`
Type string `json:"type"`
Value string `json:"value"`
}
DoctorRecord mirrors domaindoctor.Record.
type DomainAuthGateResource ¶ added in v0.2.0
type DomainAuthGateResource struct {
Domain string `json:"domain"`
Configured bool `json:"configured"`
Enabled bool `json:"enabled"`
AuthURL string `json:"auth_url"`
CheckPath string `json:"check_path"`
CopyHeaders []string `json:"copy_headers"`
TimeoutSeconds int `json:"timeout_seconds"`
DefaultTimeoutSeconds int `json:"default_timeout_seconds"`
UpdatedAt string `json:"updated_at,omitempty"`
// Provider is "external" or "builtin"; Allow only applies to builtin.
Provider string `json:"provider"`
Allow []AuthGateRule `json:"allow"`
LiveSessions int `json:"live_sessions"`
BuiltinAvailable bool `json:"builtin_available"`
}
DomainAuthGateResource mirrors internal/api's domainAuthGateResource.
type DomainAutomationOverride ¶ added in v0.2.0
type DomainAutomationOverride struct {
AutoDNS *bool `json:"auto_dns,omitempty"`
AutoProxyRoute *bool `json:"auto_proxy_route,omitempty"`
ForceHTTPS *bool `json:"force_https,omitempty"`
WWWPolicy *string `json:"www_policy,omitempty"`
AttachWWWCounterpart *bool `json:"attach_www_counterpart,omitempty"`
WildcardForBaseDomain *bool `json:"wildcard_for_base_domain,omitempty"`
VerifyAfter *bool `json:"verify_after,omitempty"`
}
DomainAutomationOverride sets only the keys given.
type DomainAutomationPolicy ¶ added in v0.2.0
type DomainAutomationPolicy struct {
AutoDNS bool `json:"auto_dns"`
AutoProxyRoute bool `json:"auto_proxy_route"`
ForceHTTPS bool `json:"force_https"`
WWWPolicy string `json:"www_policy"`
AttachWWWCounterpart bool `json:"attach_www_counterpart"`
WildcardForBaseDomain bool `json:"wildcard_for_base_domain"`
VerifyAfter bool `json:"verify_after"`
}
DomainAutomationPolicy mirrors internal/api's domainAutomationPolicy.
type DomainAutomationResource ¶ added in v0.2.0
type DomainAutomationResource struct {
DomainAutomationPolicy
DNSProvider string `json:"dns_provider"`
ProxyIntegration bool `json:"proxy_integration_enabled"`
WildcardDNS *DomainDNSResult `json:"wildcard_dns,omitempty"`
}
DomainAutomationResource mirrors GET/PUT /api/v1/settings/domain-automation.
type DomainBasicAuthResource ¶
type DomainBasicAuthResource struct {
Domain string `json:"domain"`
Enabled bool `json:"enabled"`
Username string `json:"username,omitempty"`
HasPassword bool `json:"has_password"`
}
DomainBasicAuthResource mirrors internal/api's domainBasicAuthResource (internal/api/domain_basic_auth.go): GET/PUT/DELETE /api/v1/apps/{name}/domains/{domain}/auth's wire shape. The password itself never appears here in either direction.
type DomainCertStatus ¶
type DomainCertStatus struct {
Domain string `json:"domain"`
State string `json:"state"`
Staging bool `json:"staging"`
AppliesToAll bool `json:"applies_to_all"`
Issuer string `json:"issuer,omitempty"`
Kind string `json:"kind"`
NotAfter *time.Time `json:"not_after,omitempty"`
DaysLeft *int `json:"days_left,omitempty"`
RenewalAt *time.Time `json:"renewal_at,omitempty"`
LastRenewal *CertRenewal `json:"last_renewal,omitempty"`
Error string `json:"error,omitempty"`
Explanation string `json:"explanation,omitempty"`
Hint string `json:"hint,omitempty"`
NextSafeAt *time.Time `json:"next_safe_at,omitempty"`
}
DomainCertStatus mirrors GET /api/v1/domains/{domain}/cert/status: state is off, pending, issued or failed.
type DomainCheckResource ¶ added in v0.2.0
type DomainCheckResource struct {
Domain string `json:"domain"`
ExpectedHost string `json:"expected_host,omitempty"`
HostInferred bool `json:"host_inferred,omitempty"`
Resolved bool `json:"resolved"`
ResolvedHosts []string `json:"resolved_hosts,omitempty"`
Status string `json:"status"`
ExpectedIPv4 []string `json:"expected_ipv4,omitempty"`
ExpectedIPv6 []string `json:"expected_ipv6,omitempty"`
// ExpectedPrivate is true when the node address is private/LAN.
ExpectedPrivate bool `json:"expected_private,omitempty"`
// Challenge is "http-01" or "dns-01-required".
Challenge string `json:"challenge,omitempty"`
DNSProvider string `json:"dns_provider,omitempty"`
ACMEFailure *ACMEFailure `json:"acme_failure,omitempty"`
}
DomainCheckResource mirrors internal/api's domainCheckResponse (internal/api/domain_check.go): GET /api/v1/apps/{name}/domains/{domain}/check's wire shape.
type DomainDNSResult ¶ added in v0.2.0
type DomainDNSResult struct {
Domain string `json:"domain"`
DNS string `json:"dns"`
Planned string `json:"planned,omitempty"`
Provider string `json:"provider,omitempty"`
Zone string `json:"zone,omitempty"`
Record *DNSRecordResource `json:"record,omitempty"`
Replaced []DNSRecordResource `json:"replaced,omitempty"`
Proxied bool `json:"proxied,omitempty"`
Message string `json:"message,omitempty"`
}
DomainDNSResult mirrors internal/api's domainDNSResult.
type DomainDoctorReport ¶ added in v0.2.0
type DomainDoctorReport struct {
Domain string `json:"domain"`
App string `json:"app,omitempty"`
CheckedAt time.Time `json:"checked_at"`
Status string `json:"status"`
Probed bool `json:"probed"`
ProbeNote string `json:"probe_note,omitempty"`
Checks []DoctorCheck `json:"checks"`
// Records are the DNS records the domain needs to reach this server.
Records []DoctorRecord `json:"records,omitempty"`
Propagation *DoctorPropagation `json:"propagation,omitempty"`
}
DomainDoctorReport is POST .../domains/{domain}/doctor's body.
type DomainErrorPageEntry ¶ added in v0.2.0
DomainErrorPageEntry mirrors internal/api's domainErrorPageEntry: one status-code-to-body mapping.
type DomainErrorPagesResource ¶ added in v0.2.0
type DomainErrorPagesResource struct {
Domain string `json:"domain"`
Pages []DomainErrorPageEntry `json:"pages"`
}
DomainErrorPagesResource mirrors internal/api's domainErrorPagesResource (internal/api/domain_error_pages.go): GET/PUT/DELETE /api/v1/apps/{name}/domains/{domain}/error-pages's wire shape.
type DomainIssue ¶
type DomainIssue struct {
Domain string `json:"domain"`
Code string `json:"code"`
Severity string `json:"severity"`
Message string `json:"message"`
}
DomainIssue is one dropped or downgraded-domain finding from the ingress pass.
type DomainMaintenanceResource ¶
type DomainMaintenanceResource struct {
Domain string `json:"domain"`
Enabled bool `json:"enabled"`
Title string `json:"title,omitempty"`
Message string `json:"message,omitempty"`
RetryAfterSeconds int `json:"retry_after_seconds,omitempty"`
Until string `json:"until,omitempty"`
WindowID string `json:"window_id,omitempty"`
Bypass []string `json:"bypass,omitempty"`
BypassHealthCheck bool `json:"bypass_health_check"`
StartedAt string `json:"started_at,omitempty"`
AutoOffAt string `json:"auto_off_at,omitempty"`
// Ongoing is true when the status page shows this as ongoing maintenance.
Ongoing bool `json:"ongoing,omitempty"`
// AlertsSilenced is true while a maintenance silence mutes the app's probe alerts.
AlertsSilenced bool `json:"alerts_silenced"`
SilenceID string `json:"silence_id,omitempty"`
}
DomainMaintenanceResource mirrors internal/api's domainMaintenanceResource: GET/PUT/DELETE /api/v1/apps/{name}/domains/{domain}/maintenance's wire shape.
type DomainPoliciesResource ¶ added in v0.2.0
type DomainPoliciesResource struct {
Domain string `json:"domain"`
App string `json:"app"`
Policy trafficpolicy.Policy `json:"policy"`
UpdatedAt map[string]string `json:"updated_at"`
TLSReal bool `json:"tls_real"`
Geo GeoStatus `json:"geo"`
Cache CacheStats `json:"cache"`
Limits PolicyLimits `json:"limits"`
Preview []trafficpolicy.Step `json:"preview"`
Warnings []string `json:"warnings,omitempty"`
Security trafficpolicy.SecurityPreset `json:"security_preset"`
}
DomainPoliciesResource is GET .../domains/{domain}/policies.
type DomainPortsResource ¶ added in v0.2.0
type DomainPortsResource struct {
App string `json:"app"`
Domain string `json:"domain"`
PublicHTTPSPort int `json:"public_https_port"`
Streams []PortStream `json:"streams"`
DetectionNote string `json:"detection_note,omitempty"`
}
DomainPortsResource is GET .../domains/{domain}/ports.
type DomainReachability ¶ added in v0.2.0
type DomainReachability struct {
URL string `json:"reachable_url,omitempty"`
Reason string `json:"reachable_reason,omitempty"`
}
DomainReachability is one entry of AppEnvironmentDomains.Reachability.
type DomainRedirectResource ¶ added in v0.2.0
type DomainRedirectResource struct {
Domain string `json:"domain"`
Enabled bool `json:"enabled"`
TargetURL string `json:"target_url,omitempty"`
StatusCode int `json:"status_code"`
}
DomainRedirectResource mirrors internal/api's domainRedirectResource (internal/api/domain_redirect.go): GET/PUT/DELETE /api/v1/apps/{name}/domains/{domain}/redirect's wire shape.
type DomainRedirectsResource ¶ added in v0.2.0
type DomainRedirectsResource struct {
Domain string `json:"domain"`
Configured bool `json:"configured"`
Settings trafficpolicy.Redirects `json:"settings"`
Effective RedirectEffective `json:"effective"`
AppDomains []RedirectDomainRow `json:"app_domains"`
Canonical CanonicalState `json:"canonical"`
Samples []PolicyPreviewHops `json:"samples"`
Warnings []string `json:"warnings,omitempty"`
}
DomainRedirectsResource is GET .../domains/{domain}/redirects.
type DomainResource ¶
type DomainResource struct {
Domain string `json:"domain"`
ServiceName string `json:"service_name"`
// Automatic marks a generated sslip.io hostname rather than a configured domain.
Automatic bool `json:"automatic,omitempty"`
// TLSOwner is who terminates TLS: acme, internal, proxy or custom.
TLSOwner string `json:"tls_owner,omitempty"`
// ReachableURL is the link to open; ReachableReason says why it is empty.
ReachableURL string `json:"reachable_url,omitempty"`
ReachableReason string `json:"reachable_reason,omitempty"`
// Kind is app or standalone; Target is where a standalone domain proxies.
Kind string `json:"kind,omitempty"`
Target string `json:"target,omitempty"`
// Issues are problems the last ingress pass found for this domain.
Issues []DomainIssue `json:"issues,omitempty"`
}
DomainResource mirrors internal/api's domainResource (internal/api/ingress_settings.go).
type DomainRewrite ¶ added in v0.2.0
type DomainRewrite struct {
Prefix string `json:"prefix,omitempty"`
Find string `json:"find,omitempty"`
Replace string `json:"replace,omitempty"`
}
DomainRewrite mirrors store.DomainRewrite: Prefix is prepended to every copied hostname, or Find (a hostname or parent domain) is swapped for Replace.
type DomainSearchVisibilityResource ¶ added in v0.2.0
type DomainSearchVisibilityResource struct {
Domain string `json:"domain"`
Hidden bool `json:"hidden"`
}
DomainSearchVisibilityResource is the state of one domain's search engine visibility.
type DomainTLSCertResource ¶
type DomainTLSCertResource struct {
Domain string `json:"domain"`
Enabled bool `json:"enabled"`
UploadedAt string `json:"uploaded_at,omitempty"`
ExpiresAt string `json:"expires_at,omitempty"`
}
DomainTLSCertResource mirrors internal/api's domainTLSCertResource (internal/api/domain_tls_cert.go): GET/PUT/DELETE /api/v1/apps/{name}/domains/{domain}/tls-cert's wire shape. Neither the certificate nor the private key ever appears here.
type DomainWAFResource ¶ added in v0.2.0
type DomainWAFResource struct {
Domain string `json:"domain"`
WAFEnabled bool `json:"waf_enabled"`
WAFMode string `json:"waf_mode"`
RateLimitEnabled bool `json:"rate_limit_enabled"`
RateLimitRPS int `json:"rate_limit_rps"`
RateLimitBurst int `json:"rate_limit_burst"`
}
DomainWAFResource mirrors internal/api's domainWAFResource (internal/api/domain_waf.go): GET/PUT/DELETE /api/v1/apps/{name}/domains/{domain}/waf's wire shape.
type DrainBlocked ¶ added in v0.2.0
type DrainBlocked struct {
Kind string `json:"kind"`
Name string `json:"name"`
Reason string `json:"reason"`
}
DrainBlocked is a resource a drain could not move.
type DrainBlockedResource ¶ added in v0.2.0
type DrainBlockedResource struct {
Kind string `json:"kind"`
Name string `json:"name"`
Reason string `json:"reason"`
}
DrainBlockedResource mirrors internal/api's drainBlocked.
type DrainNodeResponse ¶
type DrainNodeResponse struct {
TargetNodeID string `json:"target_node_id"`
MovedServices []string `json:"moved_services"`
MovedDatabases []string `json:"moved_databases"`
Errors []string `json:"errors,omitempty"`
AutoPlaced bool `json:"auto_placed,omitempty"`
// Warnings lists checks that could not run, so the drain may be incomplete.
Warnings []string `json:"warnings,omitempty"`
// Blocked names apps and models left on the node, with the reason.
Blocked []DrainBlockedResource `json:"blocked,omitempty"`
}
DrainNodeResponse mirrors internal/api's drainNodeResponse. A partial failure is not itself a Go error from DrainNode: it comes back as a successful response with Errors populated, naming exactly which resource didn't move so the caller can retry just that one.
type DrillSummaryResource ¶ added in v0.2.0
type DrillSummaryResource struct {
ID string `json:"id"`
At string `json:"at"`
Status string `json:"status"`
Stage string `json:"stage,omitempty"`
Error string `json:"error,omitempty"`
Trigger string `json:"trigger,omitempty"`
Files int64 `json:"files,omitempty"`
}
DrillSummaryResource mirrors internal/api's drillSummaryResource.
type EdgeDetection ¶
type EdgeDetection struct {
Proxy string `json:"proxy"`
Evidence []string `json:"evidence,omitempty"`
PeerAddr string `json:"peer_addr,omitempty"`
Suggested string `json:"suggested,omitempty"`
RangesRotate bool `json:"ranges_rotate,omitempty"`
}
EdgeDetection names the proxy in front of this instance, as seen on the request.
type EdgeEffective ¶
type EdgeEffective struct {
MaxHeaderBytes EdgeLimitValue `json:"max_header_bytes"`
MaxBodyBytes EdgeLimitValue `json:"max_body_bytes"`
ReadHeaderTimeout EdgeLimitValue `json:"read_header_timeout_secs"`
IdleTimeout EdgeLimitValue `json:"idle_timeout_secs"`
}
EdgeEffective is the set of limits the ingress enforces.
type EdgeGuidance ¶ added in v0.2.0
type EdgeGuidance struct {
Commit string `json:"commit,omitempty"`
CommitURL string `json:"commit_url,omitempty"`
Image string `json:"image"`
RunsInContainer bool `json:"runs_in_container"`
Installable bool `json:"installable"`
PullCommand string `json:"pull_command,omitempty"`
RecreateCommand string `json:"recreate_command,omitempty"`
ComposeSnippet string `json:"compose_snippet,omitempty"`
SwitchTo []string `json:"switch_to,omitempty"`
}
EdgeGuidance is what the edge channel means for this install: a moving container image tag rather than a release binary.
type EdgeLimitValue ¶
EdgeLimitValue is one effective edge limit and where it came from (env, setting or default).
type EdgeSettings ¶
type EdgeSettings struct {
TrustedProxies string `json:"trusted_proxies"`
TrustedProxiesSource string `json:"trusted_proxies_source"`
TrustedProxiesActive bool `json:"trusted_proxies_active"`
MaxHeaderBytes *int64 `json:"max_header_bytes"`
MaxBodyBytes *int64 `json:"max_body_bytes"`
ReadHeaderTimeout *int64 `json:"read_header_timeout_secs"`
IdleTimeout *int64 `json:"idle_timeout_secs"`
Effective EdgeEffective `json:"effective"`
Detected EdgeDetection `json:"detected"`
NeedsTrustedProxies bool `json:"needs_trusted_proxies"`
Defaults EdgeEffective `json:"defaults"`
EnvLocked map[string]bool `json:"env_locked"`
}
EdgeSettings is GET/PUT /api/v1/settings/ingress/edge.
type EdgeSettingsUpdate ¶
type EdgeSettingsUpdate struct {
TrustedProxies string `json:"trusted_proxies"`
MaxHeaderBytes *int64 `json:"max_header_bytes"`
MaxBodyBytes *int64 `json:"max_body_bytes"`
ReadHeaderTimeout *int64 `json:"read_header_timeout_secs"`
IdleTimeout *int64 `json:"idle_timeout_secs"`
}
EdgeSettingsUpdate is the PUT body; a nil limit restores the default.
type EditDomainsRequest ¶ added in v0.2.0
type EditDomainsRequest struct {
Set *[]string `json:"set,omitempty"`
Add []string `json:"add,omitempty"`
Remove []string `json:"remove,omitempty"`
// Environment (ID, name or kind) targets that environment's own set.
Environment string `json:"environment,omitempty"`
// DNS is auto (default), off or preview. Replace overwrites a
// conflicting record, RemoveDNS deletes records Levelrail created for
// removed domains, Automation overrides the go-live policy.
DNS string `json:"dns,omitempty"`
Replace bool `json:"replace,omitempty"`
RemoveDNS bool `json:"remove_dns,omitempty"`
Automation *DomainAutomationOverride `json:"automation,omitempty"`
}
EditDomainsRequest mirrors internal/api's editDomainsRequest: Set, or Add and Remove.
type EditDomainsResult ¶ added in v0.2.0
type EditDomainsResult struct {
App string `json:"app"`
Domains []string `json:"domains"`
Changed bool `json:"changed"`
EnvironmentID string `json:"environment_id,omitempty"`
DNSResults []DomainDNSResult `json:"dns_results,omitempty"`
GoLive []GoLiveResult `json:"go_live,omitempty"`
}
EditDomainsResult mirrors internal/api's editDomainsResponse.
type EffectiveConfig ¶
type EffectiveConfig struct {
Context string `json:"context"`
Env []EffectiveEnvEntry `json:"env"`
BuildCommand EffectiveSetting `json:"build_command"`
PublishDir EffectiveSetting `json:"publish_dir"`
BuildArgs map[string]EffectiveSetting `json:"build_args,omitempty"`
}
EffectiveConfig mirrors internal/deploycontext.Effective.
type EffectiveEnvEntry ¶
type EffectiveEnvEntry struct {
Key string `json:"key"`
Value string `json:"value"`
Secret bool `json:"secret"`
Source string `json:"source"`
}
EffectiveEnvEntry is one resolved env var and where its value came from.
type EffectiveSessionPolicy ¶
type EffectiveSessionPolicy struct {
IdleTimeout string `json:"idle_timeout"`
MaxLifetime string `json:"max_lifetime"`
RequireMFA bool `json:"require_mfa"`
MaxSessions int `json:"max_concurrent_sessions"`
OnLimit string `json:"on_limit"`
AllowLists int `json:"allowlists"`
YourAddress string `json:"your_address"`
Allowed bool `json:"address_allowed"`
}
EffectiveSessionPolicy is the merged policy that applies to the caller.
type EffectiveSetting ¶
EffectiveSetting is one resolved build setting and its source.
type EmailBranding ¶
type EmailBranding struct {
LogoURL string `json:"logo_url"`
BrandColor string `json:"brand_color"`
ShowPoweredBy bool `json:"show_powered_by"`
DefaultBrandColor string `json:"default_brand_color,omitempty"`
Variables []string `json:"variables,omitempty"`
}
EmailBranding mirrors GET and PUT /api/v1/settings/email/branding.
type EmailBrandingPreview ¶
type EmailBrandingPreview struct {
Subject string `json:"subject"`
HTML string `json:"html"`
Text string `json:"text"`
}
EmailBrandingPreview mirrors POST /api/v1/settings/email/branding/preview.
type EmailDelivery ¶
type EmailDelivery struct {
ID string `json:"id"`
CreatedAt time.Time `json:"created_at"`
Provider string `json:"provider"`
To string `json:"to"`
Kind string `json:"kind"`
Status string `json:"status"`
MessageID string `json:"message_id"`
Error string `json:"error"`
ErrorKind string `json:"error_kind"`
Attempts int `json:"attempts"`
}
EmailDelivery is one delivery log row.
type EmailDeliveryList ¶
type EmailDeliveryList struct {
Deliveries []EmailDelivery `json:"deliveries"`
NextBefore string `json:"next_before,omitempty"`
}
EmailDeliveryList mirrors GET /api/v1/settings/email/deliveries.
type EmailDeliveryQuery ¶
EmailDeliveryQuery filters ListEmailDeliveries.
type EmailDomainCheck ¶
type EmailDomainCheck struct {
Domain string `json:"domain"`
Provider string `json:"provider"`
Records []EmailRecordCheck `json:"records"`
SPFInclude string `json:"spf_include,omitempty"`
}
EmailDomainCheck mirrors GET /api/v1/settings/email/domain-check.
type EmailFooterLink ¶
type EmailFooterLink struct {
}
EmailFooterLink is one labelled https link in the email footer.
type EmailProvider ¶
type EmailProvider struct {
ID string `json:"id,omitempty"`
Role string `json:"role,omitempty"`
Name string `json:"name,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
Backend string `json:"backend"`
TLSMode string `json:"tls_mode,omitempty"`
TLSSkipVerify bool `json:"tls_skip_verify,omitempty"`
SMTPHost string `json:"smtp_host,omitempty"`
SMTPPort int `json:"smtp_port,omitempty"`
SMTPUsername string `json:"smtp_username,omitempty"`
SMTPFrom string `json:"smtp_from,omitempty"`
SMTPPassword string `json:"smtp_password,omitempty"`
SMTPPasswordSet bool `json:"smtp_password_set,omitempty"`
SESRegion string `json:"ses_region,omitempty"`
SESAccessKeyID string `json:"ses_access_key_id,omitempty"`
SESFrom string `json:"ses_from,omitempty"`
SESSecretAccessKey string `json:"ses_secret_access_key,omitempty"`
SESSecretAccessKeySet bool `json:"ses_secret_access_key_set,omitempty"`
SESSMTPPort int `json:"ses_smtp_port,omitempty"`
SESSMTPUsername string `json:"ses_smtp_username,omitempty"`
SESSMTPPassword string `json:"ses_smtp_password,omitempty"`
SESSMTPPasswordSet bool `json:"ses_smtp_password_set,omitempty"`
ResendFrom string `json:"resend_from,omitempty"`
ResendAPIKey string `json:"resend_api_key,omitempty"`
ResendAPIKeySet bool `json:"resend_api_key_set,omitempty"`
PostmarkServerToken string `json:"postmark_server_token,omitempty"`
PostmarkServerTokenSet bool `json:"postmark_server_token_set,omitempty"`
SendGridAPIKey string `json:"sendgrid_api_key,omitempty"`
SendGridAPIKeySet bool `json:"sendgrid_api_key_set,omitempty"`
MailgunAPIKey string `json:"mailgun_api_key,omitempty"`
MailgunAPIKeySet bool `json:"mailgun_api_key_set,omitempty"`
MailgunDomain string `json:"mailgun_domain,omitempty"`
MailgunRegion string `json:"mailgun_region,omitempty"`
LastOKAt *time.Time `json:"last_ok_at,omitempty"`
LastErrorKind string `json:"last_error_kind,omitempty"`
CreatedAt *time.Time `json:"created_at,omitempty"`
UpdatedAt *time.Time `json:"updated_at,omitempty"`
}
EmailProvider mirrors one entry of /api/v1/settings/email/providers. Credential fields are write-only: a response carries only the *_set booleans, and an empty credential on a write keeps the stored value.
func (EmailProvider) SecretSet ¶
func (p EmailProvider) SecretSet() bool
SecretSet reports whether the provider's own backend has a stored credential.
type EmailProviderList ¶
type EmailProviderList struct {
Providers []EmailProvider `json:"providers"`
}
EmailProviderList mirrors GET /api/v1/settings/email/providers.
type EmailRecordCheck ¶
type EmailRecordCheck struct {
Type string `json:"type"`
Name string `json:"name"`
Status string `json:"status"`
Code string `json:"code"`
Value string `json:"value,omitempty"`
Message string `json:"message"`
}
EmailRecordCheck is one SPF, DKIM or DMARC verdict.
type EmailSecretRevealed ¶
type EmailSecretRevealed struct {
Value string `json:"value"`
}
EmailSecretRevealed mirrors internal/api's emailSecretRevealResponse.
type EmailSettingsResource ¶ added in v0.2.0
type EmailSettingsResource struct {
Backend string `json:"backend"`
FromName string `json:"from_name,omitempty"`
FromAddress string `json:"from_address,omitempty"`
ReplyTo string `json:"reply_to,omitempty"`
EnvelopeFrom string `json:"envelope_from,omitempty"`
SendsPerMinute int `json:"sends_per_minute,omitempty"`
SendsPerDay int `json:"sends_per_day,omitempty"`
TLSMode string `json:"tls_mode,omitempty"`
TLSSkipVerify bool `json:"tls_skip_verify,omitempty"`
SMTPHost string `json:"smtp_host,omitempty"`
SMTPPort int `json:"smtp_port,omitempty"`
SMTPUsername string `json:"smtp_username,omitempty"`
SMTPFrom string `json:"smtp_from,omitempty"`
SMTPPassword string `json:"smtp_password,omitempty"`
SMTPPasswordSet bool `json:"smtp_password_set,omitempty"`
SESRegion string `json:"ses_region,omitempty"`
SESAccessKeyID string `json:"ses_access_key_id,omitempty"`
SESFrom string `json:"ses_from,omitempty"`
SESSecretAccessKey string `json:"ses_secret_access_key,omitempty"`
SESSecretAccessKeySet bool `json:"ses_secret_access_key_set,omitempty"`
SESSMTPPort int `json:"ses_smtp_port,omitempty"`
SESSMTPUsername string `json:"ses_smtp_username,omitempty"`
SESSMTPPassword string `json:"ses_smtp_password,omitempty"`
SESSMTPPasswordSet bool `json:"ses_smtp_password_set,omitempty"`
ResendFrom string `json:"resend_from,omitempty"`
ResendAPIKey string `json:"resend_api_key,omitempty"`
ResendAPIKeySet bool `json:"resend_api_key_set,omitempty"`
PostmarkServerToken string `json:"postmark_server_token,omitempty"`
PostmarkServerTokenSet bool `json:"postmark_server_token_set,omitempty"`
SendGridAPIKey string `json:"sendgrid_api_key,omitempty"`
SendGridAPIKeySet bool `json:"sendgrid_api_key_set,omitempty"`
MailgunAPIKey string `json:"mailgun_api_key,omitempty"`
MailgunAPIKeySet bool `json:"mailgun_api_key_set,omitempty"`
MailgunDomain string `json:"mailgun_domain,omitempty"`
MailgunRegion string `json:"mailgun_region,omitempty"`
SESRegions []string `json:"ses_regions,omitempty"`
}
EmailSettingsResource mirrors internal/api's emailSettingsResource (internal/api/email_settings.go): the shape of both GET and PUT /api/v1/settings/email. Credential fields are write-only; the corresponding *Set booleans report presence instead.
type EmailStatus ¶
type EmailStatus struct {
Configured bool `json:"configured"`
Provider string `json:"provider"`
From string `json:"from,omitempty"`
LastSuccessAt *time.Time `json:"last_success_at,omitempty"`
LastFailureAt *time.Time `json:"last_failure_at,omitempty"`
LastErrorKind string `json:"last_error_kind,omitempty"`
Sent24h int `json:"sent_24h"`
Failed24h int `json:"failed_24h"`
}
EmailStatus mirrors GET /api/v1/settings/email/status.
type EmailTestResult ¶
type EmailTestResult struct {
To string `json:"to"`
Provider string `json:"provider"`
ProviderID string `json:"provider_id,omitempty"`
MessageID string `json:"message_id,omitempty"`
Attempts int `json:"attempts"`
}
EmailTestResult mirrors POST /api/v1/settings/email/test.
type EnableHTTPSRequest ¶ added in v0.2.0
type EnableHTTPSRequest struct {
Email string `json:"email,omitempty"`
Staging bool `json:"staging"`
}
EnableHTTPSRequest is POST /api/v1/settings/ingress/https's body.
type EncryptionKeyFix ¶
EncryptionKeyFix mirrors internal/api's encryptionKeyFix.
type EncryptionKeyHint ¶
type EncryptionKeyHint struct {
Code string `json:"code"`
Severity string `json:"severity"`
Message string `json:"message"`
Fix EncryptionKeyFix `json:"fix"`
}
EncryptionKeyHint mirrors internal/api's encryptionKeyHint.
type EncryptionKeysStatus ¶
type EncryptionKeysStatus struct {
MasterKey MasterKeyStatus `json:"master_key"`
Apps []AppKeyStatus `json:"apps"`
Policy KeyPolicy `json:"policy"`
LastRun *KeyRotationRun `json:"last_run,omitempty"`
Hints []EncryptionKeyHint `json:"hints"`
}
EncryptionKeysStatus mirrors internal/api's encryptionKeysResource.
type EndpointDiagnosis ¶
type EndpointDiagnosis struct {
Code string `json:"code"`
Message string `json:"message"`
Fix string `json:"fix"`
}
EndpointDiagnosis mirrors internal/api's endpointDiagnosis.
type EndpointHealth ¶
type EndpointHealth struct {
State string `json:"state"`
LatencyMS int64 `json:"latency_ms"`
CheckedAt *time.Time `json:"checked_at,omitempty"`
LastOKAt *time.Time `json:"last_ok_at,omitempty"`
Failures int `json:"consecutive_failures"`
Diagnosis *EndpointDiagnosis `json:"diagnosis,omitempty"`
}
EndpointHealth mirrors internal/api's endpointHealthResource.
type EndpointTest ¶
type EndpointTest struct {
State string `json:"state"`
LatencyMS int64 `json:"latency_ms"`
Models []string `json:"models"`
Diagnosis *EndpointDiagnosis `json:"diagnosis,omitempty"`
}
EndpointTest mirrors internal/api's endpointTestResponse.
type EngineHealth ¶ added in v0.2.0
type EngineHealth struct {
State string `json:"state"`
Summary string `json:"summary"`
Reasons []string `json:"reasons"`
}
EngineHealth mirrors internal/models.EngineHealth.
type EngineMetricPoint ¶ added in v0.2.0
EngineMetricPoint is one stored engine reading.
type EngineMetricSeries ¶ added in v0.2.0
type EngineMetricSeries struct {
ID string `json:"id"`
Label string `json:"label"`
Unit string `json:"unit"`
Supported bool `json:"supported"`
Latest *float64 `json:"latest"`
Points []EngineMetricPoint `json:"points"`
}
EngineMetricSeries mirrors internal/models.EngineMetricSeries.
type EngineMetricsReport ¶ added in v0.2.0
type EngineMetricsReport struct {
Model string `json:"model"`
Engine string `json:"engine"`
From time.Time `json:"from"`
To time.Time `json:"to"`
Collecting bool `json:"collecting"`
Note string `json:"note"`
Health EngineHealth `json:"health"`
Series []EngineMetricSeries `json:"series"`
}
EngineMetricsReport mirrors internal/models.EngineMetricsReport.
type EnvChangeResource ¶
type EnvChangeResource struct {
ID int64 `json:"id"`
At string `json:"at"`
Actor string `json:"actor"`
Key string `json:"key"`
Action string `json:"action"`
Source string `json:"source"`
}
EnvChangeResource is one key-level env edit, never carrying a value.
type EnvCheckResource ¶
type EnvCheckResource struct {
Findings []EnvFindingResource `json:"findings"`
}
EnvCheckResource is the response of the env check calls.
type EnvFindingResource ¶
type EnvFindingResource struct {
Kind string `json:"kind"`
Key string `json:"key"`
Severity string `json:"severity"`
Detail string `json:"detail,omitempty"`
Fix EnvFixResource `json:"fix"`
}
EnvFindingResource is one problem found in an app's variables.
type EnvFixResource ¶
EnvFixResource is how an env finding can be fixed: type is auto or manual.
type EnvScanFinding ¶
type EnvScanFinding struct {
Var string `json:"var"`
RuleID string `json:"rule_id"`
Description string `json:"description"`
Fingerprint string `json:"fingerprint"`
Allowed bool `json:"allowed,omitempty"`
}
EnvScanFinding is one suspected credential in scanned env values. It never carries the value.
type EnvScanResponse ¶
type EnvScanResponse struct {
Findings []EnvScanFinding `json:"findings"`
Truncated bool `json:"truncated"`
}
EnvScanResponse is POST .../env/scan's body.
type EnvSettings ¶ added in v0.2.0
type EnvSettings struct {
RevealPolicy string `json:"reveal_policy"`
PolicyValid bool `json:"policy_valid"`
TokenReveal bool `json:"token_reveal"`
SecretsWriteOnly bool `json:"secrets_write_only"`
SensitiveOverrides map[string]bool `json:"sensitive_overrides"`
GrantTTLSeconds int `json:"grant_ttl_seconds"`
HideAfterSeconds int `json:"hide_after_seconds"`
SecretsConfigured bool `json:"secrets_configured"`
}
EnvSettings mirrors GET /api/v1/apps/{name}/env/settings.
type EnvSettingsUpdate ¶ added in v0.2.0
type EnvSettingsUpdate struct {
SensitiveOverrides map[string]*bool `json:"sensitive_overrides,omitempty"`
SecretsWriteOnly *bool `json:"secrets_write_only,omitempty"`
StepUp *StepUpProof `json:"step_up,omitempty"`
}
EnvSettingsUpdate is PUT /api/v1/apps/{name}/env/settings's body. A nil override value clears that key's override.
type EnvironmentCloneAppInput ¶ added in v0.2.0
type EnvironmentCloneAppInput struct {
SourceApp string `json:"source_app"`
NewName string `json:"new_name,omitempty"`
Domains []string `json:"domains,omitempty"`
}
EnvironmentCloneAppInput mirrors internal/api's environmentCloneAppInput: an optional per-app override inside a clone request. Omitted entirely for a source app means "use the auto-suggested name, assign no domains".
type EnvironmentCloneAppPreview ¶ added in v0.2.0
type EnvironmentCloneAppPreview struct {
SourceApp string `json:"source_app"`
SuggestedNewName string `json:"suggested_new_name"`
Image string `json:"image"`
EnvVarCount int `json:"env_var_count"`
SecretEnvKeys []string `json:"secret_env_keys"`
CurrentDomains []string `json:"current_domains"`
VolumeCount int `json:"volume_count"`
BindMountCount int `json:"bind_mount_count"`
HasHealthCheck bool `json:"has_health_check"`
HasDatabaseAttachment bool `json:"has_database_attachment"`
HasHostPortPin bool `json:"has_host_port_pin"`
ScheduledTaskCount int `json:"scheduled_task_count"`
}
EnvironmentCloneAppPreview mirrors internal/api's environmentCloneAppPreview (internal/api/environment_clone.go): one source app's own view inside GET .../clone/preview.
type EnvironmentCloneAppResult ¶ added in v0.2.0
type EnvironmentCloneAppResult struct {
SourceApp string `json:"source_app"`
NewApp string `json:"new_app"`
Image string `json:"image"`
}
EnvironmentCloneAppResult mirrors internal/api's environmentCloneAppResult: one cloned app's own entry inside POST .../clone's response.
type EnvironmentClonePreviewResource ¶ added in v0.2.0
type EnvironmentClonePreviewResource struct {
SourceEnvironment EnvironmentResource `json:"source_environment"`
NewEnvironmentName string `json:"new_environment_name"`
Apps []EnvironmentCloneAppPreview `json:"apps"`
EnvironmentEnvVarKeys []string `json:"environment_env_var_keys"`
EnvironmentSecretEnvKeys []string `json:"environment_secret_env_keys"`
UnclonedFields []string `json:"uncloned_fields"`
Note string `json:"note"`
}
EnvironmentClonePreviewResource mirrors internal/api's environmentClonePreviewResource, GET .../clone/preview's response.
type EnvironmentCloneRequest ¶ added in v0.2.0
type EnvironmentCloneRequest struct {
NewEnvironmentName string `json:"new_environment_name"`
CopySecretValues bool `json:"copy_secret_values,omitempty"`
Apps []EnvironmentCloneAppInput `json:"apps,omitempty"`
CopyDomains bool `json:"copy_domains,omitempty"`
DomainRewrite *DomainRewrite `json:"domain_rewrite,omitempty"`
}
EnvironmentCloneRequest mirrors internal/api's environmentCloneRequest, POST /api/v1/environments/{id}/clone's body.
type EnvironmentCloneResultResource ¶ added in v0.2.0
type EnvironmentCloneResultResource struct {
Environment EnvironmentResource `json:"environment"`
Apps []EnvironmentCloneAppResult `json:"apps"`
CopiedSecretValues bool `json:"copied_secret_values"`
Note string `json:"note"`
}
EnvironmentCloneResultResource mirrors internal/api's environmentCloneResultResource, POST .../clone's response.
type EnvironmentCompareResource ¶ added in v0.2.0
type EnvironmentCompareResource struct {
ProjectID string `json:"project_id"`
A EnvironmentCompareSide `json:"a"`
B EnvironmentCompareSide `json:"b"`
Diff []EnvironmentEnvDiffEntry `json:"diff"`
Note string `json:"note"`
}
EnvironmentCompareResource mirrors internal/api's environmentCompareResource, GET /api/v1/projects/{id}/environments/compare's response: each of two named environments' resolved effective env vars (organization, project, and environment shared-env tiers merged in internal/reconcile/application's resolveEnv precedence), secret values always redacted, plus the keys that differ between them.
type EnvironmentCompareSide ¶ added in v0.2.0
type EnvironmentCompareSide struct {
Environment EnvironmentResource `json:"environment"`
Env []EnvironmentEnvEntryResource `json:"env"`
}
EnvironmentCompareSide mirrors internal/api's environmentCompareSide: one side (A or B) of GET .../environments/compare's response.
type EnvironmentDomainSet ¶ added in v0.2.0
type EnvironmentDomainSet struct {
EnvironmentID string `json:"environment_id"`
Name string `json:"name"`
Kind string `json:"kind"`
Active bool `json:"active"`
Domains []string `json:"domains"`
}
EnvironmentDomainSet is one environment's domain set for an app.
type EnvironmentEnvDiffEntry ¶ added in v0.2.0
type EnvironmentEnvDiffEntry struct {
Key string `json:"key"`
Secret bool `json:"secret"`
Status string `json:"status"`
A string `json:"a,omitempty"`
B string `json:"b,omitempty"`
}
EnvironmentEnvDiffEntry mirrors internal/api's environmentEnvDiffEntry: one key that differs between A and B. Status is one of "only_in_a", "only_in_b", "changed", or "masked". A/B are only ever populated for a non-secret, present-on-both-sides "changed" entry or a non-secret present-on-one-side "only_in_a"/"only_in_b" entry: a secret-marked key never carries a value here, on either side.
type EnvironmentEnvEntryResource ¶ added in v0.2.0
type EnvironmentEnvEntryResource struct {
Key string `json:"key"`
Value string `json:"value,omitempty"`
Secret bool `json:"secret"`
}
EnvironmentEnvEntryResource mirrors internal/api's environmentEnvEntryResource: one resolved key inside EnvironmentCompareSide.Env. Value is only ever populated when Secret is false.
type EnvironmentGrants ¶ added in v0.2.0
type EnvironmentGrants struct {
EnvironmentIDs []string `json:"environment_ids"`
}
EnvironmentGrants is the body of the user environment-grants routes.
type EnvironmentResource ¶
type EnvironmentResource struct {
ID string `json:"id"`
ProjectID string `json:"project_id"`
Name string `json:"name"`
Protected bool `json:"protected"`
CreatedAt string `json:"created_at"`
Kind string `json:"kind,omitempty"`
Scope string `json:"scope,omitempty"`
SortOrder int `json:"sort_order,omitempty"`
}
EnvironmentResource mirrors internal/api's environmentResource (internal/api/environments.go).
type ErrorEvent ¶
type ErrorEvent struct {
EventID string `json:"event_id"`
TimestampNs int64 `json:"timestamp_ns"`
Release string `json:"release,omitempty"`
Environment string `json:"environment,omitempty"`
DeployID string `json:"deploy_id,omitempty"`
Event json.RawMessage `json:"event,omitempty"`
}
ErrorEvent mirrors internal/api's errorEventResource.
type ErrorIssue ¶
type ErrorIssue struct {
Fingerprint string `json:"fingerprint"`
Title string `json:"title"`
Level string `json:"level"`
FirstSeenNs int64 `json:"first_seen_ns"`
LastSeenNs int64 `json:"last_seen_ns"`
Count int64 `json:"count"`
LastRelease string `json:"last_release,omitempty"`
LastDeployID string `json:"last_deploy_id,omitempty"`
Status string `json:"status"`
Regressed bool `json:"regressed"`
}
ErrorIssue mirrors internal/telemetry's ErrorIssue.
type ErrorIssueDetail ¶
type ErrorIssueDetail struct {
Issue ErrorIssue `json:"issue"`
Events []ErrorEvent `json:"events"`
}
ErrorIssueDetail mirrors internal/api's errorIssueResource.
type ErrorListOptions ¶
ErrorListOptions are the filters of ListErrors.
type ErrorTrackingResource ¶
type ErrorTrackingResource struct {
Enabled bool `json:"enabled"`
Endpoint string `json:"endpoint"`
DSN string `json:"dsn,omitempty"`
Env map[string]string `json:"env,omitempty"`
}
ErrorTrackingResource mirrors internal/api's errorTrackingResource.
type EvaluateFlagResource ¶
EvaluateFlagResource mirrors internal/api's evaluateFlagResource: the tiny shape GET /api/v1/flags/evaluate/{key} returns.
type EventDeliveryResource ¶
type EventDeliveryResource struct {
ID string `json:"id"`
WebhookID string `json:"webhook_id"`
EventID string `json:"event_id"`
EventType string `json:"event_type"`
State string `json:"state"`
Attempts int `json:"attempts"`
ResponseStatus int `json:"response_status"`
LastError string `json:"last_error,omitempty"`
NextAttemptAt string `json:"next_attempt_at"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
EventDeliveryResource is one entry of a webhook's delivery log.
type EventWebhookResource ¶
type EventWebhookResource struct {
ID string `json:"id"`
Name string `json:"name"`
URL string `json:"url"`
Enabled bool `json:"enabled"`
Events []string `json:"events"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
Pending int `json:"pending"`
Delivered int `json:"delivered"`
Dead int `json:"dead"`
LastStatus int `json:"last_status"`
SigningSecret string `json:"signing_secret,omitempty"`
}
EventWebhookResource mirrors GET /api/v1/event-webhooks items. The signing secret is set only on create and rotate responses.
type EventWebhookTestResult ¶
type EventWebhookTestResult struct {
OK bool `json:"ok"`
Status int `json:"status,omitempty"`
Error string `json:"error,omitempty"`
}
EventWebhookTestResult is the answer of the test probe.
type EvidenceFileCheck ¶
type EvidenceFileCheck struct {
Name string `json:"name"`
OK bool `json:"ok"`
Reason string `json:"reason,omitempty"`
}
EvidenceFileCheck is one file result of a pack verification.
type EvidencePackResource ¶
type EvidencePackResource struct {
ID string `json:"id"`
RangeFrom string `json:"range_from"`
RangeTo string `json:"range_to"`
Status string `json:"status"`
Step string `json:"step"`
Progress int `json:"progress"`
SizeBytes int64 `json:"size_bytes"`
SHA256 string `json:"sha256,omitempty"`
Error string `json:"error,omitempty"`
CreatedBy string `json:"created_by"`
CreatedAt string `json:"created_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
EvidencePackResource mirrors one evidence pack job.
type EvidenceVerifyReport ¶
type EvidenceVerifyReport struct {
Valid bool `json:"valid"`
SignatureChecked bool `json:"signature_checked"`
SignatureValid bool `json:"signature_valid"`
KeyID string `json:"key_id,omitempty"`
Files []EvidenceFileCheck `json:"files"`
}
EvidenceVerifyReport is the answer of POST .../verify.
type ExecAccessResource ¶ added in v0.2.0
type ExecAccessResource struct {
Enabled bool `json:"enabled"`
}
ExecAccessResource mirrors internal/api's execAccessResource: both GET and PUT /api/v1/apps/{name}/exec-access's response, whether shell/exec access is even attempted for this app regardless of the caller's own IAM abilities. Default true, unlike AutoRollbackSettingResource.
type ExecRequest ¶
type ExecRequest struct {
Command string `json:"command"`
Args []string `json:"args,omitempty"`
TimeoutSeconds int `json:"timeout_seconds,omitempty"`
}
ExecRequest mirrors internal/api's execRequest (internal/api/exec.go). Command is required server-side and is never shell-interpreted: a caller who wants shell features (pipes, redirection, env expansion) passes Command: "sh", Args: []string{"-c", "..."} explicitly, the same contract the server documents.
type ExecResponse ¶
type ExecResponse struct {
Stdout string `json:"stdout"`
Stderr string `json:"stderr,omitempty"`
ExitCode int `json:"exit_code"`
Truncated bool `json:"truncated,omitempty"`
}
ExecResponse mirrors internal/api's execResponse. ExitCode is always the remote command's real exit code, never a client-level sentinel.
type ExportDestinationResource ¶ added in v0.2.0
type ExportDestinationResource struct {
ID string `json:"id"`
Name string `json:"name"`
Kind string `json:"kind"`
Endpoint string `json:"endpoint"`
Enabled bool `json:"enabled"`
Apps []string `json:"apps"`
MinLevel string `json:"min_level"`
Options ExportOptions `json:"options"`
HeaderNames []string `json:"header_names"`
HasHMACKey bool `json:"has_hmac_key"`
HasAPIKey bool `json:"has_api_key"`
Status ExportStatus `json:"status"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
ExportDestinationResource is one data export destination. Header values and signing keys are never returned.
type ExportOptions ¶ added in v0.2.0
type ExportOptions struct {
StorageTargetID string `json:"storage_target_id,omitempty"`
Prefix string `json:"prefix,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
IntervalSeconds int `json:"interval_seconds,omitempty"`
Backfill bool `json:"backfill,omitempty"`
Region string `json:"region,omitempty"`
Site string `json:"site,omitempty"`
Dataset string `json:"dataset,omitempty"`
Username string `json:"username,omitempty"`
Index string `json:"index,omitempty"`
Source string `json:"source,omitempty"`
SourceType string `json:"source_type,omitempty"`
Gzip bool `json:"gzip,omitempty"`
InsecureSkipVerify bool `json:"insecure_skip_verify,omitempty"`
Facility string `json:"facility,omitempty"`
AppName string `json:"app_name,omitempty"`
}
ExportOptions are the non-secret, kind-specific destination settings.
type ExportStatus ¶ added in v0.2.0
type ExportStatus struct {
LastSuccessAt string `json:"last_success_at"`
LastError string `json:"last_error"`
LastErrorAt string `json:"last_error_at"`
SentTotal int64 `json:"sent_total"`
DroppedTotal int64 `json:"dropped_total"`
FailuresTotal int64 `json:"failures_total"`
QueueDepth int64 `json:"queue_depth"`
CircuitOpen bool `json:"circuit_open"`
CursorAt string `json:"cursor_at,omitempty"`
}
ExportStatus is a destination's delivery state.
type ExportTestResult ¶ added in v0.2.0
type ExportTestResult struct {
OK bool `json:"ok"`
Error string `json:"error,omitempty"`
Fix string `json:"fix,omitempty"`
}
ExportTestResult is the answer of the destination test probe.
type ExposureFinding ¶ added in v0.2.0
type ExposureFinding struct {
Container string `json:"container"`
Image string `json:"image"`
Owner ExposureOwner `json:"owner"`
ImageKind string `json:"image_kind"`
Protocol string `json:"protocol"`
HostPort int `json:"host_port"`
ContainerPort int `json:"container_port"`
Binds []string `json:"binds"`
Class string `json:"class"`
Severity string `json:"severity"`
AllowedSources []string `json:"allowed_sources,omitempty"`
Rules []string `json:"rules,omitempty"`
Managed bool `json:"managed"`
Explanation string `json:"explanation"`
Recommendation string `json:"recommendation,omitempty"`
CanRestrict bool `json:"can_restrict"`
CannotRestrictWhy string `json:"cannot_restrict_reason,omitempty"`
Restriction *ExposureRestriction `json:"restriction,omitempty"`
Outside ExposureOutsideCheck `json:"outside_check"`
}
ExposureFinding mirrors internal/api's exposureFindingResource.
type ExposureNode ¶ added in v0.2.0
type ExposureNode struct {
NodeID string `json:"node_id"`
NodeName string `json:"node_name"`
Local bool `json:"local"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
RulesReadable bool `json:"rules_readable"`
RulesNote string `json:"rules_note,omitempty"`
PublicAddress string `json:"public_address,omitempty"`
Findings []ExposureFinding `json:"findings"`
}
ExposureNode mirrors internal/api's exposureNodeResource.
type ExposureOutsideCheck ¶ added in v0.2.0
type ExposureOutsideCheck struct {
Status string `json:"status"`
Detail string `json:"detail,omitempty"`
}
ExposureOutsideCheck mirrors internal/api's exposureOutsideResource.
type ExposureOwner ¶ added in v0.2.0
type ExposureOwner struct {
Kind string `json:"kind"`
Name string `json:"name,omitempty"`
Intentional bool `json:"intentional,omitempty"`
}
ExposureOwner mirrors internal/exposure.Owner.
type ExposurePlan ¶ added in v0.2.0
type ExposurePlan struct {
Commands []string `json:"commands"`
Drops string `json:"drops"`
Tag string `json:"tag"`
Persistence string `json:"persistence"`
Port int `json:"port"`
Protocol string `json:"protocol"`
Allow []string `json:"allow"`
Warnings []string `json:"warnings"`
Applied bool `json:"applied"`
}
ExposurePlan mirrors internal/api's exposurePlanResource.
type ExposureReport ¶ added in v0.2.0
type ExposureReport struct {
GeneratedAt string `json:"generated_at"`
Nodes []ExposureNode `json:"nodes"`
Exposed int `json:"exposed"`
High int `json:"high"`
}
ExposureReport mirrors internal/api's exposureReportResource.
type ExposureRestrictRequest ¶ added in v0.2.0
type ExposureRestrictRequest struct {
Node string `json:"node,omitempty"`
Port int `json:"port,omitempty"`
Protocol string `json:"protocol,omitempty"`
Allow []string `json:"allow"`
LocalContainers bool `json:"local_containers,omitempty"`
Confirm bool `json:"confirm,omitempty"`
}
ExposureRestrictRequest mirrors internal/api's exposureRestrictRequest.
type ExposureRestriction ¶ added in v0.2.0
type ExposureRestriction struct {
Allow []string `json:"allow"`
CreatedAt string `json:"created_at,omitempty"`
}
ExposureRestriction mirrors internal/api's exposureRestrictionResource.
type ExternalDatabase ¶ added in v0.2.0
type ExternalDatabase struct {
Name string `json:"name"`
Engine string `json:"engine"`
Host string `json:"host"`
Port int `json:"port"`
Username string `json:"username,omitempty"`
Database string `json:"database,omitempty"`
TLSMode string `json:"tls_mode"`
Network string `json:"network,omitempty"`
NodeID string `json:"node_id,omitempty"`
ProjectID string `json:"project_id,omitempty"`
SourceContainer string `json:"source_container,omitempty"`
HasPassword bool `json:"has_password"`
Health *ExternalDatabaseHealth `json:"health,omitempty"`
}
ExternalDatabase mirrors internal/api's externalDatabaseResource. It never carries a password.
type ExternalDatabaseCandidate ¶ added in v0.2.0
type ExternalDatabaseCandidate struct {
ContainerID string `json:"container_id"`
Container string `json:"container"`
Image string `json:"image"`
Engine string `json:"engine"`
Port int `json:"port"`
SuggestedHost string `json:"suggested_host,omitempty"`
Network string `json:"network,omitempty"`
Networks []string `json:"networks,omitempty"`
PublishedPort int `json:"published_port,omitempty"`
SuggestedUser string `json:"suggested_user,omitempty"`
Note string `json:"note,omitempty"`
}
ExternalDatabaseCandidate is a running database container that can be adopted.
type ExternalDatabaseHealth ¶ added in v0.2.0
type ExternalDatabaseHealth struct {
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
LatencyMs int `json:"latency_ms"`
CheckedAt string `json:"checked_at,omitempty"`
}
ExternalDatabaseHealth mirrors the API's last probe outcome.
type ExternalDatabaseProbe ¶ added in v0.2.0
type ExternalDatabaseProbe struct {
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
LatencyMs int `json:"latency_ms"`
Version string `json:"version,omitempty"`
User string `json:"user,omitempty"`
Database string `json:"database,omitempty"`
Databases []string `json:"databases,omitempty"`
}
ExternalDatabaseProbe is one connectivity probe result.
type ExternalDatabaseRequest ¶ added in v0.2.0
type ExternalDatabaseRequest struct {
Name string `json:"name,omitempty"`
Engine string `json:"engine,omitempty"`
Host string `json:"host,omitempty"`
Port int `json:"port,omitempty"`
Username string `json:"username,omitempty"`
Password string `json:"password,omitempty"`
Database string `json:"database,omitempty"`
AuthDatabase string `json:"auth_database,omitempty"`
TLSMode string `json:"tls_mode,omitempty"`
Network string `json:"network,omitempty"`
NodeID string `json:"node_id,omitempty"`
ProjectID string `json:"project_id,omitempty"`
Container string `json:"container,omitempty"`
}
ExternalDatabaseRequest is the connect, test and adopt body.
type ExternalEndpoint ¶
type ExternalEndpoint struct {
BaseURL string `json:"base_url"`
APIType string `json:"api_type"`
CredentialSet bool `json:"credential_set"`
FallbackModel string `json:"fallback_model,omitempty"`
FallbackModelRef string `json:"fallback_model_ref,omitempty"`
LatencyBudgetMS int64 `json:"latency_budget_ms"`
FallbackCount int `json:"fallback_count"`
Models []string `json:"models"`
DiscoveryError string `json:"discovery_error,omitempty"`
PrivateAllowed bool `json:"private_allowed"`
Health EndpointHealth `json:"health"`
}
ExternalEndpoint mirrors internal/api's endpointResource.
type ExternalEndpointRequest ¶
type ExternalEndpointRequest struct {
BaseURL string `json:"base_url"`
APIType string `json:"api_type,omitempty"`
Credential string `json:"credential,omitempty"`
FallbackModel string `json:"fallback_model,omitempty"`
FallbackModelRef string `json:"fallback_model_ref,omitempty"`
LatencyBudgetMS int64 `json:"latency_budget_ms,omitempty"`
}
ExternalEndpointRequest mirrors internal/api's externalRequest.
type FailedDeployResource ¶ added in v0.2.0
type FailedDeployResource struct {
DeployAttemptResource
LastGoodImage string `json:"last_good_image,omitempty"`
}
FailedDeployResource is one entry of GET /api/v1/deploys/failed: an app's latest failed deploy attempt plus the image of its newest good one.
type FailureContextDeploy ¶ added in v0.2.0
type FailureContextDeploy struct {
ID string `json:"id"`
Status string `json:"status"`
Image string `json:"image"`
Commit string `json:"commit,omitempty"`
StartedAt time.Time `json:"started_at"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
Error string `json:"error,omitempty"`
}
FailureContextDeploy is the failed deploy attempt, when there is one.
type FailureContextLine ¶ added in v0.2.0
type FailureContextLine struct {
Timestamp time.Time `json:"timestamp"`
Stream string `json:"stream"`
Message string `json:"message"`
Level string `json:"level,omitempty"`
}
FailureContextLine is one log line of a failure context.
type FailureContextResource ¶ added in v0.2.0
type FailureContextResource struct {
State string `json:"state"`
Since *time.Time `json:"since,omitempty"`
Restarts int `json:"restarts_in_window"`
WindowSeconds float64 `json:"window_seconds"`
ContainerID string `json:"container_id,omitempty"`
Deploy *FailureContextDeploy `json:"deploy,omitempty"`
Lines []FailureContextLine `json:"lines"`
TotalLines int `json:"total_lines"`
LinesSource string `json:"lines_source,omitempty"`
}
FailureContextResource mirrors internal/api's failureContextResponse.
type FailureSimulation ¶
type FailureSimulation struct {
Zone string `json:"zone,omitempty"`
Node string `json:"node,omitempty"`
Lost []string `json:"lost_node_ids"`
Count int `json:"displaced"`
Placed []SimulatedPlacement `json:"placed"`
Unplaced int `json:"unplaced"`
Zones []ZoneSummary `json:"zones"`
}
FailureSimulation is the body of GET /api/v1/nodes/failure-simulation.
type FeatureFlagRequest ¶
type FeatureFlagRequest struct {
Key string `json:"key,omitempty"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
Enabled bool `json:"enabled"`
RolloutPercentage int `json:"rollout_percentage"`
}
FeatureFlagRequest mirrors the fields internal/api's featureFlagResource actually reads from a create/update request body. Key is only read on create; an update ignores it (ID and ServiceName always come from the URL, same as ScheduledTaskRequest above).
type FeatureFlagResource ¶
type FeatureFlagResource struct {
ID string `json:"id,omitempty"`
Key string `json:"key"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
ServiceName string `json:"service_name,omitempty"`
Enabled bool `json:"enabled"`
RolloutPercentage int `json:"rollout_percentage"`
CreatedAt time.Time `json:"created_at,omitempty"`
UpdatedAt time.Time `json:"updated_at,omitempty"`
}
FeatureFlagResource mirrors internal/api's featureFlagResource (internal/api/feature_flags.go). Key is globally unique across the whole platform, not just within ServiceName: see that file's own migration comment for why.
type FirewallEdgeAttack ¶
type FirewallEdgeAttack struct {
Active bool `json:"active"`
Until string `json:"until,omitempty"`
Challenge bool `json:"challenge"`
}
FirewallEdgeAttack is the attack mode state.
type FirewallEdgeAuditEntry ¶
type FirewallEdgeAuditEntry struct {
ID string `json:"id"`
ActorName string `json:"actor_name"`
ActorType string `json:"actor_type"`
Action string `json:"action"`
CreatedAt string `json:"created_at"`
Detail json.RawMessage `json:"detail,omitempty"`
}
FirewallEdgeAuditEntry is one firewall change event.
type FirewallEdgeBan ¶
type FirewallEdgeBan struct {
IP string `json:"ip"`
Reason string `json:"reason"`
Started string `json:"started"`
Ends string `json:"ends"`
Hits uint64 `json:"hits"`
}
FirewallEdgeBan is one automatic temporary ban.
type FirewallEdgeHits ¶
type FirewallEdgeHits struct {
Total uint64 `json:"total"`
LastHitAt string `json:"last_hit_at,omitempty"`
Sparkline []uint32 `json:"sparkline"`
}
FirewallEdgeHits are one rule's counters since the process started.
type FirewallEdgeIPEntry ¶
type FirewallEdgeIPEntry struct {
IP string `json:"ip"`
Scope string `json:"scope,omitempty"`
Note string `json:"note,omitempty"`
}
FirewallEdgeIPEntry is the body of the block and allow calls.
type FirewallEdgeRule ¶
type FirewallEdgeRule struct {
edgefw.Rule
Hits FirewallEdgeHits `json:"hits"`
}
FirewallEdgeRule is a rule with its hit counters.
type FirewallEdgeSettings ¶
type FirewallEdgeSettings struct {
edgefw.Settings
DefaultAIBotAgents []string `json:"default_ai_bot_agents"`
MaxAIBotAgents int `json:"max_ai_bot_agents"`
}
FirewallEdgeSettings is GET/PUT .../firewall/edge/settings.
type FirewallEdgeStatus ¶
type FirewallEdgeStatus struct {
Active bool `json:"active"`
Attack FirewallEdgeAttack `json:"attack_mode"`
RulesTotal int `json:"rules_total"`
RulesEnabled int `json:"rules_enabled"`
BotMode edgefw.Mode `json:"bot_mode"`
AIBotMode edgefw.Mode `json:"ai_bot_mode"`
BansEnabled bool `json:"bans_enabled"`
Bans int `json:"bans"`
GeoActive bool `json:"geo_active"`
Range string `json:"range"`
Totals map[string]uint64 `json:"totals"`
Reasons []edgefw.ReasonCountRow `json:"reasons"`
Suggestion struct {
Suggested bool `json:"suggested"`
PerMinute int `json:"per_minute"`
Threshold int `json:"threshold"`
WindowMins int `json:"window_minutes"`
} `json:"attack_suggestion"`
Retention struct {
ChartHours int `json:"chart_hours"`
TopMinutes int `json:"top_minutes"`
InMemoryOnly bool `json:"in_memory_only"`
TopCapacity int `json:"top_capacity"`
BanDuration string `json:"ban_duration"`
BanStrikes int `json:"ban_strikes"`
BanWindow string `json:"ban_window"`
} `json:"retention"`
}
FirewallEdgeStatus is GET .../firewall/edge/status.
type FirewallEdgeTopRow ¶
type FirewallEdgeTopRow struct {
Key string `json:"key"`
Count uint64 `json:"count"`
Sparkline []uint32 `json:"sparkline"`
}
FirewallEdgeTopRow is one approximate top-N entry.
type FirewallEdgeTraffic ¶
type FirewallEdgeTraffic struct {
WindowMinutes int `json:"window_minutes"`
Approximate bool `json:"approximate"`
Tables map[string][]FirewallEdgeTopRow `json:"tables"`
}
FirewallEdgeTraffic is GET .../firewall/edge/traffic.
type FirewallRuleResource ¶ added in v0.2.0
type FirewallRuleResource struct {
ID string `json:"id"`
NodeID string `json:"node_id"`
Port int `json:"port"`
Protocol string `json:"protocol"`
SourceCIDR string `json:"source_cidr,omitempty"`
Action string `json:"action"`
Label string `json:"label,omitempty"`
CreatedAt string `json:"created_at"`
}
FirewallRuleResource mirrors internal/api's firewallRuleResource.
type Fix ¶
type Fix struct {
ID string `json:"id"`
CheckID string `json:"check_id"`
Subject string `json:"subject"`
Title string `json:"title"`
Why string `json:"why"`
Risk string `json:"risk"`
State string `json:"state"`
Kind string `json:"kind"`
Failing bool `json:"failing"`
Detail string `json:"detail"`
Reason string `json:"reason,omitempty"`
Blocked string `json:"blocked,omitempty"`
Command string `json:"command,omitempty"`
Changes []FixChange `json:"changes"`
Attempts []FixAttempt `json:"attempts"`
}
Fix is a fix as GET /api/v1/fixes returns it.
type FixAttempt ¶
type FixAttempt struct {
Outcome string `json:"outcome"`
Detail string `json:"detail"`
At string `json:"at"`
Actor string `json:"actor"`
}
FixAttempt is one recorded apply or re-check.
type FixChange ¶
type FixChange struct {
Label string `json:"label"`
Detail string `json:"detail,omitempty"`
Bytes int64 `json:"bytes,omitempty"`
}
FixChange is one thing a fix would do.
type FixResult ¶
type FixResult struct {
FixID string `json:"fix_id"`
Outcome string `json:"outcome"`
Detail string `json:"detail"`
View Fix `json:"view"`
}
FixResult is POST /api/v1/fixes/{id}/apply's body.
type FleetMaintenanceEntry ¶
type FleetMaintenanceEntry struct {
App string `json:"app"`
DomainMaintenanceResource
ElapsedSeconds int64 `json:"elapsed_seconds"`
}
FleetMaintenanceEntry is one domain in GET /api/v1/maintenance/domains.
type FleetMaintenanceResource ¶
type FleetMaintenanceResource struct {
Items []FleetMaintenanceEntry `json:"items"`
MaxDurationSeconds int64 `json:"max_duration_seconds"`
AttentionAfterSeconds int64 `json:"attention_after_seconds"`
}
FleetMaintenanceResource is GET /api/v1/maintenance/domains.
type FleetResourceUsageResource ¶ added in v0.2.0
type FleetResourceUsageResource struct {
Nodes []NodeResourceUsageResource `json:"nodes"`
Fleet FleetResourceUsageRollup `json:"fleet"`
}
FleetResourceUsageResource mirrors internal/api's fleetResourceUsageResponse: one row per node plus the fleet-wide rollup, GET /api/v1/nodes/resource-usage's full body.
type FleetResourceUsageRollup ¶ added in v0.2.0
type FleetResourceUsageRollup struct {
NodeCount int `json:"node_count"`
TotalCPUPercent *float64 `json:"total_cpu_percent,omitempty"`
TotalMemoryUsageBytes *float64 `json:"total_memory_usage_bytes,omitempty"`
TotalMemoryBytes *float64 `json:"total_memory_bytes,omitempty"`
MemoryUsedPercent *float64 `json:"memory_used_percent,omitempty"`
NodesWithMemoryCapacity int `json:"nodes_with_memory_capacity"`
TotalDiskUsedBytes *float64 `json:"total_disk_used_bytes,omitempty"`
TotalDiskBytes *float64 `json:"total_disk_bytes,omitempty"`
DiskUsedPercent *float64 `json:"disk_used_percent,omitempty"`
NodesWithDiskCapacity int `json:"nodes_with_disk_capacity"`
}
FleetResourceUsageRollup mirrors internal/api's fleetResourceUsageRollup: fleet-wide sums, with *Percent fields only computed from nodes that actually reported a capacity figure (see NodesWithMemoryCapacity/NodesWithDiskCapacity).
type Form ¶
type Form struct {
ID string `json:"id"`
App string `json:"app"`
Name string `json:"name"`
RedirectURL string `json:"redirect_url"`
HoneypotField string `json:"honeypot_field"`
NotifyChannelIDs []string `json:"notify_channel_ids"`
EndpointPath string `json:"endpoint_path"`
Endpoint string `json:"endpoint"`
Snippet string `json:"snippet"`
EndpointSource string `json:"endpoint_source"`
Submissions int `json:"submissions"`
SpamSubmissions int `json:"spam_submissions"`
CreatedAt time.Time `json:"created_at"`
}
Form is one capture endpoint of an app.
type FormRequest ¶
type FormRequest struct {
Name string `json:"name,omitempty"`
RedirectURL *string `json:"redirect_url,omitempty"`
HoneypotField *string `json:"honeypot_field,omitempty"`
NotifyChannelIDs []string `json:"notify_channel_ids,omitempty"`
}
FormRequest creates or updates a form; nil pointers leave a field as it is.
type FormSubmission ¶
type FormSubmission struct {
ID int64 `json:"id"`
Fields map[string]string `json:"fields"`
Spam bool `json:"spam"`
Test bool `json:"test,omitempty"`
SpamReason string `json:"spam_reason,omitempty"`
IPHash string `json:"ip_hash,omitempty"`
CreatedAt time.Time `json:"created_at"`
}
FormSubmission is one stored post.
type FormSubmissionFilter ¶
FormSubmissionFilter narrows an inbox listing or export; Spam is "", "true" or "false".
type FormSubmissionsPage ¶
type FormSubmissionsPage struct {
Submissions []FormSubmission `json:"submissions"`
NextBefore int64 `json:"next_before"`
}
FormSubmissionsPage is one page of an inbox; NextBefore is 0 on the last page.
type FormTestResult ¶
type FormTestResult struct {
SubmissionID int64 `json:"submission_id"`
Spam bool `json:"spam"`
SpamReason string `json:"spam_reason,omitempty"`
Fields map[string]string `json:"fields"`
}
FormTestResult is the outcome of a test submission.
type ForwardersPolicyResource ¶ added in v0.2.0
type ForwardersPolicyResource struct {
Domain string `json:"domain"`
Kind string `json:"kind"`
Configured bool `json:"configured"`
Spec trafficpolicy.Forwarders `json:"spec"`
UpdatedAt string `json:"updated_at,omitempty"`
}
ForwardersPolicyResource is GET/PUT .../domains/{domain}/forwarders.
type FreeSpaceResult ¶
type FreeSpaceResult struct {
ReclaimedBytes int64 `json:"reclaimed_bytes"`
Disk DiskResilience `json:"disk"`
}
FreeSpaceResult mirrors POST /api/v1/resilience/disk/free-space.
type FreezeWindowResource ¶ added in v0.2.0
type FreezeWindowResource struct {
ID string `json:"id,omitempty"`
Cron string `json:"cron"`
Duration string `json:"duration"`
Timezone string `json:"timezone,omitempty"`
Reason string `json:"reason,omitempty"`
Scope string `json:"scope,omitempty"`
}
FreezeWindowResource mirrors internal/api's freezeWindowResource.
type FunctionInvocation ¶
type FunctionInvocation struct {
ID string `json:"id"`
Time time.Time `json:"time"`
Method string `json:"method"`
Path string `json:"path"`
Status int `json:"status"`
DurationMs float64 `json:"duration_ms"`
ColdStart bool `json:"cold_start"`
BytesIn int64 `json:"bytes_in"`
BytesOut int64 `json:"bytes_out"`
Replayable bool `json:"replayable"`
}
FunctionInvocation is one recorded call of a function.
type FunctionInvocations ¶
type FunctionInvocations struct {
Invocations []FunctionInvocation `json:"invocations"`
Capture bool `json:"capture"`
}
FunctionInvocations is the GET /api/v1/functions/{name}/invocations response.
type FunctionInvokeRequest ¶
type FunctionInvokeRequest struct {
Method string `json:"method"`
Path string `json:"path"`
Headers map[string]string `json:"headers,omitempty"`
Body string `json:"body,omitempty"`
}
FunctionInvokeRequest is one test call sent through POST /api/v1/functions/{name}/invoke.
type FunctionInvokeResult ¶
type FunctionInvokeResult struct {
RequestID string `json:"request_id"`
Status int `json:"status"`
Headers map[string][]string `json:"headers"`
Body string `json:"body"`
BodyTruncated bool `json:"body_truncated"`
DurationMs float64 `json:"duration_ms"`
ColdStart bool `json:"cold_start"`
InputStored bool `json:"input_stored"`
}
FunctionInvokeResult is the function's answer to a test call or a replay.
type FunctionKVKey ¶
type FunctionKVKey struct {
Key string `json:"key"`
Size int `json:"size"`
Preview string `json:"preview,omitempty"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
UpdatedAt time.Time `json:"updated_at"`
}
FunctionKVKey is one key in a function's store; Preview is truncated.
type FunctionKVList ¶
type FunctionKVList struct {
Enabled bool `json:"enabled"`
Keys []FunctionKVKey `json:"keys"`
Count int `json:"count"`
Bytes int64 `json:"bytes"`
Limits struct {
MaxKeyBytes int `json:"max_key_bytes"`
MaxValueBytes int `json:"max_value_bytes"`
MaxKeys int `json:"max_keys"`
MaxTotalBytes int64 `json:"max_total_bytes"`
MaxTTLSeconds int `json:"max_ttl_seconds"`
} `json:"limits"`
}
FunctionKVList is the GET /api/v1/functions/{name}/kv body.
type FunctionKVValue ¶
type FunctionKVValue struct {
Key string `json:"key"`
Value string `json:"value"`
Size int `json:"size"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
}
FunctionKVValue is one full value.
type FunctionResource ¶
type FunctionResource struct {
Name string `json:"name"`
Image string `json:"image"`
Port int `json:"port"`
IdleMinutes int `json:"idle_minutes"`
Sleeping bool `json:"sleeping"`
URL string `json:"url,omitempty"`
Invocations float64 `json:"invocations"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
P95Ms float64 `json:"p95_ms"`
}
FunctionResource mirrors one entry of GET /api/v1/functions.
type FunctionRoute ¶
type FunctionRoute struct {
Domain string `json:"domain"`
Path string `json:"path"`
StripPrefix bool `json:"strip_prefix"`
}
FunctionRoute is one path a function answers on at a domain.
type FunctionRoutes ¶
type FunctionRoutes struct {
Routes []FunctionRoute `json:"routes"`
}
FunctionRoutes is the response of the function route endpoints.
type FunctionRuntime ¶
FunctionRuntime is one starter runtime from GET /api/v1/functions/runtimes.
type FunctionRuntimes ¶
type FunctionRuntimes struct {
Runtimes []FunctionRuntime `json:"runtimes"`
Port int `json:"port"`
}
FunctionRuntimes is the GET /api/v1/functions/runtimes response.
type FunctionSchedule ¶
type FunctionSchedule struct {
ID string `json:"id"`
Name string `json:"name"`
Schedule string `json:"schedule"`
Timezone string `json:"timezone,omitempty"`
Enabled bool `json:"enabled"`
}
FunctionSchedule is an http-mode scheduled job that calls the function.
type FunctionSettings ¶
type FunctionSettings struct {
Name string `json:"name"`
Port int `json:"port"`
IdleMinutes int `json:"idle_minutes"`
MemoryBytes int64 `json:"memory_bytes"`
NanoCPUs int64 `json:"nano_cpus"`
RequestTimeoutSeconds int `json:"request_timeout_seconds"`
MaxConcurrency int `json:"max_concurrency"`
EffectiveTimeoutSeconds int `json:"effective_timeout_seconds"`
EffectiveConcurrency int `json:"effective_concurrency"`
}
FunctionSettings is the GET and PUT /api/v1/functions/{name}/settings body.
type FunctionSettingsUpdate ¶
type FunctionSettingsUpdate struct {
RequestTimeoutSeconds *int `json:"request_timeout_seconds,omitempty"`
MaxConcurrency *int `json:"max_concurrency,omitempty"`
}
FunctionSettingsUpdate sets the limits it carries; a nil field is left as it is and 0 restores the server default.
type FunctionTriggers ¶
type FunctionTriggers struct {
Function string `json:"function"`
Webhook *FunctionWebhook `json:"webhook"`
Schedules []FunctionSchedule `json:"schedules"`
Queue map[string]int `json:"queue"`
}
FunctionTriggers is the GET /api/v1/functions/{name}/triggers response.
type FunctionVersion ¶
type FunctionVersion struct {
DeployID string `json:"deploy_id"`
Image string `json:"image"`
CommitSHA string `json:"commit_sha,omitempty"`
Status string `json:"status"`
StartedAt time.Time `json:"started_at"`
Live bool `json:"live"`
Rollbackable bool `json:"rollbackable"`
}
FunctionVersion is one deploy of a function.
type FunctionWebhook ¶
type FunctionWebhook struct {
URL string `json:"url"`
Path string `json:"path"`
ReplayWindowSeconds int `json:"replay_window_seconds"`
CreatedAt time.Time `json:"created_at"`
RotatedAt *time.Time `json:"rotated_at,omitempty"`
Secret string `json:"secret,omitempty"`
}
FunctionWebhook is a function's signed webhook trigger. Secret is set only when one was just generated.
type FunctionsList ¶
type FunctionsList struct {
WindowSeconds float64 `json:"window_seconds"`
Functions []FunctionResource `json:"functions"`
}
FunctionsList is the GET /api/v1/functions response.
type GPUDeviceResource ¶ added in v0.2.0
type GPUDeviceResource struct {
Index int `json:"index"`
UUID string `json:"uuid"`
Name string `json:"name"`
VRAMTotalMiB int64 `json:"vram_total_mib"`
VRAMUsedMiB int64 `json:"vram_used_mib"`
UtilizationPercent int `json:"utilization_percent"`
}
GPUDeviceResource mirrors internal/api's gpuDeviceResource.
type GPUNodeResource ¶ added in v0.2.0
type GPUNodeResource struct {
NodeID string `json:"node_id"`
Name string `json:"name"`
IsLocal bool `json:"is_local"`
Present bool `json:"present"`
DriverVersion string `json:"driver_version,omitempty"`
RuntimeInstalled bool `json:"runtime_installed"`
GPUCount int `json:"gpu_count"`
TotalVRAMMiB int64 `json:"total_vram_mib"`
UsedVRAMMiB int64 `json:"used_vram_mib"`
ModelCount int `json:"model_count"`
ReservedGPUs int `json:"reserved_gpus"`
FreeGPUs int `json:"free_gpus"`
Reservations []string `json:"reservations"`
Schedulable bool `json:"schedulable"`
Hint string `json:"hint,omitempty"`
Devices []GPUDeviceResource `json:"devices"`
UpdatedAt time.Time `json:"updated_at"`
}
GPUNodeResource mirrors internal/api's gpuNodeResource.
type GateEventResource ¶ added in v0.2.0
type GateEventResource struct {
Phase string `json:"phase"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
Message string `json:"message"`
Container string `json:"container,omitempty"`
At time.Time `json:"at"`
}
GateEventResource is one step of a deploy's gate timeline.
type GeoIPLookupResource ¶ added in v0.2.0
type GeoIPLookupResource struct {
Status GeoStatus `json:"status"`
IP string `json:"ip,omitempty"`
Country string `json:"country,omitempty"`
Source string `json:"source,omitempty"`
Private bool `json:"private,omitempty"`
Note string `json:"note,omitempty"`
}
GeoIPLookupResource is GET /api/v1/system/geoip.
type GeoPolicyResource ¶ added in v0.2.0
type GeoPolicyResource struct {
Domain string `json:"domain"`
Kind string `json:"kind"`
Configured bool `json:"configured"`
Spec *trafficpolicy.Geo `json:"spec"`
UpdatedAt string `json:"updated_at,omitempty"`
}
GeoPolicyResource is GET/PUT .../domains/{domain}/geo. Spec is nil when no geo rule is configured.
type GeoStatus ¶ added in v0.2.0
type GeoStatus struct {
Active bool `json:"active"`
Sources []string `json:"sources"`
Header string `json:"header,omitempty"`
HeaderNeeds string `json:"header_needs,omitempty"`
DBPath string `json:"db_path,omitempty"`
DBType string `json:"db_type,omitempty"`
DBBuildEpoch uint `json:"db_build_epoch,omitempty"`
Error string `json:"error,omitempty"`
}
GeoStatus mirrors the ingress's country source report.
type GetCertRequest ¶
type GetCertRequest struct {
Email string `json:"email,omitempty"`
Staging bool `json:"staging"`
Acknowledge []string `json:"acknowledge,omitempty"`
}
GetCertRequest is POST /api/v1/domains/{domain}/cert's body.
type GitAccessCheck ¶
type GitAccessCheck struct {
ID string `json:"id"`
Status string `json:"status"`
Detail string `json:"detail"`
}
GitAccessCheck is one step of a git access validation.
type GitAccessFix ¶
type GitAccessFix struct {
Kind string `json:"kind"`
Code string `json:"code"`
Hint string `json:"hint"`
Link string `json:"link,omitempty"`
}
GitAccessFix is the typed next step for a failed validation.
type GitAccessResult ¶
type GitAccessResult struct {
OK bool `json:"ok"`
Credential string `json:"credential,omitempty"`
Branch string `json:"branch,omitempty"`
HeadSHA string `json:"head_sha,omitempty"`
Checks []GitAccessCheck `json:"checks"`
Fix *GitAccessFix `json:"fix,omitempty"`
}
GitAccessResult is the result of validating repo or provider access.
type GitAppBranchResource ¶ added in v0.2.0
GitAppBranchResource mirrors the identical branch wire shape every git provider App integration returns: internal/api's gitHubAppBranchResource, gitLabAppBranchResource, and bitbucketAppBranchResource are structurally the same two fields, so this client uses one type for all three.
type GitBuildDetection ¶ added in v0.2.0
type GitBuildDetection struct {
Branch string `json:"branch"`
LooksLikeMonorepo bool `json:"looks_like_monorepo"`
RootHasApp bool `json:"root_has_app"`
Tools []string `json:"tools"`
Dockerfiles []string `json:"dockerfiles"`
ComposeFiles []string `json:"compose_files"`
Suggestions []GitBuildSuggestion `json:"suggestions"`
Truncated bool `json:"truncated"`
NeedsBuildSettings bool `json:"needs_build_settings"`
Packages []WorkspacePackage `json:"packages"`
// StaticBuild prefills a static build when the repository root is a known static-site framework.
StaticBuild *StaticBuildSuggestion `json:"static_build,omitempty"`
}
GitBuildDetection mirrors internal/api's detectGitSourceResponse.
type GitBuildSuggestion ¶ added in v0.2.0
type GitBuildSuggestion struct {
BuildType string `json:"build_type"`
DockerfilePath string `json:"dockerfile_path,omitempty"`
BaseDirectory string `json:"base_directory,omitempty"`
Reason string `json:"reason"`
ReasonCode string `json:"reason_code"`
Recommended bool `json:"recommended"`
}
GitBuildSuggestion mirrors internal/repolayout's Suggestion.
type GitCommit ¶ added in v0.2.0
type GitCommit struct {
SHA string `json:"sha"`
Message string `json:"message"`
Author string `json:"author"`
AuthoredAt time.Time `json:"authored_at"`
URL string `json:"url,omitempty"`
DeployStatus string `json:"deploy_status,omitempty"`
DeployID string `json:"deploy_id,omitempty"`
}
GitCommit is one commit of the connected branch with its deploy outcome.
type GitCommitSummary ¶
type GitCommitSummary struct {
SHA string `json:"sha"`
Message string `json:"message"`
Author string `json:"author"`
AuthoredAt time.Time `json:"authored_at"`
URL string `json:"url,omitempty"`
}
GitCommitSummary is one commit listed between two deploys.
type GitConnectionResource ¶
type GitConnectionResource struct {
Status string `json:"status"`
Detail string `json:"detail,omitempty"`
NextCheckAt *time.Time `json:"next_check_at,omitempty"`
}
GitConnectionResource mirrors internal/api's gitConnResource.
type GitDeploySettings ¶ added in v0.2.0
type GitDeploySettings struct {
DeployPaths []string `json:"deploy_paths"`
DeployPathsIgnore []string `json:"deploy_paths_ignore"`
ReportStatus bool `json:"report_status"`
}
GitDeploySettings mirrors internal/api's gitDeploySettings.
type GitDisconnectResource ¶
type GitDisconnectResource struct {
Disconnected bool `json:"disconnected"`
TokenRevoked bool `json:"token_revoked"`
Note string `json:"note"`
AffectedSources []string `json:"affected_sources,omitempty"`
}
GitDisconnectResource mirrors internal/api's gitDisconnectResource.
type GitHubAppInstallationListResource ¶ added in v0.2.0
type GitHubAppInstallationListResource struct {
Installations []GitHubAppInstallationResource `json:"installations"`
AddOrgURL string `json:"add_org_url,omitempty"`
AppPublic *bool `json:"app_public,omitempty"`
MakePublicURL string `json:"make_public_url,omitempty"`
}
GitHubAppInstallationListResource mirrors internal/api's gitHubAppInstallationListResource: GET /api/v1/github-app/installations's response. AddOrgURL is empty when the connection predates migrations/0282's slug column and hasn't been re-registered since.
type GitHubAppInstallationResource ¶ added in v0.2.0
type GitHubAppInstallationResource struct {
ID int64 `json:"id"`
InstallationID int64 `json:"installation_id"`
AccountLogin string `json:"account_login"`
AccountType string `json:"account_type"`
ConnectedAt string `json:"connected_at"`
}
GitHubAppInstallationResource mirrors internal/api's gitHubAppInstallationResource: one entry of GET /api/v1/github-app/installations.
type GitHubAppRepoListErrResource ¶ added in v0.2.0
type GitHubAppRepoListErrResource struct {
AccountLogin string `json:"account_login"`
Error string `json:"error"`
}
GitHubAppRepoListErrResource is one entry of GitHubAppRepoListResource.Errors.
type GitHubAppRepoListResource ¶ added in v0.2.0
type GitHubAppRepoListResource struct {
Repos []GitHubAppRepoResource `json:"repos"`
Errors []GitHubAppRepoListErrResource `json:"errors,omitempty"`
}
GitHubAppRepoListResource mirrors internal/api's gitHubAppRepoListResource: GET /api/v1/github-app/repos's response, repos from every connected installation plus one error per installation that failed to list.
type GitHubAppRepoResource ¶ added in v0.2.0
type GitHubAppRepoResource struct {
FullName string `json:"full_name"`
Name string `json:"name"`
OwnerLogin string `json:"owner_login"`
Private bool `json:"private"`
DefaultBranch string `json:"default_branch"`
CloneURL string `json:"clone_url"`
// AccountType is "user" or "organization" (migrations/0282): which
// connected installation this repo came from.
AccountType string `json:"account_type"`
}
GitHubAppRepoResource mirrors internal/api's gitHubAppRepoResource: one entry of GET /api/v1/github-app/repos.
type GitHubAppStatusResource ¶ added in v0.2.0
type GitHubAppStatusResource struct {
Connected bool `json:"connected"`
AppID int64 `json:"app_id,omitempty"`
ClientID string `json:"client_id,omitempty"`
InstanceURL string `json:"instance_url,omitempty"`
Installed bool `json:"installed"`
InstallationStatus string `json:"installation_status,omitempty"`
AccountLogin string `json:"account_login,omitempty"`
CreatedAt string `json:"created_at,omitempty"`
BaseURL string `json:"base_url,omitempty"`
}
GitHubAppStatusResource mirrors internal/api's gitHubAppStatusResource: GET /api/v1/github-app's response. No secret fields ever appear here.
type GitPollStatusResource ¶
type GitPollStatusResource struct {
Enabled bool `json:"enabled"`
LastPolledAt *time.Time `json:"last_polled_at,omitempty"`
LastWebhookAt *time.Time `json:"last_webhook_at,omitempty"`
LastSeenHead string `json:"last_seen_head,omitempty"`
Error string `json:"error,omitempty"`
}
GitPollStatusResource mirrors internal/api's gitPollStatusResource.
type GitProviderConnectionResource ¶
type GitProviderConnectionResource struct {
ID string `json:"id"`
Provider string `json:"provider"`
Label string `json:"label"`
Host string `json:"host"`
InstanceURL string `json:"instance_url"`
ClientID string `json:"client_id"`
AccountID string `json:"account_id,omitempty"`
AccountName string `json:"account_name,omitempty"`
Scopes string `json:"scopes,omitempty"`
IsDefault bool `json:"is_default"`
Authorized bool `json:"authorized"`
CreatedBy string `json:"created_by,omitempty"`
CreatedAt string `json:"created_at"`
SourceCount int `json:"source_count"`
Connection GitConnectionResource `json:"connection"`
AuthorizePath string `json:"authorize_path"`
AuthMethod string `json:"auth_method,omitempty"`
}
GitProviderConnectionResource mirrors internal/api's gitConnectionResource: one GitLab, Bitbucket or Gitea account. It carries no credential.
type GitProviderResource ¶ added in v0.2.0
type GitProviderResource struct {
Provider string `json:"provider"`
Connected bool `json:"connected"`
CanListBranches bool `json:"can_list_branches"`
CanRegisterWebhook bool `json:"can_register_webhook"`
CanAuthClone bool `json:"can_auth_clone"`
// Connection is the last known health: ok, needs_reauthorize, revoked or rate_limited.
Connection GitConnectionResource `json:"connection"`
// Connections counts configured connections; Authorized counts those holding a token.
Connections int `json:"connections"`
Authorized int `json:"authorized"`
}
GitProviderResource mirrors internal/api's gitProviderResource: one entry of GET /api/v1/git-providers, a capability summary for one git provider (github, gitlab, bitbucket, gitea).
type GitRemote ¶
type GitRemote struct {
Configured bool `json:"configured"`
URL string `json:"url"`
RemoteName string `json:"remote_name"`
Username string `json:"username"`
Branch string `json:"branch"`
CreatedAt *time.Time `json:"created_at,omitempty"`
RotatedAt *time.Time `json:"rotated_at,omitempty"`
LastPushAt *time.Time `json:"last_push_at,omitempty"`
LastPushCommit string `json:"last_push_commit,omitempty"`
LastPushResult string `json:"last_push_result,omitempty"`
MaxPushBytes int64 `json:"max_push_bytes"`
Token string `json:"token,omitempty"`
AddCommand string `json:"add_command,omitempty"`
}
GitRemote is an app's push deploy remote as the API reports it. Token and AddCommand are set only on the call that issued the token.
type GitRepoConnectionFacet ¶
type GitRepoConnectionFacet struct {
ConnectionID string `json:"connection_id"`
Provider string `json:"provider"`
Label string `json:"label"`
Account string `json:"account,omitempty"`
Loaded int `json:"loaded"`
Failed bool `json:"failed"`
}
GitRepoConnectionFacet is one account behind a repository listing.
type GitRepoListParams ¶
type GitRepoListParams struct {
// Provider is optional: empty merges every connected account of every provider.
Provider string
// Connection narrows the list to one connection id.
Connection string
Search string
Owner string
Archived string
Forks string
Limit int
Offset int
Refresh bool
}
GitRepoListParams narrows and pages ListGitRepos. Archived and Forks take include, exclude or only; empty means include.
type GitRepoListResource ¶
type GitRepoListResource struct {
Provider string `json:"provider"`
Items []GitRepoResource `json:"items"`
Total int `json:"total"`
Loaded int `json:"loaded"`
Limit int `json:"limit"`
Offset int `json:"offset"`
NextOffset *int `json:"next_offset"`
HasMore bool `json:"has_more"`
Truncated bool `json:"truncated"`
Cap int `json:"cap"`
CachedAt time.Time `json:"cached_at"`
Stale bool `json:"stale"`
Refreshing bool `json:"refreshing"`
Owners []GitRepoOwnerCount `json:"owners"`
Errors []GitHubAppRepoListErrResource `json:"errors,omitempty"`
RateLimit *GitRepoRateLimit `json:"rate_limit,omitempty"`
// Connections lists every account the merged list was built from.
Connections []GitRepoConnectionFacet `json:"connections"`
}
GitRepoListResource mirrors internal/api's gitRepoListResource.
type GitRepoOwnerCount ¶
GitRepoOwnerCount is one owner facet of a repository listing.
type GitRepoRateLimit ¶
type GitRepoRateLimit struct {
NextCheckAt time.Time `json:"next_check_at"`
RetryAfterSeconds int `json:"retry_after_seconds"`
}
GitRepoRateLimit says when a rate limited provider may be asked again.
type GitRepoResource ¶
type GitRepoResource struct {
Key string `json:"key"`
FullName string `json:"full_name"`
Name string `json:"name"`
Owner string `json:"owner"`
Private bool `json:"private"`
Archived bool `json:"archived"`
Fork bool `json:"fork"`
DefaultBranch string `json:"default_branch"`
CloneURL string `json:"clone_url"`
WebURL string `json:"web_url,omitempty"`
Language string `json:"language,omitempty"`
PushedAt string `json:"pushed_at,omitempty"`
ProjectID int64 `json:"project_id,omitempty"`
AccountType string `json:"account_type,omitempty"`
// Provider, ConnectionID, ConnectionLabel and Account say which account the row came from.
Provider string `json:"provider,omitempty"`
ConnectionID string `json:"connection_id,omitempty"`
ConnectionLabel string `json:"connection_label,omitempty"`
Account string `json:"account,omitempty"`
}
GitRepoResource mirrors internal/repolist.Repo: one repository in GET /api/v1/git/repos.
type GitSourceAffected ¶
type GitSourceAffected struct {
AppDeploys bool `json:"app_deploys"`
Reason string `json:"reason,omitempty"`
Packages []GitSourceAffectedEntry `json:"packages"`
}
GitSourceAffected mirrors internal/api's affectedResponse.
type GitSourceAffectedEntry ¶
type GitSourceAffectedEntry struct {
Name string `json:"name"`
Dir string `json:"dir"`
Affected bool `json:"affected"`
}
GitSourceAffectedEntry is one workspace package's verdict.
type GitSourceCommits ¶ added in v0.2.0
type GitSourceCommits struct {
Branch string `json:"branch"`
ConnectedBranch string `json:"connected_branch"`
Provider string `json:"provider"`
Head *GitCommit `json:"head,omitempty"`
Commits []GitCommit `json:"commits"`
Branches []string `json:"branches"`
AheadBy *int `json:"ahead_by,omitempty"`
UpToDate bool `json:"up_to_date"`
Suggestions []DeploySuggestion `json:"suggestions"`
Degraded bool `json:"degraded"`
BuildType string `json:"build_type"`
Build struct {
Summary string `json:"summary"`
} `json:"build"`
}
GitSourceCommits mirrors GET /api/v1/apps/{name}/git-source/commits.
type GitSourceResolvedBuild ¶ added in v0.2.0
type GitSourceResolvedBuild struct {
ContextDir string `json:"context_dir"`
DockerfilePath string `json:"dockerfile_path,omitempty"`
Summary string `json:"summary"`
}
GitSourceResolvedBuild mirrors internal/api's gitSourceResolvedBuild.
type GitSourceResource ¶
type GitSourceResource struct {
ServiceName string `json:"service_name"`
RepoURL string `json:"repo_url"`
Branch string `json:"branch"`
BuildType string `json:"build_type"`
BuildPath string `json:"build_path,omitempty"`
// BaseDirectory is the build context, relative to the repository root.
BaseDirectory string `json:"base_directory,omitempty"`
// BuildCommand and PublishDir build a static site before serving it.
BuildCommand string `json:"build_command,omitempty"`
PublishDir string `json:"publish_dir,omitempty"`
// ResolvedBuild states what a deploy builds, in plain terms.
ResolvedBuild GitSourceResolvedBuild `json:"resolved_build"`
// TriggerMode mirrors store.GitSource.TriggerMode: "push" (default)
// or "release", see internal/api's normalizeGitSourceTriggerMode.
TriggerMode string `json:"trigger_mode,omitempty"`
HasToken bool `json:"has_token"`
WebhookURL string `json:"webhook_url"`
// WebhookURLWarning is private_address or no_public_url when WebhookURL cannot be reached by a git host.
WebhookURLWarning string `json:"webhook_url_warning,omitempty"`
// WebhookRegistration is the outcome of registering the webhook on the provider.
WebhookRegistration *GitWebhookRegistrationResource `json:"webhook_registration,omitempty"`
// Poll is the missed-webhook poller's view of the source.
Poll *GitPollStatusResource `json:"poll,omitempty"`
WebhookSecret string `json:"webhook_secret,omitempty"`
PreviewEnabled bool `json:"preview_enabled"`
// PostPRComments mirrors store.GitSource.PostPRComments: the opt-in
// toggle for a preview deploy's GitHub PR comment/commit status, set
// via SetPreviewPostPRComments (preview-settings, same route as
// PreviewEnabled).
PostPRComments bool `json:"post_pr_comments"`
// DeployPaths, DeployPathsIgnore and ReportStatus mirror the store
// fields of the same names, set via SetGitDeploySettings.
DeployPaths []string `json:"deploy_paths"`
DeployPathsIgnore []string `json:"deploy_paths_ignore"`
ReportStatus bool `json:"report_status"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
GitSourceResource mirrors internal/api's gitSourceResource (internal/api/git_sources.go). AdditionalServices/Services (the multi-service fan-out fields) are deliberately not carried here: this client's SetGitSourceRequest only covers the single-service connect flow "apps deploy-spec" already handles for the multi-service case.
type GitTokenDetails ¶
type GitTokenDetails struct {
Scopes []string `json:"scopes,omitempty"`
ScopesKnown bool `json:"scopes_known"`
Missing []string `json:"missing_scopes,omitempty"`
RepoAccess bool `json:"repo_access"`
RepoCount int `json:"repo_count"`
RepoCountCap bool `json:"repo_count_capped,omitempty"`
}
GitTokenDetails mirrors internal/api's gitTokenDetails.
type GitWebhookRegistrationResource ¶
type GitWebhookRegistrationResource struct {
State string `json:"state"`
Error string `json:"error,omitempty"`
ChangedAt *time.Time `json:"changed_at,omitempty"`
}
GitWebhookRegistrationResource mirrors internal/api's gitWebhookRegistrationResource.
type GlobalEnvironmentResource ¶ added in v0.2.0
type GlobalEnvironmentResource struct {
ID string `json:"id"`
ProjectID string `json:"project_id"`
Name string `json:"name"`
Protected bool `json:"protected"`
CreatedAt string `json:"created_at"`
Kind string `json:"kind"`
Scope string `json:"scope"`
SortOrder int `json:"sort_order"`
AppCount int `json:"app_count"`
DatabaseCount int `json:"database_count"`
}
GlobalEnvironmentResource mirrors internal/api's environmentListResource, one row of GET /api/v1/environments.
type GoLiveChecklist ¶
type GoLiveChecklist struct {
App string `json:"app"`
Domain string `json:"domain"`
State string `json:"state"`
Live bool `json:"live"`
Next string `json:"next,omitempty"`
URL string `json:"url,omitempty"`
Steps []ChecklistStep `json:"steps"`
Timeline []ChecklistEvent `json:"timeline"`
CheckedAt time.Time `json:"checked_at"`
}
GoLiveChecklist mirrors golive.Checklist.
type GoLivePlanRequest ¶ added in v0.2.0
type GoLivePlanRequest struct {
Domain string `json:"domain,omitempty"`
Domains []string `json:"domains,omitempty"`
Automation *DomainAutomationOverride `json:"automation,omitempty"`
}
GoLivePlanRequest is the body of POST .../domains/go-live/plan.
type GoLivePlanResponse ¶ added in v0.2.0
type GoLivePlanResponse struct {
Plans []GoLiveResult `json:"plans"`
}
GoLivePlanResponse is the dry run result.
type GoLiveRequest ¶ added in v0.2.0
type GoLiveRequest struct {
Automation *DomainAutomationOverride `json:"automation,omitempty"`
DNS string `json:"dns,omitempty"`
Replace bool `json:"replace,omitempty"`
}
GoLiveRequest is the body of POST .../go-live.
type GoLiveResult ¶ added in v0.2.0
type GoLiveResult struct {
RunID string `json:"run_id,omitempty"`
App string `json:"app"`
Domain string `json:"domain"`
State string `json:"state"`
URL string `json:"url,omitempty"`
Steps []GoLiveStep `json:"steps"`
DNS []DomainDNSResult `json:"dns,omitempty"`
Policy DomainAutomationPolicy `json:"policy"`
Undoable bool `json:"undoable,omitempty"`
CheckedAt string `json:"checked_at"`
}
GoLiveResult mirrors internal/api's goLiveResult.
type GoLiveStep ¶ added in v0.2.0
type GoLiveStep struct {
ID string `json:"id"`
State string `json:"state"`
Detail string `json:"detail,omitempty"`
Provider string `json:"provider,omitempty"`
Record *DNSRecordResource `json:"record,omitempty"`
Resolvers []ResolverResult `json:"resolvers,omitempty"`
Issuer string `json:"issuer,omitempty"`
NotAfter *time.Time `json:"not_after,omitempty"`
URL string `json:"url,omitempty"`
HTTPStatus int `json:"http_status,omitempty"`
}
GoLiveStep mirrors internal/api's goLiveStep.
type GoogleCloudDNSResource ¶
type GoogleCloudDNSResource struct {
Enabled bool `json:"enabled"`
ProjectID string `json:"project_id,omitempty"`
ClientEmail string `json:"client_email,omitempty"`
HasKey bool `json:"has_key"`
}
GoogleCloudDNSResource mirrors internal/api's googleCloudDNSResource. The service account JSON never appears here.
type GoogleCloudDNSTestResult ¶
type GoogleCloudDNSTestResult struct {
OK bool `json:"ok"`
Zones []string `json:"zones,omitempty"`
Error string `json:"error,omitempty"`
}
GoogleCloudDNSTestResult mirrors internal/api's googleCloudDNSTestResponse.
type HSTSHost ¶
type HSTSHost struct {
Host string `json:"host"`
Verified bool `json:"verified"`
Issuer string `json:"issuer,omitempty"`
Error string `json:"error,omitempty"`
}
HSTSHost is one probed public host.
type HSTSStatus ¶
type HSTSStatus struct {
Enabled bool `json:"enabled"`
Ready bool `json:"ready"`
Hosts []HSTSHost `json:"hosts"`
Warnings []string `json:"warnings,omitempty"`
}
HSTSStatus is the HSTS setting plus the trusted-certificate probe.
type HTTPSPreflightPort ¶ added in v0.2.0
HTTPSPreflightPort is one self-dial result; false is a hint, not proof.
type HTTPSStatusResource ¶ added in v0.2.0
type HTTPSStatusResource struct {
State string `json:"state"`
Domain string `json:"domain,omitempty"`
PublicHost string `json:"public_host,omitempty"`
PublicHostSource string `json:"public_host_source,omitempty"`
SuggestedDomain string `json:"suggested_domain,omitempty"`
Staging bool `json:"staging"`
Issuer string `json:"issuer,omitempty"`
NotAfter *time.Time `json:"not_after,omitempty"`
Error string `json:"error,omitempty"`
Hint string `json:"hint,omitempty"`
DashboardURL string `json:"dashboard_url,omitempty"`
DefaultEmail string `json:"default_email,omitempty"`
// Preflight is set on the enable response only.
Preflight []HTTPSPreflightPort `json:"preflight,omitempty"`
}
HTTPSStatusResource mirrors internal/api's httpsStatusResource (GET/POST /api/v1/settings/ingress/https): state is off, pending, issued or failed.
type HeadersPolicyResource ¶ added in v0.2.0
type HeadersPolicyResource struct {
Domain string `json:"domain"`
Kind string `json:"kind"`
Configured bool `json:"configured"`
Spec trafficpolicy.Headers `json:"spec"`
UpdatedAt string `json:"updated_at,omitempty"`
}
HeadersPolicyResource is GET/PUT .../domains/{domain}/headers.
type HealthDiscoveryAttempt ¶ added in v0.2.0
type HealthDiscoveryAttempt struct {
Path string `json:"path"`
Success bool `json:"success"`
Error string `json:"error,omitempty"`
LatencyMs int64 `json:"latency_ms"`
}
HealthDiscoveryAttempt mirrors internal/api's healthDiscoveryAttempt (internal/api/apps_health_discover.go).
type HealthDiscoveryResponse ¶ added in v0.2.0
type HealthDiscoveryResponse struct {
Name string `json:"name"`
Attempts []HealthDiscoveryAttempt `json:"attempts"`
Found string `json:"found,omitempty"`
}
HealthDiscoveryResponse mirrors internal/api's healthDiscoveryResponse. Found is set only when exactly one candidate path succeeded.
type HookRunResource ¶
type HookRunResource struct {
HookType string `json:"hook_type"`
Command string `json:"command"`
ExitCode int `json:"exit_code"`
Success bool `json:"success"`
Output string `json:"output"`
RanAt time.Time `json:"ran_at"`
}
HookRunResource mirrors internal/api's hookRunResource (apps_hooks.go): one pre/post-deploy hook's most recent outcome.
type HostFirewallActionRequest ¶ added in v0.2.0
type HostFirewallActionRequest struct {
DryRun bool `json:"dry_run"`
}
HostFirewallActionRequest mirrors internal/api's hostFirewallActionRequest.
type HostFirewallPort ¶ added in v0.2.0
HostFirewallPort mirrors internal/api's hostFirewallPort.
type HostFirewallResource ¶ added in v0.2.0
type HostFirewallResource struct {
Installed bool `json:"installed"`
Active bool `json:"active"`
DefaultIncoming string `json:"default_incoming,omitempty"`
Required []HostFirewallPort `json:"required"`
Commands []string `json:"commands"`
}
HostFirewallResource mirrors internal/api's hostFirewallResource.
type HubCheck ¶ added in v0.2.0
type HubCheck struct {
ID string `json:"id"`
Severity string `json:"severity"`
Message string `json:"message"`
NextAction string `json:"next_action,omitempty"`
}
HubCheck is one preflight finding.
type HubItem ¶ added in v0.2.0
type HubItem struct {
SourceDB string `json:"source_db"`
SizeBytes int64 `json:"size_bytes"`
Tables int `json:"tables"`
Extensions []string `json:"extensions,omitempty"`
TargetName string `json:"target_name"`
TargetVersion string `json:"target_version"`
Selected bool `json:"selected"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
Preflight HubPreflight `json:"preflight"`
Checked int `json:"checked"`
Mismatched int `json:"mismatched"`
TableCounts []DataCopyTable `json:"table_counts,omitempty"`
}
HubItem is one source database in a session.
type HubLocalSource ¶ added in v0.2.0
type HubLocalSource struct {
Container string `json:"container"`
Image string `json:"image"`
Engine string `json:"engine"`
Running bool `json:"running"`
Network string `json:"network,omitempty"`
Host string `json:"host,omitempty"`
Port int `json:"port,omitempty"`
Problem string `json:"problem,omitempty"`
}
HubLocalSource is a database container on the node, with how to reach it.
type HubPreflight ¶ added in v0.2.0
type HubPreflight struct {
Checks []HubCheck `json:"checks"`
TargetVersion string `json:"target_version"`
RequiredBytes int64 `json:"required_bytes"`
EstimateSeconds int `json:"estimate_seconds"`
Blocked bool `json:"blocked"`
}
HubPreflight is the checks for one database.
type HubSelection ¶ added in v0.2.0
type HubSelection struct {
SourceDB string `json:"source_db"`
Selected *bool `json:"selected,omitempty"`
TargetName *string `json:"target_name,omitempty"`
TargetVersion *string `json:"target_version,omitempty"`
}
HubSelection changes one item's plan. Nil fields are left alone.
type HubSession ¶ added in v0.2.0
type HubSession struct {
ID string `json:"id"`
Engine string `json:"engine"`
Host string `json:"host"`
Port int `json:"port"`
User string `json:"user,omitempty"`
ServerVersion string `json:"server_version"`
FreeBytes int64 `json:"free_bytes"`
Step string `json:"step"`
Container string `json:"source_container,omitempty"`
HelperNetwork string `json:"helper_network,omitempty"`
PasswordHeld bool `json:"password_held"`
Running bool `json:"running"`
Items []HubItem `json:"items"`
Summary HubSummary `json:"summary"`
}
HubSession is a migration session with its plan and progress.
type HubSource ¶ added in v0.2.0
type HubSource struct {
Engine string `json:"engine"`
Host string `json:"host"`
Port int `json:"port,omitempty"`
User string `json:"user,omitempty"`
Password string `json:"password,omitempty"`
TLS bool `json:"tls,omitempty"`
NodeID string `json:"node_id,omitempty"`
// Container names a local database container to read over its own network.
Container string `json:"container,omitempty"`
}
HubSource locates a source server. Password travels in the request body only and is never stored by the control plane.
type HubSummary ¶ added in v0.2.0
type HubSummary struct {
Databases int `json:"databases"`
Selected int `json:"selected"`
Blocked int `json:"blocked"`
Warnings int `json:"warnings"`
Verified int `json:"verified"`
Failed int `json:"failed"`
Copying int `json:"copying"`
TotalBytes int64 `json:"total_bytes"`
RequiredBytes int64 `json:"required_bytes"`
EstimateSeconds int `json:"estimate_seconds"`
CanApply bool `json:"can_apply"`
}
HubSummary is the plan totals.
type IAMAbilityUse ¶
type IAMAbilityUse struct {
Ability string `json:"ability"`
Requests int `json:"requests"`
LastUsedAt string `json:"last_used_at"`
}
IAMAbilityUse mirrors internal/api's abilityUse.
type IAMAnalysis ¶ added in v0.2.0
type IAMAnalysis struct {
Score int `json:"score"`
Counts map[string]int `json:"counts"`
Findings []IAMFinding `json:"findings"`
}
IAMAnalysis mirrors internal/api's analysisResponse.
type IAMEffective ¶ added in v0.2.0
type IAMEffective struct {
Principal IAMPrincipal `json:"principal"`
Policies []IAMPolicyBrief `json:"policies"`
Restricted bool `json:"restricted"`
Abilities []IAMEffectiveAbility `json:"abilities"`
}
IAMEffective mirrors internal/api's effectiveResponse.
type IAMEffectiveAbility ¶ added in v0.2.0
type IAMEffectiveAbility struct {
Ability string `json:"ability"`
Risk string `json:"risk"`
Flat bool `json:"flat"`
All bool `json:"all"`
Allowed int `json:"allowed"`
Total int `json:"total"`
Apps []string `json:"apps"`
Databases []string `json:"databases"`
GrantedByPolicy int `json:"granted_by_policy"`
DeniedByPolicy int `json:"denied_by_policy"`
}
IAMEffectiveAbility mirrors internal/api's effectiveAbility.
type IAMFinding ¶ added in v0.2.0
type IAMFinding struct {
Kind string `json:"kind"`
Severity string `json:"severity"`
PolicyID string `json:"policy_id,omitempty"`
PolicyName string `json:"policy_name,omitempty"`
StatementIndex *int `json:"statement_index,omitempty"`
PrincipalType string `json:"principal_type,omitempty"`
PrincipalID string `json:"principal_id,omitempty"`
Message string `json:"message"`
Fix string `json:"fix"`
}
IAMFinding mirrors internal/api's finding.
type IAMPolicyBrief ¶ added in v0.2.0
IAMPolicyBrief is a policy id and name.
type IAMPrincipal ¶ added in v0.2.0
type IAMPrincipal struct {
PrincipalType string `json:"principal_type"`
PrincipalID string `json:"principal_id"`
Name string `json:"name"`
Detail string `json:"detail,omitempty"`
Abilities []string `json:"abilities"`
Active bool `json:"active"`
PolicyIDs []string `json:"policy_ids"`
}
IAMPrincipal mirrors internal/api's iamPrincipal.
type IAMSimulation ¶ added in v0.2.0
type IAMSimulation struct {
PrincipalType string `json:"principal_type"`
PrincipalID string `json:"principal_id"`
PrincipalName string `json:"principal_name"`
Action string `json:"action"`
Resource string `json:"resource"`
Allowed bool `json:"allowed"`
DecidedBy string `json:"decided_by"`
DecidingStatement *IAMStatementRef `json:"deciding_statement"`
MatchedStatements []IAMStatementRef `json:"matched_statements"`
BaseAbilityGrants bool `json:"base_ability_grants"`
EnvironmentResources []string `json:"environment_resources"`
}
IAMSimulation mirrors internal/api's simulation.
type IAMStatementRef ¶ added in v0.2.0
type IAMStatementRef struct {
PolicyID string `json:"policy_id"`
PolicyName string `json:"policy_name"`
StatementIndex int `json:"statement_index"`
Effect string `json:"effect"`
Action []string `json:"action"`
Resource []string `json:"resource"`
}
IAMStatementRef mirrors internal/api's statementRef.
type IAMSuggestions ¶
type IAMSuggestions struct {
WindowDays int `json:"window_days"`
Tokens []IAMTokenSuggestion `json:"tokens"`
Note string `json:"note"`
}
IAMSuggestions mirrors internal/api's suggestionsResponse.
type IAMTokenSuggestion ¶
type IAMTokenSuggestion struct {
TokenID string `json:"token_id"`
Name string `json:"name"`
AgentName string `json:"agent_name,omitempty"`
Granted []string `json:"granted"`
Used []IAMAbilityUse `json:"used"`
Unused []string `json:"unused"`
SuggestedAbilities []string `json:"suggested_abilities"`
Status string `json:"status"`
Risk string `json:"risk"`
Reason string `json:"reason"`
}
IAMTokenSuggestion mirrors internal/api's tokenSuggestion.
type IaCIssuesError ¶ added in v0.2.0
IaCIssuesError carries the line numbered validation issues of a 422.
func (*IaCIssuesError) Error ¶ added in v0.2.0
func (e *IaCIssuesError) Error() string
Error joins the numbered issues into one message.
type IaCRequest ¶ added in v0.2.0
type IaCRequest struct {
Files []IaCFile `json:"files"`
Source string `json:"source,omitempty"`
Project string `json:"project,omitempty"`
Prune bool `json:"prune,omitempty"`
Vars map[string]string `json:"vars,omitempty"`
Secrets map[string]string `json:"secrets,omitempty"`
NoDeploy bool `json:"no_deploy,omitempty"`
ContinueOnError bool `json:"continue_on_error,omitempty"`
ExpectedPlanHash string `json:"expected_plan_hash,omitempty"`
}
IaCRequest mirrors internal/api's iacRequest, the body of POST /api/v1/apply/plan and /api/v1/apply.
type ImageAppUse ¶
type ImageAppUse struct {
App string `json:"app"`
Role string `json:"role"`
DeployID string `json:"deploy_id,omitempty"`
Source string `json:"source,omitempty"`
CommitSHA string `json:"commit_sha,omitempty"`
Branch string `json:"branch,omitempty"`
At time.Time `json:"at,omitempty"`
}
ImageAppUse says how an app relates to one image.
type ImageAutoUpdateResource ¶ added in v0.2.0
type ImageAutoUpdateResource struct {
Enabled bool `json:"enabled"`
LastCheckedAt *time.Time `json:"last_checked_at,omitempty"`
LastResult string `json:"last_result,omitempty"`
HasWebhook bool `json:"has_webhook"`
}
ImageAutoUpdateResource mirrors internal/api's imageAutoUpdateResource.
type ImageEntry ¶
type ImageEntry struct {
ID string `json:"id"`
Digest string `json:"digest,omitempty"`
Tags []string `json:"tags"`
SizeBytes int64 `json:"size_bytes"`
Containers int64 `json:"containers"`
CreatedAt time.Time `json:"created_at"`
Apps []ImageAppUse `json:"apps"`
Protected bool `json:"protected"`
ProtectReason string `json:"protect_reason,omitempty"`
}
ImageEntry is one image on a node with its owners and retention status.
type ImageGCFailure ¶
ImageGCFailure is one image retention could not remove.
type ImageGCRequest ¶
type ImageGCRequest struct {
Node string `json:"node,omitempty"`
KeepPerApp *int `json:"keep_per_app,omitempty"`
MinAgeHrs *int `json:"min_age_hours,omitempty"`
DryRun bool `json:"dry_run"`
}
ImageGCRequest is the body of POST /api/v1/images/gc.
type ImageGCResource ¶
type ImageGCResource struct {
DryRun bool `json:"dry_run"`
Candidates []ImageEntry `json:"candidates"`
Removed []string `json:"removed"`
Failed []ImageGCFailure `json:"failed"`
ReclaimedBytes int64 `json:"reclaimed_bytes"`
Retention ImageRetention `json:"retention"`
}
ImageGCResource is the result of POST /api/v1/images/gc.
type ImageLayer ¶
type ImageLayer struct {
ID string `json:"id"`
CreatedBy string `json:"created_by"`
SizeBytes int64 `json:"size_bytes"`
CreatedAt time.Time `json:"created_at"`
}
ImageLayer is one layer of an image.
type ImageLayersResource ¶
type ImageLayersResource struct {
Layers []ImageLayer `json:"layers"`
SizeBytes int64 `json:"size_bytes"`
}
ImageLayersResource is GET /api/v1/images/layers.
type ImageListResource ¶
type ImageListResource struct {
Node string `json:"node"`
Images []ImageEntry `json:"images"`
Totals ImageTotals `json:"totals"`
Retention ImageRetention `json:"retention"`
Signatures ImageSignatureStatus `json:"signatures"`
}
ImageListResource is GET /api/v1/images.
type ImageResource ¶ added in v0.2.0
ImageResource mirrors internal/api's imageResource (internal/api/images.go): one element of GET /api/v1/apps/{name}/images's wire shape.
type ImageRetention ¶
type ImageRetention struct {
KeepPerApp int `json:"keep_per_app"`
MinAgeHrs int `json:"min_age_hours"`
}
ImageRetention is the retention policy in effect.
type ImageSignatureIssue ¶
ImageSignatureIssue is one problem the signature policy check found.
type ImageSignaturePolicyRequest ¶
type ImageSignaturePolicyRequest struct {
Ref string `json:"ref,omitempty"`
}
ImageSignaturePolicyRequest is the optional body of POST /api/v1/images/signature-policy/validate.
type ImageSignaturePolicyResource ¶
type ImageSignaturePolicyResource struct {
Mode string `json:"mode"`
RequestedMode string `json:"requested_mode"`
KeyConfigured bool `json:"key_configured"`
KeyFingerprint string `json:"key_fingerprint,omitempty"`
OK bool `json:"ok"`
Issues []ImageSignatureIssue `json:"issues"`
Sample *ImageVerifyResource `json:"sample,omitempty"`
}
ImageSignaturePolicyResource is the result of validating the signature policy.
type ImageSignatureStatus ¶
ImageSignatureStatus is the signature verification setup.
type ImageStatusResource ¶
type ImageStatusResource struct {
Image string `json:"image"`
Source string `json:"source"`
CurrentDigest string `json:"current_digest,omitempty"`
LatestDigest string `json:"latest_digest,omitempty"`
UpdateAvailable bool `json:"update_available"`
ImageArch string `json:"image_arch,omitempty"`
NodeArch string `json:"node_arch,omitempty"`
ArchMismatch bool `json:"arch_mismatch"`
Message string `json:"message,omitempty"`
}
ImageStatusResource is the GET /api/v1/apps/{name}/image-status response.
type ImageTotals ¶
type ImageTotals struct {
Count int `json:"count"`
SizeBytes int64 `json:"size_bytes"`
ReclaimBytes int64 `json:"reclaimable_bytes"`
ProtectedCount int `json:"protected_count"`
}
ImageTotals summarizes an inventory.
type ImageUpdateWebhookResource ¶ added in v0.2.0
ImageUpdateWebhookResource is the freshly minted webhook; Token is shown once.
type ImageVerifyRequest ¶
type ImageVerifyRequest struct {
Node string `json:"node,omitempty"`
ID string `json:"id,omitempty"`
Ref string `json:"ref,omitempty"`
}
ImageVerifyRequest is the body of POST /api/v1/images/verify.
type ImageVerifyResource ¶
ImageVerifyResource is the result of a signature check.
type ImportAnalysis ¶ added in v0.2.0
type ImportAnalysis struct {
RepoURL string `json:"repo_url"`
Branch string `json:"branch"`
Monorepo bool `json:"monorepo"`
AppDirectory string `json:"app_directory,omitempty"`
Name AnalyzeText `json:"name"`
Stack struct {
Runtime string `json:"runtime"`
Framework string `json:"framework,omitempty"`
Evidence string `json:"evidence"`
} `json:"stack"`
Build AnalyzeBuild `json:"build"`
Port struct {
Value int `json:"value"`
Evidence string `json:"evidence"`
} `json:"port"`
Health AnalyzeText `json:"health"`
Memory struct {
Bytes int64 `json:"bytes"`
Evidence string `json:"evidence"`
} `json:"memory"`
Domain AnalyzeText `json:"domain"`
Env []AnalyzeEnvKey `json:"env"`
Databases []AnalyzeDatabase `json:"databases"`
Warnings []ImportWarning `json:"warnings"`
Detection Detection `json:"detection"`
Packages []WorkspacePackage `json:"packages"`
FilesRead int `json:"files_read"`
}
ImportAnalysis mirrors internal/appwizard's Analysis.
type ImportAnalyzeRequest ¶ added in v0.2.0
type ImportAnalyzeRequest struct {
RepoURL string `json:"repo_url"`
Ref string `json:"ref,omitempty"`
BaseDirectory string `json:"base_directory,omitempty"`
Directory string `json:"directory,omitempty"`
DockerfilePath string `json:"dockerfile_path,omitempty"`
BuildType string `json:"build_type,omitempty"`
Name string `json:"name,omitempty"`
Token string `json:"token,omitempty"`
}
ImportAnalyzeRequest is POST /api/v1/imports/analyze's body.
type ImportCutoverAction ¶ added in v0.2.0
type ImportCutoverAction struct {
Kind string `json:"kind"`
Label string `json:"label"`
API string `json:"api,omitempty"`
Value string `json:"value,omitempty"`
}
ImportCutoverAction is the one thing a readiness fix offers.
type ImportCutoverCheck ¶ added in v0.2.0
type ImportCutoverCheck struct {
ID string `json:"id"`
Title string `json:"title"`
Status string `json:"status"`
Detail string `json:"detail,omitempty"`
Fix *ImportCutoverFix `json:"fix,omitempty"`
}
ImportCutoverCheck is one readiness item.
type ImportCutoverDomainPlan ¶ added in v0.2.0
type ImportCutoverDomainPlan struct {
Domain string `json:"domain"`
Method string `json:"method"`
Current []string `json:"current,omitempty"`
Provider string `json:"provider,omitempty"`
Zone string `json:"zone,omitempty"`
Desired *ImportCutoverRecord `json:"desired,omitempty"`
Replace []ImportCutoverRecord `json:"replace,omitempty"`
Message string `json:"message,omitempty"`
}
ImportCutoverDomainPlan is what switching one domain involves.
type ImportCutoverDomainRun ¶ added in v0.2.0
type ImportCutoverDomainRun struct {
Domain string `json:"domain"`
Method string `json:"method"`
Previous []ImportCutoverRecord `json:"previous,omitempty"`
Applied *ImportCutoverRecord `json:"applied,omitempty"`
Manual *ImportCutoverRecord `json:"manual,omitempty"`
ProbeStatus int `json:"probe_status,omitempty"`
Switched bool `json:"switched"`
Restored bool `json:"restored"`
Verified bool `json:"verified"`
VerifyDetail string `json:"verify_detail,omitempty"`
Message string `json:"message,omitempty"`
}
ImportCutoverDomainRun is one domain's progress inside a run.
type ImportCutoverFix ¶ added in v0.2.0
type ImportCutoverFix struct {
Summary string `json:"summary"`
Action *ImportCutoverAction `json:"action,omitempty"`
}
ImportCutoverFix is the remedy for a warning or blocking check.
type ImportCutoverPlan ¶ added in v0.2.0
type ImportCutoverPlan struct {
App string `json:"app"`
Verdict string `json:"verdict"`
Checks []ImportCutoverCheck `json:"checks"`
Domains []ImportCutoverDomainPlan `json:"domains"`
HealthPath string `json:"health_path"`
CheckedAt string `json:"checked_at"`
}
ImportCutoverPlan is the readiness checklist for one staged app.
type ImportCutoverRecord ¶ added in v0.2.0
type ImportCutoverRecord struct {
Name string `json:"name"`
Type string `json:"type"`
Value string `json:"value"`
TTL int `json:"ttl_seconds,omitempty"`
}
ImportCutoverRecord is one DNS record.
type ImportCutoverRun ¶ added in v0.2.0
type ImportCutoverRun struct {
ID string `json:"id"`
App string `json:"app"`
Mode string `json:"mode"`
State string `json:"state"`
Method string `json:"method,omitempty"`
Awaiting string `json:"awaiting,omitempty"`
Domains []ImportCutoverDomainRun `json:"domains"`
Steps []ImportCutoverStep `json:"steps"`
Plan *ImportCutoverPlan `json:"plan,omitempty"`
Error string `json:"error,omitempty"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Rollbackable bool `json:"rollbackable"`
InFlight bool `json:"in_flight"`
}
ImportCutoverRun is one dry run or switch.
func (ImportCutoverRun) Settled ¶ added in v0.2.0
func (r ImportCutoverRun) Settled() bool
Settled reports whether the run needs nothing more from a poller.
type ImportCutoverStart ¶ added in v0.2.0
type ImportCutoverStart struct {
Mode string `json:"mode"`
Confirm string `json:"confirm,omitempty"`
AcceptWarnings bool `json:"accept_warnings,omitempty"`
}
ImportCutoverStart is the body of POST .../cutover/runs.
type ImportCutoverStep ¶ added in v0.2.0
type ImportCutoverStep struct {
Name string `json:"name"`
State string `json:"state"`
Domain string `json:"domain,omitempty"`
Detail string `json:"detail,omitempty"`
DurationMS int64 `json:"duration_ms"`
}
ImportCutoverStep is one timed entry of a run.
type ImportEnvVar ¶ added in v0.2.0
type ImportEnvVar struct {
Key string `json:"key"`
Value string `json:"value,omitempty"`
Required bool `json:"required"`
HasDefault bool `json:"has_default"`
Secret bool `json:"secret"`
Source string `json:"source,omitempty"`
}
ImportEnvVar mirrors internal/importplan's EnvVar.
type ImportPlan ¶ added in v0.2.0
type ImportPlan struct {
Source string `json:"source"`
SuggestedName string `json:"suggested_name"`
Deploy string `json:"deploy"`
RepoURL string `json:"repo_url,omitempty"`
Ref string `json:"ref,omitempty"`
ComposeYAML string `json:"compose_yaml,omitempty"`
Services []ImportService `json:"services"`
DomainSuggestion string `json:"domain_suggestion,omitempty"`
Warnings []ImportWarning `json:"warnings"`
MissingRequiredEnv []string `json:"missing_required_env"`
}
ImportPlan mirrors internal/importplan's DeploymentPlan.
type ImportPlanRequest ¶ added in v0.2.0
type ImportPlanRequest struct {
Text string `json:"text"`
Kind string `json:"kind,omitempty"`
Ref string `json:"ref,omitempty"`
Name string `json:"name,omitempty"`
Port int `json:"port,omitempty"`
Env map[string]string `json:"env,omitempty"`
}
ImportPlanRequest is POST /api/v1/imports/plan's body.
type ImportPort ¶ added in v0.2.0
ImportPort mirrors internal/importplan's PortMapping.
type ImportRepoApplyPackage ¶
type ImportRepoApplyPackage struct {
Package string `json:"package"`
Name string `json:"name"`
Directory string `json:"directory"`
Port int `json:"port,omitempty"`
Env map[string]string `json:"env,omitempty"`
SecretEnvKeys []string `json:"secret_env_keys,omitempty"`
ProjectID string `json:"project_id,omitempty"`
EnvironmentID string `json:"environment_id,omitempty"`
Deploy bool `json:"deploy,omitempty"`
}
ImportRepoApplyPackage is one reviewed package of an apply request.
type ImportRepoApplyRequest ¶
type ImportRepoApplyRequest struct {
RepoURL string `json:"repo_url"`
Branch string `json:"branch,omitempty"`
BaseDirectory string `json:"base_directory,omitempty"`
Packages []ImportRepoApplyPackage `json:"packages"`
DryRun bool `json:"dry_run,omitempty"`
Confirm bool `json:"confirm,omitempty"`
}
ImportRepoApplyRequest is the body of POST /api/v1/imports/repo/apply.
type ImportRepoApplyResponse ¶
type ImportRepoApplyResponse struct {
RepoURL string `json:"repo_url"`
Branch string `json:"branch"`
DryRun bool `json:"dry_run"`
NeedsConfirmation bool `json:"needs_confirmation"`
ConfirmAbove int `json:"confirm_above"`
Counts map[string]int `json:"counts"`
Results []ImportRepoApplyResult `json:"results"`
}
ImportRepoApplyResponse is the per-app report of an apply or dry run.
type ImportRepoApplyResult ¶
type ImportRepoApplyResult struct {
Package string `json:"package"`
Name string `json:"name"`
Directory string `json:"directory"`
Status string `json:"status"`
Code string `json:"code,omitempty"`
Message string `json:"message,omitempty"`
AppID string `json:"app_id,omitempty"`
DeployID string `json:"deploy_id,omitempty"`
DeployError string `json:"deploy_error,omitempty"`
}
ImportRepoApplyResult is the outcome for one package.
type ImportRepoPlanRequest ¶
type ImportRepoPlanRequest struct {
RepoURL string `json:"repo_url"`
Branch string `json:"branch,omitempty"`
BaseDirectory string `json:"base_directory,omitempty"`
}
ImportRepoPlanRequest is the body of POST /api/v1/imports/repo/plan.
type ImportService ¶ added in v0.2.0
type ImportService struct {
Name string `json:"name"`
Image string `json:"image,omitempty"`
Build string `json:"build"`
BuildReason string `json:"build_reason,omitempty"`
Port int `json:"port,omitempty"`
Ports []ImportPort `json:"ports,omitempty"`
Command []string `json:"command,omitempty"`
Entrypoint []string `json:"entrypoint,omitempty"`
HealthPath string `json:"health_path,omitempty"`
Env []ImportEnvVar `json:"env,omitempty"`
Volumes []ImportVolume `json:"volumes,omitempty"`
Restart string `json:"restart,omitempty"`
MemoryBytes int64 `json:"memory_bytes,omitempty"`
NanoCPUs int64 `json:"nano_cpus,omitempty"`
}
ImportService mirrors internal/importplan's ServicePlan.
type ImportVolume ¶ added in v0.2.0
type ImportVolume struct {
Name string `json:"name,omitempty"`
HostPath string `json:"host_path,omitempty"`
ContainerPath string `json:"container_path"`
ReadOnly bool `json:"read_only,omitempty"`
NeedsApproval bool `json:"needs_approval,omitempty"`
}
ImportVolume mirrors internal/importplan's VolumeMount.
type ImportWarning ¶ added in v0.2.0
ImportWarning mirrors internal/importplan's Warning.
type InboxClearRequest ¶
type InboxClearRequest struct {
Action string `json:"action"`
Scope string `json:"scope"`
OlderThanSeconds int64 `json:"older_than_seconds,omitempty"`
DryRun bool `json:"dry_run,omitempty"`
ConfirmCount int `json:"confirm_count,omitempty"`
}
InboxClearRequest selects items for POST /api/v1/inbox/clear.
type InboxClearResult ¶
InboxClearResult mirrors internal/api's inboxClearResource.
type InboxItem ¶
type InboxItem struct {
AlertHistoryEntry
Read bool `json:"read"`
}
InboxItem mirrors internal/api's inboxItemResource.
type InboxPrefs ¶
type InboxPrefs struct {
MinSeverity string `json:"min_severity"`
MutedApps []string `json:"muted_apps"`
DigestEnabled bool `json:"digest_enabled"`
DigestHour int `json:"digest_hour"`
DigestChannelID string `json:"digest_channel_id"`
LastDigestAt *time.Time `json:"last_digest_at,omitempty"`
}
InboxPrefs mirrors internal/api's inboxPrefsResource.
type InboxState ¶
type InboxState struct {
ReadIDs []string `json:"read_ids"`
ArchivedIDs []string `json:"archived_ids"`
}
InboxState mirrors internal/api's inboxStateResource.
type IngressConnectivity ¶ added in v0.2.0
type IngressConnectivity struct {
Host string `json:"host,omitempty"`
HostInferred bool `json:"host_inferred,omitempty"`
Addresses []string `json:"addresses"`
Private bool `json:"private"`
Ports []IngressConnectivityPort `json:"ports"`
HTTP01Possible bool `json:"http01_possible"`
DNSProvider string `json:"dns_provider"`
Guidance string `json:"guidance"`
}
IngressConnectivity mirrors internal/api's ingressConnectivityResource.
type IngressConnectivityPort ¶ added in v0.2.0
type IngressConnectivityPort struct {
Port int `json:"port"`
Address string `json:"address"`
Reachable bool `json:"reachable"`
}
IngressConnectivityPort is one probed ingress port.
type IngressSettingsResource ¶ added in v0.2.0
type IngressSettingsResource struct {
PrimaryDomain string `json:"primary_domain,omitempty"`
ACMEEnabled bool `json:"acme_enabled"`
ACMEEmail string `json:"acme_email,omitempty"`
ACMEDirectoryURL string `json:"acme_directory_url,omitempty"`
HSTSEnabled bool `json:"hsts_enabled"`
// FallbackDomainsEnabled toggles the automatic <app>.<dashed-ip>.sslip.io hostnames.
FallbackDomainsEnabled bool `json:"fallback_domains_enabled"`
// PublicHost and PublicHostSource are read-only (env, detected, disabled, none).
PublicHost string `json:"public_host,omitempty"`
PublicHostSource string `json:"public_host_source,omitempty"`
// PublicHTTPSPort is the port clients use behind a proxy; 0 means the ingress listen port.
PublicHTTPSPort int `json:"public_https_port,omitempty"`
// TLSTerminatedUpstream: a proxy owns TLS, ACME is never attempted here.
TLSTerminatedUpstream bool `json:"tls_terminated_upstream,omitempty"`
// ACMESkippedUpstream and TrustedProxiesMissing are read-only.
ACMESkippedUpstream bool `json:"acme_skipped_upstream,omitempty"`
TrustedProxiesMissing bool `json:"trusted_proxies_missing,omitempty"`
// AppsBaseDomain gives new apps without a domain <app>.<base> and creates
// the DNS record; the DNS fields tune the records Levelrail creates.
AppsBaseDomain string `json:"apps_base_domain,omitempty"`
DNSCNAMETarget string `json:"dns_cname_target,omitempty"`
DNSTTLSeconds int `json:"dns_ttl_seconds,omitempty"`
DNSProxied bool `json:"dns_proxied,omitempty"`
}
IngressSettingsResource mirrors internal/api's ingressSettingsResource (internal/api/ingress_settings.go): the shape of both GET and PUT /api/v1/settings/ingress.
type InstallPluginInput ¶
type InstallPluginInput struct {
Manifest string `json:"manifest,omitempty"`
ManifestURL string `json:"manifest_url,omitempty"`
Signature string `json:"signature,omitempty"`
SignatureURL string `json:"signature_url,omitempty"`
KeyID string `json:"key_id,omitempty"`
ExpectedDigest string `json:"expected_digest,omitempty"`
ConfigJSON string `json:"config_json,omitempty"`
ApproveAbilities []string `json:"approve_abilities,omitempty"`
}
InstallPluginInput is the package an operator submits for install.
type InstanceInfo ¶
type InstanceInfo struct {
InstanceID string `json:"instance_id"`
Name string `json:"name"`
ShortName string `json:"short_name"`
Version string `json:"version"`
Fingerprint string `json:"fingerprint"`
}
InstanceInfo mirrors internal/api's instanceResource, the public server identity.
func FetchInstanceInfo ¶
FetchInstanceInfo reads GET /api/v1/instance. A nil info with a nil error means the server answered 404: it predates server identity.
type IntegrationCatalogEntryResource ¶ added in v0.2.0
type IntegrationCatalogEntryResource struct {
Key string `json:"key"`
Name string `json:"name"`
Description string `json:"description"`
DocsURL string `json:"docs_url"`
EnvVars []IntegrationCatalogEnvVarResource `json:"env_vars"`
Frameworks []string `json:"frameworks,omitempty"`
}
IntegrationCatalogEntryResource mirrors internal/api's integrationCatalogEntry: one internal/integrations.Catalog entry, GET /api/v1/integrations' wire shape.
type IntegrationCatalogEnvVarResource ¶ added in v0.2.0
type IntegrationCatalogEnvVarResource struct {
Name string `json:"name"`
Type string `json:"type"`
Required bool `json:"required"`
Default string `json:"default,omitempty"`
Placeholder string `json:"placeholder,omitempty"`
}
IntegrationCatalogEnvVarResource mirrors internal/api's integrationCatalogEnvVar (internal/api/app_integrations.go).
type Integrity ¶
type Integrity struct {
Status IntegrityStatus `json:"status"`
Pending *IntegrityPending `json:"pending,omitempty"`
Candidates []IntegrityCandidate `json:"candidates"`
}
Integrity is the /api/v1/system/integrity resource.
type IntegrityCandidate ¶
type IntegrityCandidate struct {
Name string `json:"name"`
SizeBytes int64 `json:"size_bytes"`
CreatedAt time.Time `json:"created_at"`
VerifiedAt *time.Time `json:"verified_at,omitempty"`
Verified bool `json:"verified"`
}
IntegrityCandidate is one snapshot that can be restored.
type IntegrityPending ¶
type IntegrityPending struct {
Name string `json:"name"`
SHA256 string `json:"sha256"`
SchemaVersion int `json:"schema_version"`
StagedAt time.Time `json:"staged_at"`
StagedBy string `json:"staged_by,omitempty"`
}
IntegrityPending is a snapshot staged to replace the database at the next boot.
type IntegrityRestore ¶
type IntegrityRestore struct {
Pending IntegrityPending `json:"pending"`
Restart struct {
Supported bool `json:"supported"`
Hint string `json:"hint,omitempty"`
} `json:"restart"`
}
IntegrityRestore is the answer to staging a restore.
type IntegrityStatus ¶
type IntegrityStatus struct {
Healthy bool `json:"healthy"`
Mode string `json:"mode"`
CheckedAt time.Time `json:"checked_at"`
Error string `json:"error,omitempty"`
Checks int64 `json:"checks"`
Failures int64 `json:"failures"`
LastFullAt time.Time `json:"last_full_at"`
}
IntegrityStatus is the result of the last control plane database check.
type InvestigateEvent ¶ added in v0.2.0
type InvestigateEvent struct {
At time.Time `json:"at"`
Kind string `json:"kind"`
Severity string `json:"severity"`
Title string `json:"title"`
Detail string `json:"detail,omitempty"`
Ref string `json:"ref,omitempty"`
LikelyCause bool `json:"likely_cause,omitempty"`
}
InvestigateEvent is one What changed timeline entry.
type InvestigateRoute ¶ added in v0.2.0
type InvestigateRoute struct {
Route string `json:"route"`
Requests float64 `json:"requests"`
ErrorRate4xx float64 `json:"error_rate_4xx"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
AvgMs float64 `json:"avg_ms"`
}
InvestigateRoute is one route's share of a window.
type InvestigateStatus ¶ added in v0.2.0
InvestigateStatus is one exact status code's count.
type InvestigateSummary ¶ added in v0.2.0
type InvestigateSummary struct {
HasTraffic bool `json:"has_traffic"`
Requests float64 `json:"requests"`
RatePerSec float64 `json:"rate_per_sec"`
ErrorRate4xx float64 `json:"error_rate_4xx"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
P50Ms float64 `json:"p50_ms"`
P95Ms float64 `json:"p95_ms"`
P99Ms float64 `json:"p99_ms"`
}
InvestigateSummary is one window's request health.
type InvestigationResource ¶ added in v0.2.0
type InvestigationResource struct {
App string `json:"app"`
From time.Time `json:"from"`
To time.Time `json:"to"`
Summary InvestigateSummary `json:"summary"`
Baseline InvestigateSummary `json:"baseline"`
RoutesAvailable bool `json:"routes_available"`
TopRoutes []InvestigateRoute `json:"top_routes"`
StatusCodes []InvestigateStatus `json:"status_codes"`
Timeline []InvestigateEvent `json:"timeline"`
}
InvestigationResource mirrors internal/api's investigateResponse.
type InviteResource ¶
type InviteResource struct {
ID string `json:"id"`
Email string `json:"email"`
Role string `json:"role,omitempty"`
Abilities []string `json:"abilities"`
CreatedBy string `json:"created_by,omitempty"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
Expired bool `json:"expired"`
}
InviteResource mirrors internal/api's inviteResource (internal/api/invites.go).
type IssueSilenceResource ¶
type IssueSilenceResource struct {
ID string `json:"id"`
IssueKey string `json:"issue_key"`
Scope string `json:"scope,omitempty"`
Until *time.Time `json:"until,omitempty"`
Severity string `json:"severity,omitempty"`
CreatedBy string `json:"created_by"`
Reason string `json:"reason,omitempty"`
CreatedAt time.Time `json:"created_at"`
Expired bool `json:"expired"`
}
IssueSilenceResource mirrors internal/store's Silence plus its read-time expiry.
type JanitorItem ¶
type JanitorItem struct {
Name string `json:"name"`
Detail string `json:"detail,omitempty"`
SizeBytes int64 `json:"size_bytes"`
Count int `json:"count,omitempty"`
Action string `json:"action"`
}
JanitorItem is one thing a stage removed, would remove, or kept.
type JanitorPolicy ¶
type JanitorPolicy struct {
Enabled bool `json:"enabled"`
DryRun bool `json:"dry_run"`
IntervalMinutes int `json:"interval_minutes"`
DiskFreeBudgetPercent float64 `json:"disk_free_budget_percent"`
BuildCacheBudgetMB int64 `json:"build_cache_budget_mb"`
BuildCacheMaxAgeHours int `json:"build_cache_max_age_hours"`
VolumeQuarantineDays int `json:"volume_quarantine_days"`
DeleteOrphanVolumes bool `json:"delete_orphan_volumes"`
AttemptRetentionDays int `json:"attempt_retention_days"`
AttemptKeepPerApp int `json:"attempt_keep_per_app"`
DisabledStages []string `json:"disabled_stages"`
}
JanitorPolicy is the cleanup configuration.
type JanitorPolicyPatch ¶
type JanitorPolicyPatch struct {
Enabled *bool `json:"enabled,omitempty"`
DryRun *bool `json:"dry_run,omitempty"`
IntervalMinutes *int `json:"interval_minutes,omitempty"`
DiskFreeBudgetPercent *float64 `json:"disk_free_budget_percent,omitempty"`
BuildCacheBudgetMB *int64 `json:"build_cache_budget_mb,omitempty"`
BuildCacheMaxAgeHours *int `json:"build_cache_max_age_hours,omitempty"`
VolumeQuarantineDays *int `json:"volume_quarantine_days,omitempty"`
DeleteOrphanVolumes *bool `json:"delete_orphan_volumes,omitempty"`
AttemptRetentionDays *int `json:"attempt_retention_days,omitempty"`
AttemptKeepPerApp *int `json:"attempt_keep_per_app,omitempty"`
DisabledStages *[]string `json:"disabled_stages,omitempty"`
}
JanitorPolicyPatch changes only the fields that are set.
type JanitorQuarantined ¶
type JanitorQuarantined struct {
Name string `json:"name"`
SizeBytes int64 `json:"size_bytes"`
FirstSeen time.Time `json:"first_seen"`
DeletableAt time.Time `json:"deletable_at"`
DeleteEnabled bool `json:"delete_enabled"`
Ready bool `json:"ready"`
}
JanitorQuarantined is a volume held before deletion.
type JanitorReport ¶
type JanitorReport struct {
ID string `json:"id"`
StartedAt time.Time `json:"started_at"`
Trigger string `json:"trigger"`
DryRun bool `json:"dry_run"`
FreePercent float64 `json:"free_percent"`
Pressure bool `json:"pressure"`
Stages []JanitorStage `json:"stages"`
ReclaimedBytes int64 `json:"reclaimed_bytes"`
Error string `json:"error,omitempty"`
}
JanitorReport is one cleanup pass.
type JanitorStage ¶
type JanitorStage struct {
Stage string `json:"stage"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
Items []JanitorItem `json:"items"`
ReclaimedBytes int64 `json:"reclaimed_bytes"`
Error string `json:"error,omitempty"`
}
JanitorStage is what one stage did.
type JanitorStatus ¶
type JanitorStatus struct {
Policy JanitorPolicy `json:"policy"`
FreePercent float64 `json:"free_percent"`
FreeBytes int64 `json:"free_bytes"`
TotalBytes int64 `json:"total_bytes"`
Pressure bool `json:"pressure"`
LastRun *JanitorReport `json:"last_run,omitempty"`
Quarantine []JanitorQuarantined `json:"quarantine"`
TotalReclaimed int64 `json:"total_reclaimed_bytes"`
}
JanitorStatus is the policy, disk state and last pass.
type JobHTTP ¶
type JobHTTP struct {
Method string `json:"method,omitempty"`
Path string `json:"path"`
Body string `json:"body,omitempty"`
Background bool `json:"background,omitempty"`
}
JobHTTP mirrors internal/api's jobHTTPResource. Background jobs are awaited by the control plane under APP_JOBS_BACKGROUND_TIMEOUT.
type JobRunResource ¶ added in v0.2.0
type JobRunResource struct {
ID string `json:"id"`
TaskID string `json:"task_id"`
JobName string `json:"job_name,omitempty"`
ServiceName string `json:"service_name"`
Trigger string `json:"trigger"`
Status string `json:"status"`
ScheduledFor *time.Time `json:"scheduled_for,omitempty"`
StartedAt time.Time `json:"started_at"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
ExitCode *int `json:"exit_code,omitempty"`
DurationMS int64 `json:"duration_ms"`
Attempts int `json:"attempts"`
NodeID string `json:"node_id,omitempty"`
Mode string `json:"mode,omitempty"`
Message string `json:"message,omitempty"`
Output string `json:"output,omitempty"`
}
JobRunResource mirrors internal/api's scheduledTaskRunResource: one job run. Output is only populated when a single run is fetched.
type JoinCommands ¶ added in v0.2.0
JoinCommands are ready-to-paste commands that enroll a server.
type KeepTrialResult ¶
type KeepTrialResult struct {
Name string `json:"name"`
Kept []string `json:"kept"`
KeptAt time.Time `json:"kept_at"`
AlreadyKept bool `json:"already_kept"`
}
KeepTrialResult mirrors internal/api's keepTrialResponse.
type KeyPolicy ¶
type KeyPolicy struct {
MaxKeyAgeDays int `json:"max_key_age_days"`
RemindEveryDays int `json:"remind_every_days"`
LastRemindedAt *time.Time `json:"last_reminded_at,omitempty"`
}
KeyPolicy mirrors internal/api's keyPolicyResource.
type KeyPolicyUpdate ¶
type KeyPolicyUpdate struct {
MaxKeyAgeDays *int `json:"max_key_age_days,omitempty"`
RemindEveryDays *int `json:"remind_every_days,omitempty"`
}
KeyPolicyUpdate sets the maximum key age policy; nil fields stay unchanged.
type KeyRotationRun ¶
type KeyRotationRun struct {
ID string `json:"id"`
StartedAt time.Time `json:"started_at"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
Total int `json:"total"`
Done int `json:"done"`
Failed int `json:"failed"`
Actor string `json:"actor,omitempty"`
}
KeyRotationRun mirrors internal/api's rotationRunResource.
type ListAppsOptions ¶ added in v0.2.0
ListAppsOptions pages GET /api/v1/apps, matching the limit/offset query params internal/api/apps_list.go's own parseAppListFilter already accepts. Both zero means every matching app in one response, ListApps's own unpaged behavior.
type ListAuditLogOptions ¶
type ListAuditLogOptions struct {
Limit int
Before string
Path string
Method string
ClientKind string
Search string // case-insensitive substring across actor, ability, method, path, remote addr
FailedOnly bool // only entries with status_code >= 400
Agent string // only entries made with a token labeled with this agent name
Resource string // "domain:<name>", "zone:<name>" or "app:<name>"
Actions string // comma separated action prefixes, e.g. "dns_record.,domain."
}
ListAuditLogOptions is ListAuditLog's and DownloadAuditLogCSV's shared query input, mirroring GET /api/v1/audit-log's own ?limit/?before/ ?path/?method/?client_kind params (internal/api/audit.go). Zero values omit the param, the same convention ListBackupsOptions establishes.
type ListBackupsOptions ¶
ListBackupsOptions is ListBackups' pagination input, mirroring the server's ?limit/?before query params. Zero values omit the param (Limit <= 0 uses the server default, Before == "" is the first page).
type ListNodesOptions ¶ added in v0.2.0
ListNodesOptions are the GET /api/v1/nodes filters, mirroring DeploymentListOptions' Values() shape.
func (ListNodesOptions) Values ¶ added in v0.2.0
func (o ListNodesOptions) Values() url.Values
Values renders the options as a query string, omitting unset filters.
type ListWebhookDeliveriesOptions ¶
ListWebhookDeliveriesOptions is ListWebhookDeliveries' pagination input, the same shape ListBackupsOptions establishes.
type LoadBalancerActiveHealth ¶ added in v0.2.0
type LoadBalancerActiveHealth = loadbalancer.ActiveHealth
LoadBalancerActiveHealth is the active health check block.
type LoadBalancerArtifact ¶ added in v0.2.0
type LoadBalancerArtifact struct {
Format string `json:"format"`
Filename string `json:"filename"`
ContentType string `json:"content_type"`
Body string `json:"body"`
Warnings []string `json:"warnings,omitempty"`
}
LoadBalancerArtifact is one generated infrastructure-as-code file.
type LoadBalancerCheck ¶ added in v0.2.0
type LoadBalancerCheck struct {
Results []loadbalancer.CheckResult `json:"results"`
Note string `json:"note,omitempty"`
}
LoadBalancerCheck is POST /api/v1/apps/{name}/loadbalancer/check's body.
type LoadBalancerConfig ¶ added in v0.2.0
type LoadBalancerConfig = loadbalancer.Config
LoadBalancerConfig is a service's load balancer settings.
type LoadBalancerHistory ¶ added in v0.2.0
type LoadBalancerHistory struct {
Upstreams []loadbalancer.UpstreamHistory `json:"upstreams"`
}
LoadBalancerHistory is GET /api/v1/apps/{name}/loadbalancer/history's body.
type LoadBalancerList ¶ added in v0.2.0
type LoadBalancerList struct {
Items []LoadBalancerSummary `json:"items"`
Total int `json:"total"`
Limit int `json:"limit"`
Offset int `json:"offset"`
}
LoadBalancerList is GET /api/v1/loadbalancers' body.
type LoadBalancerListParams ¶ added in v0.2.0
LoadBalancerListParams filters and pages ListLoadBalancers; zero values are omitted.
type LoadBalancerPassiveHealth ¶ added in v0.2.0
type LoadBalancerPassiveHealth = loadbalancer.PassiveHealth
LoadBalancerPassiveHealth is the passive health check block.
type LoadBalancerRateLimit ¶ added in v0.2.0
type LoadBalancerRateLimit = loadbalancer.RateLimit
LoadBalancerRateLimit is the rate limit block.
type LoadBalancerResource ¶ added in v0.2.0
type LoadBalancerResource struct {
AppName string `json:"app_name"`
Configured bool `json:"configured"`
Config *LoadBalancerConfig `json:"config,omitempty"`
Algorithms []string `json:"algorithms"`
Formats []string `json:"export_formats"`
}
LoadBalancerResource is GET/PUT /api/v1/apps/{name}/loadbalancer's body.
type LoadBalancerRetries ¶ added in v0.2.0
type LoadBalancerRetries = loadbalancer.Retries
LoadBalancerRetries is the retry block.
type LoadBalancerStatus ¶ added in v0.2.0
type LoadBalancerStatus = loadbalancer.Status
LoadBalancerStatus is the live view of a service's load balancer.
type LoadBalancerSummary ¶ added in v0.2.0
type LoadBalancerSummary struct {
App string `json:"app"`
Service string `json:"service"`
Algorithm string `json:"algorithm"`
State string `json:"state"`
UpstreamsTotal int `json:"upstreams_total"`
UpstreamsHealthy int `json:"upstreams_healthy"`
Reason string `json:"reason,omitempty"`
LastCheck *time.Time `json:"last_check,omitempty"`
ConfigUpdatedAt string `json:"config_updated_at"`
ActiveHealthCheck bool `json:"active_health_check"`
}
LoadBalancerSummary is one row of GET /api/v1/loadbalancers.
type LoadBalancerUpstreamStatus ¶ added in v0.2.0
type LoadBalancerUpstreamStatus = loadbalancer.UpstreamStatus
LoadBalancerUpstreamStatus is one upstream's live view.
type LoadBalancerUpstreamTLS ¶ added in v0.2.0
type LoadBalancerUpstreamTLS = loadbalancer.UpstreamTLS
LoadBalancerUpstreamTLS is the upstream TLS block.
type LocalModel ¶
type LocalModel struct {
ID string `json:"id"`
Label string `json:"label"`
Vendor string `json:"vendor"`
Repo string `json:"repo"`
File string `json:"file"`
ParamsB float64 `json:"params_b"`
Quant string `json:"quant"`
DownloadBytes int64 `json:"download_bytes"`
SHA256 string `json:"sha256"`
MinRAMMiB int `json:"min_ram_mib"`
ContextLength int `json:"context_length"`
License string `json:"license"`
Tier string `json:"tier"`
Kind string `json:"kind"`
ToolCalling bool `json:"tool_calling"`
Notes string `json:"notes"`
}
LocalModel mirrors internal/models.CatalogEntry.
type LocalModelCard ¶
type LocalModelCard struct {
LocalModel
Fit CPUFit `json:"fit"`
}
LocalModelCard is a curated entry with its estimate on a node.
type LocalModelCatalog ¶
type LocalModelCatalog struct {
Version int `json:"version"`
VerifiedOn string `json:"verified_on"`
Note string `json:"note"`
NodeID string `json:"node_id"`
HostKnown bool `json:"host_known"`
HostCPUs int `json:"host_cpus"`
HostMemory int64 `json:"host_memory_bytes"`
Bounds CPUBounds `json:"bounds"`
Models []LocalModelCard `json:"models"`
}
LocalModelCatalog mirrors internal/models.CatalogView.
type LogArchiveDumpRequest ¶ added in v0.2.0
type LogArchiveDumpRequest struct {
AppName string `json:"app_name"`
TargetID string `json:"target_id"`
From string `json:"from"`
To string `json:"to"`
}
LogArchiveDumpRequest exports a time range now.
type LogArchiveObject ¶ added in v0.2.0
type LogArchiveObject struct {
Key string `json:"key"`
Size int64 `json:"size"`
LastModified string `json:"last_modified"`
}
LogArchiveObject is one archived object.
type LogArchiveObjects ¶ added in v0.2.0
type LogArchiveObjects struct {
Objects []LogArchiveObject `json:"objects"`
Next string `json:"next,omitempty"`
}
LogArchiveObjects is one page of archived objects.
type LogArchivePolicy ¶ added in v0.2.0
type LogArchivePolicy struct {
ID string `json:"id"`
AppName string `json:"app_name"`
TargetID string `json:"target_id"`
Enabled bool `json:"enabled"`
Interval string `json:"interval"`
IntervalSeconds int64 `json:"interval_seconds"`
RetentionDays int `json:"retention_days"`
LastRunAt string `json:"last_run_at,omitempty"`
LastSuccessAt string `json:"last_success_at,omitempty"`
LastError string `json:"last_error,omitempty"`
CreatedAt string `json:"created_at"`
}
LogArchivePolicy is a log archive schedule for one app, or all apps when AppName is empty.
type LogArchivePolicyRequest ¶ added in v0.2.0
type LogArchivePolicyRequest struct {
AppName string `json:"app_name"`
TargetID string `json:"target_id"`
Interval string `json:"interval,omitempty"`
RetentionDays int `json:"retention_days"`
Enabled *bool `json:"enabled,omitempty"`
}
LogArchivePolicyRequest sets a policy.
type LogArchiveRun ¶ added in v0.2.0
type LogArchiveRun struct {
ID string `json:"id"`
AppName string `json:"app_name"`
TargetID string `json:"target_id"`
Kind string `json:"kind"`
From string `json:"from"`
To string `json:"to"`
Status string `json:"status"`
Objects int `json:"objects"`
Lines int64 `json:"lines"`
Bytes int64 `json:"bytes"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
LogArchiveRun is one archive attempt.
type LogBudget ¶
type LogBudget struct {
MaxMB int64 `json:"max_mb"`
DefaultMB int64 `json:"default_mb"`
EffectiveMaxByte int64 `json:"effective_max_bytes"`
}
LogBudget is an app's log budget; MaxMB 0 means no override.
type LogDrainResource ¶
type LogDrainResource struct {
AppName string `json:"app_name"`
Type string `json:"type"`
Target string `json:"target"`
Enabled bool `json:"enabled"`
}
LogDrainResource mirrors internal/api's logDrainResource (apps_log_drain.go): GET/PUT /api/v1/apps/{name}/log-drain's wire shape. Type is "http" or "syslog", validated server-side.
type LogEntryResource ¶
type LogEntryResource struct {
Timestamp time.Time `json:"timestamp"`
Stream string `json:"stream"`
Message string `json:"message"`
Structured bool `json:"structured"`
FieldsJSON json.RawMessage `json:"fields,omitempty"`
// Level is the server-detected level, empty when the line has none.
Level string `json:"level,omitempty"`
}
LogEntryResource mirrors internal/api's logEntryResource (internal/api/logs.go).
type LogExcerpt ¶ added in v0.2.0
type LogExcerpt struct {
App string `json:"app"`
From string `json:"from"`
To string `json:"to"`
Matched int `json:"matched"`
Shown int `json:"shown"`
Lines []string `json:"lines"`
Notice string `json:"notice,omitempty"`
}
LogExcerpt is a capped, compact view of a log query result.
func BuildLogExcerpt ¶ added in v0.2.0
func BuildLogExcerpt(app string, from, to time.Time, entries []LogEntryResource, total, maxBytes int) LogExcerpt
BuildLogExcerpt renders entries (oldest first) as one line each and drops the oldest lines until the output fits maxBytes. total is how many lines matched before any trimming.
type LogPipeline ¶
type LogPipeline struct {
Rules []LogPipelineRule `json:"rules"`
}
LogPipeline is an app's ordered rule list.
type LogPipelinePreview ¶
type LogPipelinePreview struct {
Lines []LogPipelinePreviewLine `json:"lines"`
}
LogPipelinePreview is the response of PreviewLogPipeline.
type LogPipelinePreviewLine ¶
type LogPipelinePreviewLine struct {
Message string `json:"message"`
Dropped bool `json:"dropped"`
Fields map[string]string `json:"fields,omitempty"`
}
LogPipelinePreviewLine is the outcome of one sample line.
type LogPipelineRule ¶
type LogPipelineRule struct {
Kind string `json:"kind"`
Pattern string `json:"pattern"`
Replace string `json:"replace,omitempty"`
}
LogPipelineRule mirrors telemetry.PipelineRule.
type LogQuery ¶ added in v0.2.0
type LogQuery struct {
App string
Deploy string
Level string
Since string
Until string
Text string
// Order is "relevance" for best matches first (needs Text); empty is newest.
Order string
// MaxLines caps returned lines; 0 means DefaultLogMaxLines.
MaxLines int
}
LogQuery selects log lines of one app.
type LogQuerySpec ¶ added in v0.2.0
type LogQuerySpec struct {
Q string `json:"q,omitempty"`
Level string `json:"level,omitempty"`
Stream string `json:"stream,omitempty"`
Fields []string `json:"fields,omitempty"`
Container string `json:"container,omitempty"`
Range string `json:"range,omitempty"`
From *time.Time `json:"from,omitempty"`
To *time.Time `json:"to,omitempty"`
}
LogQuerySpec is the search a saved log query reproduces.
type LogSearch ¶ added in v0.2.0
type LogSearch struct {
Text string
Level string
Container string
Stream string
Fields []string
From time.Time
To time.Time
Limit int
}
LogSearch selects stored log lines with the structured filters.
type LogSearchContainer ¶ added in v0.2.0
LogSearchContainer is a container seen in a search, with its line count.
type LogSearchEntry ¶ added in v0.2.0
type LogSearchEntry struct {
Timestamp time.Time `json:"timestamp"`
Stream string `json:"stream"`
Message string `json:"message"`
Level string `json:"level,omitempty"`
Container string `json:"container,omitempty"`
}
LogSearchEntry is one stored log line.
type LogSearchResource ¶ added in v0.2.0
type LogSearchResource struct {
Entries []LogSearchEntry `json:"entries"`
Total int `json:"total"`
Containers []LogSearchContainer `json:"containers"`
}
LogSearchResource mirrors internal/api's logsResponse.
type LogSignature ¶ added in v0.2.0
type LogSignature struct {
ID string `json:"id"`
Template string `json:"template"`
Level string `json:"level"`
Count int `json:"count"`
FirstSeen time.Time `json:"first_seen"`
LastSeen time.Time `json:"last_seen"`
Buckets []int `json:"buckets"`
Sample string `json:"sample"`
New bool `json:"new,omitempty"`
}
LogSignature is one cluster of similar error lines.
type LogSignatureQuery ¶ added in v0.2.0
type LogSignatureQuery struct {
From time.Time
To time.Time
Level string
Text string
Limit int
Baseline bool
}
LogSignatureQuery selects the window and shape of a signature report.
type LogSignatures ¶ added in v0.2.0
type LogSignatures struct {
From time.Time `json:"from"`
To time.Time `json:"to"`
Scanned int `json:"scanned"`
MaxRows int `json:"max_rows"`
Truncated bool `json:"truncated"`
Total int `json:"total"`
NewCount int `json:"new_count"`
HasBaseline bool `json:"has_baseline"`
Signatures []LogSignature `json:"signatures"`
}
LogSignatures mirrors internal/api's logSignaturesResponse.
type LogStreamEntry ¶ added in v0.2.0
LogStreamEntry mirrors internal/api's sseLogEvent (internal/api/deploy_attempts.go), the exact JSON payload GET /api/v1/apps/{name}/logs/stream sends on each SSE "data:" line: no timestamp, unlike LogEntryResource's historical shape, since a live tail has no persisted-store round trip to attach one from.
type LogTrimResult ¶
type LogTrimResult struct {
TrimmedLines int64 `json:"trimmed_lines"`
TrimmedBytes int64 `json:"trimmed_bytes"`
StillOver bool `json:"still_over"`
}
LogTrimResult is the response of POST /api/v1/apps/{name}/log-budget/trim.
type LogUsage ¶
type LogUsage struct {
DefaultBudgetBytes int64 `json:"default_budget_bytes"`
Apps []LogUsageApp `json:"apps"`
}
LogUsage is the response of GET /api/v1/logs/usage.
type LogUsageApp ¶
type LogUsageApp struct {
App string `json:"app"`
Bytes int64 `json:"bytes"`
Lines int64 `json:"lines"`
RateBytesMin float64 `json:"rate_bytes_per_min"`
BudgetBytes int64 `json:"budget_bytes"`
BudgetCustom bool `json:"budget_custom"`
Percent *float64 `json:"percent"`
ForecastDays *float64 `json:"forecast_days"`
TrimmedLines int64 `json:"trimmed_lines"`
TrimmedBytes int64 `json:"trimmed_bytes"`
}
LogUsageApp is one app's stored log volume against its budget.
type MailAudiencePreview ¶
type MailAudiencePreview struct {
Total int `json:"total"`
Deliverable int `json:"deliverable"`
Suppressed int `json:"suppressed"`
Sample []string `json:"sample"`
}
MailAudiencePreview is a live count plus a masked sample.
type MailBroadcast ¶
type MailBroadcast struct {
ID string `json:"id"`
Subject string `json:"subject"`
Status string `json:"status"`
ScheduledAt string `json:"scheduled_at"`
Total int `json:"total"`
Sent int `json:"sent"`
Failed int `json:"failed"`
Suppressed int `json:"suppressed"`
Error string `json:"error"`
CreatedAt string `json:"created_at"`
FinishedAt string `json:"finished_at"`
}
MailBroadcast is a sent or queued message and its progress.
type MailBroadcastPlan ¶
type MailBroadcastPlan struct {
MailAudiencePreview
CapRemaining int `json:"cap_remaining"`
ProviderConfigured bool `json:"provider_configured"`
}
MailBroadcastPlan is the dry-run answer.
type MailBroadcastRequest ¶
type MailBroadcastRequest struct {
Subject string `json:"subject"`
Body string `json:"body"`
TemplateKey string `json:"template_key,omitempty"`
Audience string `json:"audience,omitempty"`
Recipients []string `json:"recipients,omitempty"`
ScheduleAt string `json:"schedule_at,omitempty"`
DryRun bool `json:"dry_run,omitempty"`
ExpectedSend int `json:"expected_recipients,omitempty"`
}
MailBroadcastRequest composes a broadcast; DryRun only reports the plan.
type MailGroup ¶
type MailGroup struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Rules MailRules `json:"rules"`
Recipients int `json:"recipients"`
Suppressed int `json:"suppressed"`
}
MailGroup is a saved audience with its live recipient count.
type MailGroupDetail ¶
type MailGroupDetail struct {
Group MailGroup `json:"group"`
Preview MailAudiencePreview `json:"preview"`
}
MailGroupDetail is a group with its masked recipient preview.
type MailPreview ¶
type MailPreview struct {
Subject string `json:"subject"`
Preheader string `json:"preheader"`
Text string `json:"text"`
HTML string `json:"html"`
}
MailPreview is a rendered sample message.
type MailRules ¶
type MailRules struct {
AllUsers bool `json:"all_users"`
Roles []string `json:"roles"`
Teams []string `json:"teams"`
Projects []string `json:"projects"`
EmailDomains []string `json:"email_domains"`
InactiveDays int `json:"inactive_days"`
ExtraAddresses []string `json:"extra_addresses"`
ExcludeAddresses []string `json:"exclude_addresses"`
}
MailRules selects the recipients of a group.
type MailTemplate ¶
type MailTemplate struct {
Key string `json:"key"`
Label string `json:"label"`
Description string `json:"description"`
Category string `json:"category"`
Tokens []string `json:"tokens"`
Default MailTemplateBody `json:"default"`
Current MailTemplateBody `json:"current"`
Customized bool `json:"customized"`
UpdatedAt string `json:"updated_at"`
}
MailTemplate is one event template with its current text.
type MailTemplateBody ¶
type MailTemplateBody struct {
Subject string `json:"subject"`
Preheader string `json:"preheader"`
Body string `json:"body"`
}
MailTemplateBody is the editable part of an email template.
type MailToken ¶
type MailToken struct {
Name string `json:"name"`
Description string `json:"description"`
Sample string `json:"sample"`
Scope string `json:"scope"`
}
MailToken is one substitutable email token.
type MaintenancePreviewResource ¶
type MaintenancePreviewResource struct {
HTML string `json:"html"`
Status int `json:"status"`
RetryAfter string `json:"retry_after"`
}
MaintenancePreviewResource is POST /api/v1/maintenance/preview.
type MaintenanceWindowResource ¶ added in v0.2.0
type MaintenanceWindowResource struct {
ID string `json:"id,omitempty"`
Name string `json:"name"`
Cron string `json:"cron"`
Duration string `json:"duration"`
Timezone string `json:"timezone,omitempty"`
Scope string `json:"scope"`
Targets []string `json:"targets,omitempty"`
Enabled bool `json:"enabled"`
CreatedBy string `json:"created_by,omitempty"`
CreatedAt *time.Time `json:"created_at,omitempty"`
Active bool `json:"active"`
ActiveUntil *time.Time `json:"active_until,omitempty"`
NextStart *time.Time `json:"next_start,omitempty"`
}
MaintenanceWindowResource mirrors internal/api's maintenanceWindowResource.
type MajorUpgradeResource ¶ added in v0.2.0
type MajorUpgradeResource struct {
ID string `json:"id"`
DatabaseName string `json:"database_name"`
FromVersion string `json:"from_version"`
ToVersion string `json:"to_version"`
Status string `json:"status"`
Phase string `json:"phase,omitempty"`
SnapshotVolume string `json:"snapshot_volume,omitempty"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
MajorUpgradeResource mirrors internal/api's majorUpgradeResource.
type MarketplaceCatalog ¶
type MarketplaceCatalog struct {
Entries []MarketplaceEntry `json:"entries"`
Sources []MarketplaceSource `json:"sources"`
}
MarketplaceCatalog is every listing plus each source's status.
type MarketplaceEntry ¶
type MarketplaceEntry struct {
ID string `json:"id"`
Name string `json:"name"`
Publisher string `json:"publisher"`
PublisherKeyID string `json:"publisher_key_id"`
PublisherKeyName string `json:"publisher_key_name"`
Version string `json:"version"`
Summary string `json:"summary"`
Categories []string `json:"categories"`
Icon string `json:"icon"`
Abilities []string `json:"abilities"`
OutboundHosts []string `json:"outbound_hosts"`
Digest string `json:"digest"`
Changelog string `json:"changelog"`
MinVersion string `json:"min_version"`
SourceID string `json:"source_id"`
SourceName string `json:"source_name"`
Verified bool `json:"verified"`
KeyTrusted bool `json:"key_trusted"`
Installed bool `json:"installed"`
InstalledVersion string `json:"installed_version"`
UpdateAvailable bool `json:"update_available"`
Compatible bool `json:"compatible"`
}
MarketplaceEntry is one listing from a signed marketplace index.
type MarketplaceInstallInput ¶
type MarketplaceInstallInput struct {
SourceID string `json:"source_id"`
ID string `json:"id"`
Version string `json:"version"`
Digest string `json:"digest"`
Abilities []string `json:"abilities"`
TrustKeyID string `json:"trust_key_id,omitempty"`
}
MarketplaceInstallInput confirms exactly what the sheet showed.
type MarketplaceInstallResult ¶
type MarketplaceInstallResult struct {
Plugin Plugin `json:"plugin"`
Action string `json:"action"`
TrustAdded bool `json:"trust_added"`
}
MarketplaceInstallResult is what the one-click flow did.
type MarketplacePreview ¶
type MarketplacePreview struct {
Entry MarketplaceEntry `json:"entry"`
SourceID string `json:"source_id"`
SourceName string `json:"source_name"`
KeyID string `json:"key_id"`
KeyName string `json:"key_name"`
KeyTrusted bool `json:"key_trusted"`
Action string `json:"action"`
InstalledVersion string `json:"installed_version"`
AddedAbilities []string `json:"added_abilities"`
AddedHosts []string `json:"added_hosts"`
Reapproval bool `json:"reapproval_required"`
}
MarketplacePreview is the confirm sheet for one listing.
type MarketplaceSource ¶
type MarketplaceSource struct {
ID string `json:"id"`
Name string `json:"name"`
URL string `json:"url"`
RootKeyID string `json:"root_key_id"`
Builtin bool `json:"builtin"`
Status string `json:"status"`
Error string `json:"error"`
ErrorKind string `json:"error_kind"`
Sequence int64 `json:"sequence"`
GeneratedAt string `json:"generated_at"`
FetchedAt string `json:"fetched_at"`
PluginCount int `json:"plugin_count"`
}
MarketplaceSource is a configured index source with its last fetch outcome.
type MasterKeyStatus ¶
type MasterKeyStatus struct {
Configured bool `json:"configured"`
RotatedAt *time.Time `json:"rotated_at,omitempty"`
AgeDays *int `json:"age_days,omitempty"`
Overdue bool `json:"overdue"`
}
MasterKeyStatus mirrors internal/api's masterKeyStatusResource.
type MeshCheck ¶ added in v0.2.0
type MeshCheck struct {
ID string `json:"id"`
Status string `json:"status"`
Detail string `json:"detail"`
Hint string `json:"hint,omitempty"`
}
MeshCheck mirrors one readiness check of GET /api/v1/mesh/settings.
type MeshConnectivity ¶ added in v0.2.0
type MeshConnectivity struct {
Nodes []MeshConnectivityNode `json:"nodes"`
Pairs []MeshPair `json:"pairs"`
CheckedAt time.Time `json:"checked_at"`
}
MeshConnectivity mirrors GET /api/v1/mesh/connectivity.
type MeshConnectivityNode ¶ added in v0.2.0
type MeshConnectivityNode struct {
ID string `json:"id"`
Name string `json:"name"`
MeshAddress string `json:"mesh_address"`
ViewError string `json:"view_error,omitempty"`
}
MeshConnectivityNode is one mesh member and whether its view was readable.
type MeshLink ¶ added in v0.2.0
type MeshLink struct {
State string `json:"state"`
LastHandshake *time.Time `json:"last_handshake,omitempty"`
Endpoint string `json:"endpoint,omitempty"`
}
MeshLink is one direction of a node pair.
type MeshPair ¶ added in v0.2.0
type MeshPair struct {
A string `json:"a"`
B string `json:"b"`
Status string `json:"status"`
AToB MeshLink `json:"a_to_b"`
BToA MeshLink `json:"b_to_a"`
Hint string `json:"hint,omitempty"`
}
MeshPair is one node pair's connectivity.
type MeshPeerResource ¶ added in v0.2.0
type MeshPeerResource struct {
NodeID string `json:"node_id"`
Name string `json:"name,omitempty"`
PublicKey string `json:"public_key"`
MeshAddress string `json:"mesh_address,omitempty"`
Endpoint string `json:"endpoint,omitempty"`
LastHandshake *time.Time `json:"last_handshake_at,omitempty"`
Healthy bool `json:"healthy"`
TransferRx int64 `json:"transfer_rx_bytes"`
TransferTx int64 `json:"transfer_tx_bytes"`
Live bool `json:"live"`
}
MeshPeerResource mirrors internal/api's meshPeerResource (internal/api/mesh.go): one WireGuard peer as this node's own device sees it, joined with the store's record of that node's identity. Live is false for a peer this control plane only knows about from the store (no live device peer entry for it yet), true for one the local device actually has, real UAPI-backed handshake data and all.
type MeshRotationResource ¶ added in v0.2.0
type MeshRotationResource struct {
NodeID string `json:"node_id"`
OldPublicKey string `json:"old_public_key"`
NewPublicKey string `json:"new_public_key"`
StartedAt time.Time `json:"started_at"`
Confirmed bool `json:"confirmed"`
ConfirmedAt *time.Time `json:"confirmed_at,omitempty"`
}
MeshRotationResource mirrors internal/api's meshRotationResource: one key rotation's tracked confirmation state.
type MeshSettings ¶ added in v0.2.0
type MeshSettings struct {
Configured bool `json:"configured"`
Effective bool `json:"effective"`
Source string `json:"source"`
EnvVar string `json:"env_var"`
RestartRequired bool `json:"restart_required"`
RestartHint string `json:"restart_hint,omitempty"`
RemoteNodes int `json:"remote_nodes"`
Checks []MeshCheck `json:"checks"`
CanEnable bool `json:"can_enable"`
StartError string `json:"start_error,omitempty"`
UpdatedBy string `json:"updated_by,omitempty"`
}
MeshSettings mirrors GET /api/v1/mesh/settings.
type MeshStatusResource ¶ added in v0.2.0
type MeshStatusResource struct {
Enabled bool `json:"enabled"`
Backend string `json:"backend,omitempty"`
Interface string `json:"interface,omitempty"`
LocalNodeID string `json:"local_node_id,omitempty"`
PublicKey string `json:"public_key,omitempty"`
MeshAddress string `json:"mesh_address,omitempty"`
ListenPort int `json:"listen_port,omitempty"`
Peers []MeshPeerResource `json:"peers"`
Rotation *MeshRotationResource `json:"rotation,omitempty"`
}
MeshStatusResource mirrors internal/api's meshStatusResource (GET /api/v1/mesh). Enabled is false only via a 501 response (mesh networking not turned on for this control plane at all), which GetMeshStatus surfaces as an error rather than a false-valued response, so in practice a caller that got a MeshStatusResource back at all always has Enabled true; the field is kept for parity with the wire response rather than assumed away.
type MetricPointResource ¶
type MetricPointResource struct {
Timestamp time.Time `json:"timestamp"`
Value float64 `json:"value"`
Count int `json:"count"`
}
MetricPointResource mirrors internal/api's metricPoint (internal/api/metrics.go): one aggregated bucket of a queried metric.
type MetricSeriesPoint ¶ added in v0.2.0
type MetricSeriesPoint struct {
Timestamp time.Time `json:"timestamp"`
Value float64 `json:"value"`
Count int `json:"count"`
Max float64 `json:"max"`
}
MetricSeriesPoint is one bucket; Max keeps spikes visible after averaging.
type MetricsQueryOptions ¶ added in v0.2.0
MetricsQueryOptions are the optional downsampling and comparison controls of GET /api/v1/apps/{name}/metrics.
type MetricsSeriesResource ¶ added in v0.2.0
type MetricsSeriesResource struct {
Metric string `json:"metric"`
StepSeconds float64 `json:"step_seconds"`
Downsampled bool `json:"downsampled"`
Points []MetricSeriesPoint `json:"points"`
PreviousPoints []MetricSeriesPoint `json:"previous_points,omitempty"`
}
MetricsSeriesResource mirrors internal/api's metricsResponse.
type MigrationAgentComparison ¶
type MigrationAgentComparison struct {
Name string `json:"name"`
Source string `json:"source"`
SourceFiles int64 `json:"source_files"`
SourceBytes int64 `json:"source_bytes"`
TargetFiles int64 `json:"target_files"`
TargetBytes int64 `json:"target_bytes"`
Status string `json:"status"`
TargetFrom string `json:"target_from,omitempty"`
Detail string `json:"detail,omitempty"`
}
MigrationAgentComparison is the result for one volume.
type MigrationAgentContainer ¶
type MigrationAgentContainer struct {
Name string `json:"name"`
Image string `json:"image"`
State string `json:"state"`
Mounts []MigrationAgentMount `json:"mounts,omitempty"`
DatabaseEngine string `json:"database_engine,omitempty"`
DatabaseVersion string `json:"database_version,omitempty"`
Unlisted bool `json:"unlisted"`
}
MigrationAgentContainer is one container on the source.
type MigrationAgentCreated ¶
type MigrationAgentCreated struct {
ID string `json:"id"`
Token string `json:"token"`
ExpiresAt time.Time `json:"expires_at"`
CAFingerprint string `json:"ca_fingerprint"`
ControlPlaneAddr string `json:"control_plane_addr,omitempty"`
Binary string `json:"binary"`
Command string `json:"command,omitempty"`
SessionMaxHours int `json:"session_max_hours"`
}
MigrationAgentCreated is the one-time result of creating a session.
type MigrationAgentDetail ¶
type MigrationAgentDetail struct {
Session MigrationAgentSession `json:"session"`
Inventory MigrationAgentInventory `json:"inventory"`
}
MigrationAgentDetail is a session with its latest discovery.
type MigrationAgentInventory ¶
type MigrationAgentInventory struct {
DockerVersion string `json:"docker_version"`
Containers []MigrationAgentContainer `json:"containers"`
Volumes []struct {
Name string `json:"name"`
Driver string `json:"driver"`
} `json:"volumes"`
NetworkCount int `json:"network_count"`
}
MigrationAgentInventory is what the agent found on the source.
type MigrationAgentMount ¶
type MigrationAgentMount struct {
Type string `json:"type"`
Name string `json:"name,omitempty"`
Source string `json:"source,omitempty"`
Destination string `json:"destination"`
}
MigrationAgentMount is a container mount seen on the source.
type MigrationAgentSession ¶
type MigrationAgentSession struct {
ID string `json:"id"`
Label string `json:"label"`
State string `json:"state"`
TokenExpiresAt time.Time `json:"token_expires_at"`
SessionExpiresAt *time.Time `json:"session_expires_at,omitempty"`
LastSeenAt *time.Time `json:"last_seen_at,omitempty"`
AgentVersion string `json:"agent_version,omitempty"`
CreatedAt time.Time `json:"created_at"`
}
MigrationAgentSession is one read-only migration agent session.
type MigrationAgentVerifyResult ¶
type MigrationAgentVerifyResult struct {
Comparisons []MigrationAgentComparison `json:"comparisons"`
Advance struct {
Advanced bool `json:"advanced"`
Reason string `json:"reason,omitempty"`
Evidence []string `json:"evidence,omitempty"`
} `json:"advance"`
Databases int `json:"databases_on_source"`
Checklist MigrationChecklist `json:"checklist"`
}
MigrationAgentVerifyResult is the outcome of comparing one app's volumes.
type MigrationAgentVerifyTarget ¶
type MigrationAgentVerifyTarget struct {
Name string `json:"name"`
Files int64 `json:"files"`
Bytes int64 `json:"bytes"`
}
MigrationAgentVerifyTarget is an operator-supplied measurement of a volume on this side.
type MigrationChecklist ¶
type MigrationChecklist struct {
App string `json:"app"`
Platform string `json:"platform,omitempty"`
SourceID string `json:"source_id,omitempty"`
Steps []MigrationChecklistStep `json:"steps"`
Current string `json:"current"`
Progress int `json:"progress"`
Total int `json:"total"`
Domains []string `json:"domains,omitempty"`
Volumes []MigrationChecklistVolume `json:"volumes,omitempty"`
Tracked bool `json:"tracked"`
}
MigrationChecklist is one app's cutover checklist.
type MigrationChecklistStep ¶
type MigrationChecklistStep struct {
ID string `json:"id"`
Status string `json:"status"`
At string `json:"at,omitempty"`
Actor string `json:"actor,omitempty"`
Note string `json:"note,omitempty"`
Evidence []string `json:"evidence,omitempty"`
}
MigrationChecklistStep is one step of an app's cutover checklist.
type MigrationChecklistVolume ¶
type MigrationChecklistVolume struct {
Name string `json:"name"`
SourceCommand string `json:"source_command,omitempty"`
TargetCommand string `json:"target_command"`
}
MigrationChecklistVolume carries the commands that measure a volume.
type MigrationJob ¶
type MigrationJob struct {
ID string `json:"id"`
Platform string `json:"platform"`
SourceURL string `json:"source_url"`
Step string `json:"step"`
Phase string `json:"phase"`
Running bool `json:"running"`
Connected bool `json:"connected"`
Total int `json:"total"`
Done int `json:"done"`
Failed int `json:"failed"`
States map[string]int `json:"states"`
Items []MigrationJobItem `json:"items"`
Databases []MigrationJobDatabase `json:"databases"`
Next []string `json:"next"`
Revision string `json:"revision"`
}
MigrationJob is the compact, secret-free state of a migration job (an app import session).
type MigrationJobDatabase ¶
type MigrationJobDatabase struct {
Name string `json:"name"`
Status string `json:"status"`
Mismatched int `json:"mismatched,omitempty"`
}
MigrationJobDatabase is the data copy state of one database the job moves.
type MigrationJobItem ¶
type MigrationJobItem struct {
SourceID string `json:"source_id"`
Name string `json:"name"`
Target string `json:"target,omitempty"`
State string `json:"state"`
Reason string `json:"reason,omitempty"`
Retryable bool `json:"retryable"`
VolumesPending int `json:"volumes_pending,omitempty"`
}
MigrationJobItem is one selected resource of a migration job.
type MigrationOverride ¶
type MigrationOverride = migrationplan.Override
MigrationOverride is a per-item change chosen from a fix.
type MigrationPlanReport ¶
type MigrationPlanReport = migrationplan.Report
MigrationPlanReport is the read-only plan of a source platform.
type MigrationProbe ¶
type MigrationProbe struct {
Domain string `json:"domain"`
App string `json:"app"`
Targets []string `json:"targets"`
DNS *MigrationProbeCheck `json:"dns,omitempty"`
HTTP []MigrationProbeCheck `json:"http,omitempty"`
OK bool `json:"ok"`
}
MigrationProbe is the result of probing one domain of a job.
type MigrationProbeCheck ¶
type MigrationProbeCheck struct {
ID string `json:"id"`
Status string `json:"status"`
Detail string `json:"detail"`
Fix string `json:"fix,omitempty"`
}
MigrationProbeCheck is one DNS, certificate or health check of a domain.
type MigrationSourceRequest ¶
type MigrationSourceRequest struct {
Platform string `json:"platform"`
URL string `json:"url,omitempty"`
Token string `json:"token,omitempty"`
InsecureTLS bool `json:"insecure_tls,omitempty"`
AllowPrivate bool `json:"allow_private,omitempty"`
AllowLoopback bool `json:"allow_loopback,omitempty"`
Only []string `json:"only,omitempty"`
Collision string `json:"collision,omitempty"`
Overrides map[string]MigrationOverride `json:"overrides,omitempty"`
DryRun bool `json:"dry_run,omitempty"`
}
MigrationSourceRequest names the source platform and carries its credential. Only selects items by source id or name.
type MigrationSourceTest ¶
type MigrationSourceTest struct {
OK bool `json:"ok"`
Platform string `json:"platform"`
Failure string `json:"failure,omitempty"`
Message string `json:"message,omitempty"`
Apps int `json:"apps"`
Databases int `json:"databases"`
Unsupported int `json:"unsupported"`
Servers []string `json:"servers"`
Volumes int `json:"volumes"`
Domains int `json:"domains"`
Crons int `json:"crons"`
Warnings []string `json:"warnings"`
}
MigrationSourceTest is the result of a source connection test.
type MigrationStepRequest ¶
type MigrationStepRequest struct {
Action string `json:"action"`
Note string `json:"note,omitempty"`
Confirm bool `json:"confirm,omitempty"`
Databases []string `json:"databases,omitempty"`
Volumes []MigrationVolumeStat `json:"volumes,omitempty"`
}
MigrationStepRequest completes or resets one checklist step.
type MigrationVerifyReport ¶
type MigrationVerifyReport struct {
migrateverify.Report
CanRecheck bool `json:"can_recheck"`
}
MigrationVerifyReport is the parity report plus whether Re-check is possible.
type MigrationVerifyRequest ¶
type MigrationVerifyRequest struct {
MigrationSourceRequest
Recheck bool `json:"recheck,omitempty"`
SkipProbes bool `json:"skip_probes,omitempty"`
ProbeTimeoutSeconds int `json:"probe_timeout_seconds,omitempty"`
ProbeConcurrency int `json:"probe_concurrency,omitempty"`
AllowPrivateProbes bool `json:"allow_private_probes,omitempty"`
TargetIP string `json:"target_ip,omitempty"`
SourceIP string `json:"source_ip,omitempty"`
}
MigrationVerifyRequest is the source credential plus the probe settings for POST /api/v1/migrations/verify. Recheck reuses the last request.
type MigrationVolumeStat ¶
type MigrationVolumeStat = migrationplan.VolumeStat
MigrationVolumeStat is a volume's file count and size on both hosts.
type MobileDevice ¶ added in v0.2.0
type MobileDevice struct {
ID string `json:"id"`
Name string `json:"name"`
Platform string `json:"platform"`
TokenID string `json:"token_id"`
CreatedAt time.Time `json:"created_at"`
LastSeenAt *time.Time `json:"last_seen_at,omitempty"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
Expired bool `json:"expired"`
}
MobileDevice is one paired phone.
type MobilePairingCode ¶ added in v0.2.0
type MobilePairingCode struct {
Code string `json:"code"`
ExpiresAt time.Time `json:"expires_at"`
ServerURL string `json:"server_url"`
PairURL string `json:"pair_url"`
QRPayload string `json:"qr_payload"`
}
MobilePairingCode is the one-time code a phone exchanges for a device token.
type ModelAPIKeyResource ¶ added in v0.2.0
type ModelAPIKeyResource struct {
APIKey string `json:"api_key"`
}
ModelAPIKeyResource mirrors internal/api's modelAPIKeyResponse.
type ModelBenchPrompt ¶
type ModelBenchPrompt struct {
Name string `json:"name"`
PromptTokens int `json:"prompt_tokens"`
CompletionTokens int `json:"completion_tokens"`
TTFTMillis int64 `json:"ttft_ms"`
PromptTPS float64 `json:"prompt_tokens_per_sec"`
GenTPS float64 `json:"gen_tokens_per_sec"`
}
ModelBenchPrompt mirrors internal/models.BenchPrompt.
type ModelBenchmarkResult ¶
type ModelBenchmarkResult struct {
Model string `json:"model"`
RanAt time.Time `json:"ran_at"`
DurationMillis int64 `json:"duration_ms"`
Prompts []ModelBenchPrompt `json:"prompts"`
PromptTPS float64 `json:"prompt_tokens_per_sec"`
GenTPS float64 `json:"gen_tokens_per_sec"`
TTFTMillis int64 `json:"ttft_ms"`
PeakMemoryBytes uint64 `json:"peak_memory_bytes"`
MemoryLimitBytes uint64 `json:"memory_limit_bytes"`
Truncated bool `json:"truncated"`
Note string `json:"note"`
}
ModelBenchmarkResult mirrors internal/models.BenchResult.
type ModelCPUFields ¶
type ModelCPUFields struct {
Compute string `json:"compute,omitempty"`
CPULimit float64 `json:"cpu_limit,omitempty"`
MemoryLimitMiB int `json:"memory_limit_mib,omitempty"`
WeightsRepo string `json:"weights_repo,omitempty"`
WeightsFile string `json:"weights_file,omitempty"`
LicenseAck bool `json:"license_acknowledged,omitempty"`
Download *ModelDownload `json:"download,omitempty"`
Benchmark *ModelBenchmarkResult `json:"benchmark,omitempty"`
}
ModelCPUFields mirrors internal/api's modelCPUResource. They live outside ModelResource so the MCP tool output schemas stay small.
type ModelCacheEntry ¶ added in v0.2.0
type ModelCacheEntry struct {
Volume string `json:"volume"`
Model string `json:"model,omitempty"`
Engine string `json:"engine,omitempty"`
ModelRef string `json:"model_ref,omitempty"`
SizeBytes *int64 `json:"size_bytes"`
LastUsedAt *time.Time `json:"last_used_at"`
LastUsedSource string `json:"last_used_source"`
UnusedDays int `json:"unused_days"`
Unused bool `json:"unused"`
InUse bool `json:"in_use"`
Configured bool `json:"configured"`
DuplicateOf string `json:"duplicate_of,omitempty"`
Prunable bool `json:"prunable"`
KeepReason string `json:"keep_reason,omitempty"`
}
ModelCacheEntry mirrors internal/models' CacheEntry.
type ModelCacheNode ¶ added in v0.2.0
type ModelCacheNode struct {
NodeID string `json:"node_id"`
Name string `json:"name"`
IsLocal bool `json:"is_local"`
Supported bool `json:"supported"`
Message string `json:"message,omitempty"`
Entries []ModelCacheEntry `json:"entries"`
TotalBytes int64 `json:"total_bytes"`
UniqueBytes int64 `json:"unique_bytes"`
ReclaimableBytes int64 `json:"reclaimable_bytes"`
DiskFreeBytes *int64 `json:"disk_free_bytes"`
}
ModelCacheNode mirrors internal/models' CacheNode.
type ModelCachePruneResult ¶ added in v0.2.0
type ModelCachePruneResult struct {
DryRun bool `json:"dry_run"`
Candidates []ModelCacheEntry `json:"candidates"`
Removed []string `json:"removed"`
Skipped []ModelCacheSkip `json:"skipped"`
ReclaimedBytes int64 `json:"reclaimed_bytes"`
}
ModelCachePruneResult mirrors internal/models' CachePruneResult.
type ModelCacheReport ¶ added in v0.2.0
type ModelCacheReport struct {
UnusedDays int `json:"unused_days"`
Nodes []ModelCacheNode `json:"nodes"`
Note string `json:"note"`
}
ModelCacheReport mirrors internal/models' CacheReport.
type ModelCacheSkip ¶ added in v0.2.0
ModelCacheSkip mirrors internal/models' CacheSkip.
type ModelDetail ¶
type ModelDetail struct {
ModelResource
ModelCPUFields
}
ModelDetail is a ModelResource with its CPU mode fields.
type ModelDownload ¶
type ModelDownload struct {
DoneBytes int64 `json:"done_bytes"`
TotalBytes int64 `json:"total_bytes"`
Percent int `json:"percent"`
}
ModelDownload mirrors internal/api's modelDownloadResource.
type ModelFitReport ¶ added in v0.2.0
type ModelFitReport struct {
Model string `json:"model,omitempty"`
Nodes []NodeFit `json:"nodes"`
Note string `json:"note"`
}
ModelFitReport mirrors internal/models.FitReport.
type ModelFitRequest ¶ added in v0.2.0
type ModelFitRequest struct {
Engine string `json:"engine"`
Model string `json:"model"`
Quantization string `json:"quantization,omitempty"`
ContextLength int `json:"context_length,omitempty"`
GPUCount int `json:"gpu_count,omitempty"`
GPUDeviceIDs []string `json:"gpu_device_ids,omitempty"`
WeightsBytes int64 `json:"weights_bytes,omitempty"`
NodeID *string `json:"node_id,omitempty"`
// Compute "cpu" (or CatalogID) rates the model against CPUs and memory.
Compute string `json:"compute,omitempty"`
CatalogID string `json:"catalog_id,omitempty"`
CPUs float64 `json:"cpus,omitempty"`
MemoryMiB int `json:"memory_mib,omitempty"`
}
ModelFitRequest is the body of POST /api/v1/models/fit. NodeID nil rates every GPU node.
type ModelKeyResource ¶ added in v0.2.0
type ModelKeyResource struct {
ID string `json:"id"`
Name string `json:"name"`
KeyPrefix string `json:"key_prefix"`
Status string `json:"status"`
RPM int `json:"rpm"`
TPM int `json:"tpm"`
TPD int `json:"tpd"`
MaxParallel int `json:"max_parallel"`
AllowPaths []string `json:"allow_paths"`
AllowModels []string `json:"allow_models"`
ReplacedBy string `json:"replaced_by,omitempty"`
InFlight int `json:"in_flight"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
RevokedAt *time.Time `json:"revoked_at,omitempty"`
LastUsedAt *time.Time `json:"last_used_at,omitempty"`
CreatedBy string `json:"created_by,omitempty"`
}
ModelKeyResource mirrors internal/api's modelKeyResource. It never carries key material, only the prefix.
type ModelKeyUsage ¶ added in v0.2.0
type ModelKeyUsage struct {
KeyID string `json:"key_id"`
Name string `json:"name"`
KeyPrefix string `json:"key_prefix"`
Status string `json:"status"`
InFlight int `json:"in_flight"`
ModelUsageTotals
}
ModelKeyUsage is one key's usage in the window.
type ModelLimits ¶ added in v0.2.0
type ModelLimits struct {
MaxBodyBytes int64 `json:"max_body_bytes"`
MaxN int `json:"max_n"`
MaxTokens int `json:"max_tokens"`
MaxInflight int `json:"max_inflight_requests"`
ResponseHeaderTimeoutS int `json:"response_header_timeout_seconds"`
StreamIdleTimeoutS int `json:"stream_idle_timeout_seconds"`
}
ModelLimits mirrors internal/models' GatewayLimitsSummary. Zero means the limit is disabled.
type ModelPreflightRequest ¶ added in v0.2.0
type ModelPreflightRequest struct {
Repo string `json:"repo"`
Engine string `json:"engine,omitempty"`
File string `json:"file,omitempty"`
Quant string `json:"quant,omitempty"`
NodeID string `json:"node_id,omitempty"`
HFToken string `json:"hf_token,omitempty"`
}
ModelPreflightRequest mirrors internal/api's modelPreflightRequest.
type ModelPreflightResult ¶ added in v0.2.0
type ModelPreflightResult struct {
Repo string `json:"repo"`
Status string `json:"status"`
Exists bool `json:"exists"`
Message string `json:"message"`
NextStep string `json:"next_step,omitempty"`
RetryAfterSeconds int `json:"retry_after_seconds,omitempty"`
Gated string `json:"gated,omitempty"`
Access string `json:"access,omitempty"`
Private bool `json:"private"`
License string `json:"license,omitempty"`
TotalBytes int64 `json:"total_bytes"`
FileCount int `json:"file_count"`
Files []PreflightFile `json:"files"`
FilesTruncated bool `json:"files_truncated"`
HasGGUF bool `json:"has_gguf"`
HasSafetensors bool `json:"has_safetensors"`
CompatibleEngines []string `json:"compatible_engines"`
EngineHint string `json:"engine_hint"`
Quants []PreflightQuant `json:"quants"`
RecommendedQuant string `json:"recommended_quant,omitempty"`
RecommendationNote string `json:"recommendation_note,omitempty"`
Selected *PreflightSelection `json:"selected,omitempty"`
Node PreflightNode `json:"node"`
Disk PreflightDisk `json:"disk"`
Warnings []string `json:"warnings"`
EstimateNote string `json:"estimate_note"`
Cached bool `json:"cached"`
}
ModelPreflightResult mirrors internal/models' PreflightResult.
type ModelResource ¶ added in v0.2.0
type ModelResource struct {
Name string `json:"name"`
Engine string `json:"engine"`
Model string `json:"model"`
NodeID string `json:"node_id"`
GPUCount int `json:"gpu_count"`
GPUDeviceIDs []string `json:"gpu_device_ids,omitempty"`
ContextLength int `json:"context_length,omitempty"`
Quantization string `json:"quantization,omitempty"`
Domain string `json:"domain,omitempty"`
EndpointURL string `json:"endpoint_url,omitempty"`
APIKeyPrefix string `json:"api_key_prefix"`
HFTokenSet bool `json:"hf_token_set"`
Limits ModelLimits `json:"limits"`
Status ModelStatusResource `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Residency string `json:"residency"`
IdleTTLSeconds int `json:"idle_ttl_seconds"`
EffectiveIdleTTLSeconds int `json:"effective_idle_ttl_seconds"`
ResidencyState string `json:"residency_state"`
LastActiveAt *time.Time `json:"last_active_at,omitempty"`
// SwapGroup is empty (no group) or a name shared by other models on
// the same node/GPU. SharesGPUWith lists every other model
// currently in that same group on the same node.
SwapGroup string `json:"swap_group,omitempty"`
// External is set for models served by an endpoint Levelrail does not run.
External *ExternalEndpoint `json:"external,omitempty"`
}
ModelResource mirrors internal/api's modelResource.
type ModelStatusResource ¶ added in v0.2.0
type ModelStatusResource struct {
Ready bool `json:"ready"`
Reason string `json:"reason"`
Message string `json:"message,omitempty"`
}
ModelStatusResource mirrors internal/api's modelStatusResource.
type ModelUsagePoint ¶ added in v0.2.0
type ModelUsagePoint struct {
Hour time.Time `json:"hour"`
ModelUsageTotals
}
ModelUsagePoint is one hour of usage.
type ModelUsageReport ¶ added in v0.2.0
type ModelUsageReport struct {
Model string `json:"model"`
From time.Time `json:"from"`
To time.Time `json:"to"`
Totals ModelUsageTotals `json:"totals"`
Series []ModelUsagePoint `json:"series"`
Keys []ModelKeyUsage `json:"keys"`
InFlight int `json:"in_flight"`
Note string `json:"note"`
}
ModelUsageReport mirrors models.UsageReport.
type ModelUsageTotals ¶ added in v0.2.0
type ModelUsageTotals struct {
Requests int64 `json:"requests"`
Status2xx int64 `json:"status_2xx"`
Status4xx int64 `json:"status_4xx"`
Status5xx int64 `json:"status_5xx"`
RateLimited int64 `json:"rate_limited"`
UsageRequests int64 `json:"usage_requests"`
InputTokens int64 `json:"input_tokens"`
OutputTokens int64 `json:"output_tokens"`
BytesOut int64 `json:"bytes_out"`
AvgDurationMs int64 `json:"avg_duration_ms"`
AvgTTFTMs int64 `json:"avg_ttft_ms"`
}
ModelUsageTotals mirrors models.UsageTotals.
type MoveAppWithVolumesRequest ¶ added in v0.2.0
type MoveAppWithVolumesRequest struct {
NodeID string `json:"node_id"`
}
MoveAppWithVolumesRequest mirrors internal/api's moveAppWithVolumesRequest, the same node_id shape SetAppNodeRequest establishes.
type MoveEnvironmentRequest ¶ added in v0.2.0
type MoveEnvironmentRequest struct {
EnvironmentID string `json:"environment_id"`
Confirm bool `json:"confirm,omitempty"`
}
MoveEnvironmentRequest is the body of PUT .../{name}/environment.
type MoveEnvironmentResult ¶ added in v0.2.0
type MoveEnvironmentResult struct {
Name string `json:"name"`
EnvironmentID string `json:"environment_id"`
PendingApproval *DeployApprovalResource `json:"pending_approval,omitempty"`
}
MoveEnvironmentResult is the 200 resource or the 202 pending approval a move into or out of a protected environment returns.
type MyAccessCapability ¶
type MyAccessCapability struct {
Key string `json:"key"`
Allowed bool `json:"allowed"`
RequiredAbility string `json:"required_ability"`
Reason string `json:"reason"`
}
MyAccessCapability is one area the caller can or cannot manage.
type MyAccessPolicy ¶
type MyAccessPolicy struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
}
MyAccessPolicy is one attached IAM policy in MyAccessResource.
type MyAccessResource ¶
type MyAccessResource struct {
Kind string `json:"kind"`
Name string `json:"name"`
Tier string `json:"tier"`
Abilities []string `json:"abilities"`
Teams []MyAccessTeam `json:"teams"`
LinkedProviders []string `json:"linked_providers"`
Policies []MyAccessPolicy `json:"policies"`
Capabilities []MyAccessCapability `json:"capabilities"`
}
MyAccessResource mirrors internal/api's myAccessResponse (account_access.go).
type MyAccessTeam ¶
type MyAccessTeam struct {
ID string `json:"id"`
Name string `json:"name"`
Role string `json:"role"`
}
MyAccessTeam is one team membership in MyAccessResource.
type MyActivity ¶
type MyActivity struct {
Entries []MyActivityEntry `json:"entries"`
NextCursor string `json:"next_cursor,omitempty"`
}
MyActivity mirrors internal/api's myActivityResponse.
type MyActivityEntry ¶
type MyActivityEntry struct {
ID string `json:"id"`
At time.Time `json:"at"`
Kind string `json:"kind"`
Event string `json:"event"`
ActorType string `json:"actor_type"`
TokenName string `json:"token_name,omitempty"`
Method string `json:"method"`
Path string `json:"path"`
StatusCode int `json:"status_code"`
RemoteAddr string `json:"remote_addr"`
ClientKind string `json:"client_kind"`
}
MyActivityEntry mirrors internal/api's myActivityEntry.
type MyActivityOptions ¶
MyActivityOptions are the optional filters of GET /api/v1/auth/my-activity.
type MyCredentials ¶
type MyCredentials struct {
Sessions []Session `json:"sessions"`
Tokens []SessionToken `json:"tokens"`
}
MyCredentials mirrors internal/api's myCredentialsResponse: live sessions and active tokens, never a token secret.
type NetworkPool ¶
type NetworkPool struct {
CIDR string `json:"cidr"`
Enabled bool `json:"enabled"`
Capacity int `json:"capacity"`
InUse int `json:"in_use"`
Percent int `json:"percent"`
}
NetworkPool is the pool block of GET /api/v1/system/networks.
type NetworkProxyDomainResource ¶ added in v0.2.0
type NetworkProxyDomainResource struct {
Domain string `json:"domain"`
App string `json:"app"`
NodeID string `json:"node_id"`
NodeName string `json:"node_name,omitempty"`
IsLocalNode bool `json:"is_local_node"`
Port int `json:"port"`
Reachable bool `json:"reachable"`
Reason string `json:"reason,omitempty"`
FixCommand string `json:"fix_command,omitempty"`
TLSStatus string `json:"tls_status,omitempty"`
TLSIssuer string `json:"tls_issuer,omitempty"`
TLSSource string `json:"tls_source,omitempty"`
}
NetworkProxyDomainResource mirrors internal/api's networkProxyDomainResource: one domain's reachability and TLS status row on the Traffic dashboard page.
type NetworkProxyResource ¶ added in v0.2.0
type NetworkProxyResource struct {
Domains []NetworkProxyDomainResource `json:"domains"`
}
NetworkProxyResource mirrors internal/api's networkProxyResponse, GET /api/v1/network/proxy's response body.
type NetworkResource ¶
type NetworkResource struct {
ContainerPort int `json:"container_port"`
HostPort int `json:"host_port,omitempty"`
Running bool `json:"running"`
// FallbackURL is the zero-config sslip.io URL this app is reachable
// at when it has no operator-configured domain and this control
// plane's own APP_PUBLIC_HOST is a real, publicly routable IP; see
// internal/api's own networkResource.FallbackURL doc comment.
FallbackURL string `json:"fallback_url,omitempty"`
// FallbackEnabled is the platform-wide automatic hostname toggle.
FallbackEnabled bool `json:"fallback_enabled"`
// PublicHost is the server address the fallback hostname is built from.
PublicHost string `json:"public_host,omitempty"`
}
NetworkResource mirrors internal/api's networkResource (internal/api/network.go): the live traffic path, container's declared port plus whatever host port Docker currently has bound.
type NetworkShareResource ¶ added in v0.2.0
type NetworkShareResource struct {
}
NetworkShareResource mirrors internal/api's networkShareResource. Deliberately no password field: never echoed back by the API.
type NetworkTopologyAppResource ¶ added in v0.2.0
type NetworkTopologyAppResource struct {
Name string `json:"name"`
NodeID string `json:"node_id"`
Domains []string `json:"domains,omitempty"`
DNSName string `json:"dns_name,omitempty"`
MeshAddress string `json:"mesh_address,omitempty"`
}
NetworkTopologyAppResource mirrors internal/api's networkTopologyAppResource.
type NetworkTopologyConnectionResource ¶ added in v0.2.0
type NetworkTopologyConnectionResource struct {
App string `json:"app"`
Database string `json:"database"`
EnvVar string `json:"env_var,omitempty"`
}
NetworkTopologyConnectionResource mirrors internal/api's networkTopologyConnectionResource.
type NetworkTopologyDatabaseResource ¶ added in v0.2.0
type NetworkTopologyDatabaseResource struct {
Name string `json:"name"`
Engine string `json:"engine"`
NodeID string `json:"node_id"`
DNSName string `json:"dns_name,omitempty"`
MeshAddress string `json:"mesh_address,omitempty"`
}
NetworkTopologyDatabaseResource mirrors internal/api's networkTopologyDatabaseResource.
type NetworkTopologyLoadBalancerResource ¶ added in v0.2.0
type NetworkTopologyLoadBalancerResource struct {
Service string `json:"service"`
Algorithm string `json:"algorithm"`
}
NetworkTopologyLoadBalancerResource mirrors internal/api's networkTopologyLoadBalancerResource.
type NetworkTopologyNodeResource ¶ added in v0.2.0
type NetworkTopologyNodeResource struct {
ID string `json:"id"`
Name string `json:"name"`
Region string `json:"region,omitempty"`
Status string `json:"status"`
Schedulable bool `json:"schedulable"`
MeshAddress string `json:"mesh_address,omitempty"`
IsLocal bool `json:"is_local"`
}
NetworkTopologyNodeResource mirrors internal/api's networkTopologyNodeResource.
type NetworkTopologyResource ¶ added in v0.2.0
type NetworkTopologyResource struct {
Zone string `json:"zone"`
MeshEnabled bool `json:"mesh_enabled"`
Nodes []NetworkTopologyNodeResource `json:"nodes"`
Apps []NetworkTopologyAppResource `json:"apps"`
Databases []NetworkTopologyDatabaseResource `json:"databases"`
LoadBalancers []NetworkTopologyLoadBalancerResource `json:"load_balancers"`
Connections []NetworkTopologyConnectionResource `json:"connections"`
}
NetworkTopologyResource mirrors internal/api's networkTopologyResponse, GET /api/v1/network/topology's response body.
type NodeAgentResource ¶ added in v0.2.0
type NodeAgentResource struct {
Version string `json:"version,omitempty"`
Commit string `json:"commit,omitempty"`
OS string `json:"os,omitempty"`
Arch string `json:"arch,omitempty"`
ReportedAt *time.Time `json:"reported_at,omitempty"`
Outdated bool `json:"outdated"`
MinVersion string `json:"min_version,omitempty"`
ControlPlaneVersion string `json:"control_plane_version"`
}
NodeAgentResource mirrors internal/api's nodeAgentResource.
type NodeAlertStatusResource ¶
type NodeAlertStatusResource struct {
PatchStatus string `json:"patch_status"`
NodeDiskSpace string `json:"node_disk_space"`
NodeResourceUsage string `json:"node_resource_usage"`
}
NodeAlertStatusResource mirrors internal/api's nodeAlertStatusResource (internal/api/nodes.go): each field is "ok", "firing", or "unknown", a live re-evaluation of this one node's own standing for that node-scoped, platform-wide alert kind, not a rule's stored aggregate value.
type NodeAllocation ¶
type NodeAllocation struct {
NodeID string `json:"node_id"`
Name string `json:"name"`
IsLocal bool `json:"is_local"`
Schedulable bool `json:"schedulable"`
Online bool `json:"online"`
Workloads int `json:"workloads"`
Dimensions []PlacementDimension `json:"dimensions"`
}
NodeAllocation is one node's allocatable capacity against its requested totals.
type NodeAllocations ¶
type NodeAllocations struct {
Policy PlacementPolicy `json:"policy"`
Nodes []NodeAllocation `json:"nodes"`
}
NodeAllocations is every node's allocation plus the policy applied.
type NodeCapacityForecastResource ¶ added in v0.2.0
type NodeCapacityForecastResource struct {
NodeID string `json:"node_id"`
LookbackWindow string `json:"lookback_window"`
Disk *CapacityForecastMetric `json:"disk,omitempty"`
Memory *CapacityForecastMetric `json:"memory,omitempty"`
Note string `json:"note"`
}
NodeCapacityForecastResource mirrors internal/api's nodeCapacityForecastResponse: GET /api/v1/nodes/{id}/capacity-forecast's wire shape. Note is always present, a plain-English restatement of this being a rough trend projection, not a guarantee.
type NodeCapacityMetric ¶
type NodeCapacityMetric struct {
Name string `json:"name"`
Level string `json:"level"`
Percent float64 `json:"percent"`
Free uint64 `json:"free"`
Total uint64 `json:"total"`
}
NodeCapacityMetric is one metric of GET /api/v1/nodes/{id}/capacity.
type NodeCapacityResource ¶
type NodeCapacityResource struct {
NodeID string `json:"node_id"`
Local bool `json:"local"`
HasReading bool `json:"has_reading"`
Status NodeCapacityStatus `json:"status"`
Settings NodeGuardrailSettings `json:"settings"`
CleanupSupported bool `json:"cleanup_supported"`
CleanupReason string `json:"cleanup_unsupported_reason,omitempty"`
}
NodeCapacityResource is GET /api/v1/nodes/{id}/capacity.
type NodeCapacityStatus ¶
type NodeCapacityStatus struct {
Metrics []NodeCapacityMetric `json:"metrics"`
Worst string `json:"worst"`
Reason string `json:"reason,omitempty"`
}
NodeCapacityStatus is a node's verdict across disk, inodes, memory and swap.
type NodeCertDrill ¶
type NodeCertDrill struct {
OK bool `json:"ok"`
Steps []NodeCertDrillStep `json:"steps"`
Before NodeCertDrillCert `json:"before"`
After NodeCertDrillCert `json:"after"`
}
NodeCertDrill is the result of POST /api/v1/nodes/{id}/cert/drill.
type NodeCertDrillCert ¶
type NodeCertDrillCert struct {
Serial string `json:"serial,omitempty"`
Generation int `json:"generation"`
NotAfter *time.Time `json:"not_after,omitempty"`
}
NodeCertDrillCert is the certificate state seen before or after a drill.
type NodeCertDrillStep ¶
type NodeCertDrillStep struct {
ID string `json:"id"`
Status string `json:"status"`
Detail string `json:"detail"`
}
NodeCertDrillStep is one step of a certificate rotation drill.
type NodeCertRenewal ¶
type NodeCertRenewal struct {
LastError string `json:"last_error"`
FailedAt *time.Time `json:"failed_at,omitempty"`
NextRetryAt *time.Time `json:"next_retry_at,omitempty"`
ConsecutiveFailures int `json:"consecutive_failures"`
}
NodeCertRenewal mirrors internal/api's nodeCertRenewal.
type NodeCertResource ¶ added in v0.2.0
type NodeCertResource struct {
// State is ok, expiring, critical, expired, revoked, or unknown.
State string `json:"state"`
NotAfter *time.Time `json:"not_after,omitempty"`
DaysRemaining *int `json:"days_remaining,omitempty"`
RenewedAt *time.Time `json:"renewed_at,omitempty"`
Generation int `json:"generation"`
KeyOrigin string `json:"key_origin"`
PreviousValidUntil *time.Time `json:"previous_valid_until,omitempty"`
RevokedAt *time.Time `json:"revoked_at,omitempty"`
WarningDays int `json:"warning_days"`
CriticalDays int `json:"critical_days"`
Renewal *NodeCertRenewal `json:"renewal,omitempty"`
}
NodeCertResource mirrors internal/api's nodeCertResource.
type NodeCleanupClass ¶
type NodeCleanupClass struct {
Name string `json:"name"`
Deletable bool `json:"deletable"`
Bytes int64 `json:"bytes"`
Items []NodeCleanupItem `json:"items"`
}
NodeCleanupClass groups cleanup candidates; Deletable false means shown only.
type NodeCleanupItem ¶
type NodeCleanupItem struct {
Name string `json:"name"`
Detail string `json:"detail,omitempty"`
SizeBytes int64 `json:"size_bytes"`
Action string `json:"action"`
}
NodeCleanupItem is one candidate in a cleanup class.
type NodeCleanupResult ¶
type NodeCleanupResult struct {
DryRun bool `json:"dry_run"`
Preview struct {
Classes []NodeCleanupClass `json:"classes"`
TotalBytes int64 `json:"total_bytes"`
} `json:"preview"`
FreedBytes int64 `json:"freed_bytes"`
Error string `json:"error,omitempty"`
}
NodeCleanupResult is the response of POST /api/v1/nodes/{id}/cleanup.
type NodeCleanupRunResource ¶
type NodeCleanupRunResource struct {
ID string `json:"id"`
StartedAt time.Time `json:"started_at"`
Trigger string `json:"trigger"`
Actor string `json:"actor"`
FreedBytes int64 `json:"freed_bytes"`
Classes []NodeCleanupClass `json:"classes"`
Error string `json:"error,omitempty"`
}
NodeCleanupRunResource is one entry of GET /api/v1/nodes/{id}/cleanup-runs.
type NodeDetectedDomain ¶
type NodeDetectedDomain struct {
Provider string `json:"provider,omitempty"`
Region string `json:"region,omitempty"`
Zone string `json:"zone,omitempty"`
InstanceID string `json:"instance_id,omitempty"`
Source string `json:"source,omitempty"`
MetadataDisabled bool `json:"metadata_disabled,omitempty"`
}
NodeDetectedDomain is a provider, region and zone, detected or stored.
type NodeDomainGroup ¶
type NodeDomainGroup struct {
Name string `json:"name"`
Region string `json:"region,omitempty"`
Providers []string `json:"providers,omitempty"`
NodeIDs []string `json:"node_ids"`
Nodes int `json:"nodes"`
Online int `json:"online_nodes"`
Schedulable int `json:"schedulable_nodes"`
Workloads int `json:"workloads"`
CPUMilli int64 `json:"cpu_milli"`
MemoryBytes int64 `json:"memory_bytes"`
DiskFreeBytes int64 `json:"disk_free_bytes"`
Unverified int `json:"unverified_nodes"`
}
NodeDomainGroup mirrors internal/placement.DomainGroup.
type NodeDomainRisk ¶
type NodeDomainRisk struct {
Kind string `json:"kind"`
Level string `json:"level"`
Name string `json:"name"`
NodeID string `json:"node_id"`
Replicas int `json:"replicas"`
Zone string `json:"zone,omitempty"`
Region string `json:"region,omitempty"`
Provider string `json:"provider,omitempty"`
Alternatives []string `json:"alternatives"`
Message string `json:"message"`
}
NodeDomainRisk mirrors internal/placement.DomainRisk.
type NodeDomains ¶
type NodeDomains struct {
Providers []NodeDomainGroup `json:"providers"`
Regions []NodeDomainGroup `json:"regions"`
Zones []NodeDomainGroup `json:"zones"`
Unlabeled int `json:"unlabeled_nodes"`
Total int `json:"total_nodes"`
Risks []NodeDomainRisk `json:"risks"`
}
NodeDomains mirrors internal/api's nodeDomainsResponse.
type NodeDrainPreview ¶
type NodeDrainPreview struct {
DryRun bool `json:"dry_run"`
NodeID string `json:"node_id"`
Services []string `json:"services"`
Databases []string `json:"databases"`
}
NodeDrainPreview is the dry run of a drain: what would move, nothing changed.
type NodeDrainResource ¶ added in v0.2.0
type NodeDrainResource struct {
ID string `json:"id"`
NodeID string `json:"node_id"`
TargetNodeID string `json:"target_node_id,omitempty"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
Blocked []DrainBlocked `json:"blocked"`
Moves []NodeMoveResource `json:"moves"`
StartedAt string `json:"started_at"`
UpdatedAt string `json:"updated_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
NodeDrainResource mirrors internal/api's nodeDrainResource.
func (NodeDrainResource) Done ¶ added in v0.2.0
func (d NodeDrainResource) Done() bool
Done reports whether the drain reached a final status.
type NodeFailureAction ¶
type NodeFailureAction struct {
Kind string `json:"kind"`
Name string `json:"name"`
Class string `json:"class"`
Status string `json:"status"`
Target string `json:"target,omitempty"`
Reason string `json:"reason,omitempty"`
}
NodeFailureAction is one resource of a failed node and what happens to it.
type NodeFailurePolicy ¶
type NodeFailurePolicy struct {
NodeID string `json:"node_id"`
Mode string `json:"mode"`
GraceSeconds int `json:"grace_seconds"`
}
NodeFailurePolicy is a node's stored override; empty mode and zero grace mean the default.
type NodeFailureStatus ¶
type NodeFailureStatus struct {
NodeID string `json:"node_id"`
Mode string `json:"mode"`
GraceSeconds int `json:"grace_seconds"`
Phase string `json:"phase"`
SilentSeconds int `json:"silent_seconds"`
GraceRemainingSeconds int `json:"grace_remaining_seconds"`
Reason string `json:"reason,omitempty"`
UnreachableAt *time.Time `json:"unreachable_at,omitempty"`
Consequences []NodeFailureAction `json:"consequences"`
Policy NodeFailurePolicy `json:"policy"`
}
NodeFailureStatus mirrors GET /api/v1/nodes/{id}/failure.
type NodeFailureSummary ¶
type NodeFailureSummary struct {
Phase string `json:"phase"`
Reason string `json:"reason,omitempty"`
NeedsYou int `json:"needs_decision"`
Moved int `json:"moved"`
Since string `json:"unreachable_at,omitempty"`
}
NodeFailureSummary is the compact failure view embedded in a node resource.
type NodeFit ¶ added in v0.2.0
type NodeFit struct {
NodeID string `json:"node_id"`
Name string `json:"name"`
IsLocal bool `json:"is_local"`
Eligible bool `json:"eligible"`
Current bool `json:"current"`
GPUs int `json:"gpus"`
TotalBytes int64 `json:"total_bytes"`
ReservedBytes int64 `json:"reserved_bytes"`
Verdict string `json:"verdict"`
WeightsSource string `json:"weights_source"`
WeightsBytes int64 `json:"weights_bytes"`
KVBytes int64 `json:"kv_bytes"`
OverheadBytes int64 `json:"overhead_bytes"`
NeedBytes int64 `json:"need_bytes"`
FreeBytes int64 `json:"free_bytes"`
ContextTokens int `json:"context_tokens"`
ContextAssumed bool `json:"context_assumed"`
Arithmetic string `json:"arithmetic"`
Reason string `json:"reason,omitempty"`
Suggestions []string `json:"suggestions"`
}
NodeFit mirrors internal/models.NodeFit.
type NodeGPUResource ¶ added in v0.2.0
type NodeGPUResource struct {
Present bool `json:"present"`
RuntimeInstalled bool `json:"runtime_installed"`
DriverVersion string `json:"driver_version,omitempty"`
GPUCount int `json:"gpu_count"`
ReservedGPUs int `json:"reserved_gpus"`
FreeGPUs int `json:"free_gpus"`
TotalVRAMMiB int64 `json:"total_vram_mib"`
UsedVRAMMiB int64 `json:"used_vram_mib"`
Reservations []string `json:"reservations"`
}
NodeGPUResource mirrors internal/api's nodeGPUResource, the GPU summary on a node.
type NodeGuardrailSettings ¶
type NodeGuardrailSettings struct {
DiskWarnFreePct *float64 `json:"disk_warn_free_pct"`
DiskCritFreePct *float64 `json:"disk_crit_free_pct"`
InodeWarnFreePct *float64 `json:"inode_warn_free_pct"`
InodeCritFreePct *float64 `json:"inode_crit_free_pct"`
MemWarnAvailPct *float64 `json:"mem_warn_avail_pct"`
MemCritAvailPct *float64 `json:"mem_crit_avail_pct"`
SwapWarnUsedPct *float64 `json:"swap_warn_used_pct"`
SwapCritUsedPct *float64 `json:"swap_crit_used_pct"`
AutoClean bool `json:"auto_clean"`
}
NodeGuardrailSettings are a node's threshold overrides; nil uses the default.
type NodeLabels ¶ added in v0.2.0
NodeLabels is the body of the node labels routes.
type NodeMetricsResource ¶ added in v0.2.0
type NodeMetricsResource struct {
Metric string `json:"metric"`
Points []MetricPointResource `json:"points"`
ResourceCount int `json:"resource_count"`
}
NodeMetricsResource mirrors internal/api's nodeMetricsResponse (internal/api/node_metrics.go): AppMetricsResource's fields plus ResourceCount, how many of the node's placed services actually contributed a sample to this response.
type NodeMoveResource ¶ added in v0.2.0
type NodeMoveResource struct {
ID string `json:"id"`
Kind string `json:"kind"`
Resource string `json:"resource"`
FromNodeID string `json:"from_node_id"`
ToNodeID string `json:"to_node_id"`
Stateful bool `json:"stateful"`
Volumes []string `json:"volumes"`
Phase string `json:"phase"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
DrainID string `json:"drain_id,omitempty"`
Steps []NodeMoveStep `json:"steps"`
StartedAt string `json:"started_at"`
UpdatedAt string `json:"updated_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
NodeMoveResource mirrors internal/api's nodeMoveResource.
func (NodeMoveResource) Done ¶ added in v0.2.0
func (m NodeMoveResource) Done() bool
Done reports whether the move reached a final status.
type NodeMoveStep ¶ added in v0.2.0
type NodeMoveStep struct {
Phase string `json:"phase"`
Outcome string `json:"outcome"`
Message string `json:"message,omitempty"`
At string `json:"at"`
}
NodeMoveStep is one recorded phase of a node move.
type NodeOnboarding ¶
type NodeOnboarding struct {
NodeID string `json:"node_id"`
Stage string `json:"stage"`
Reported bool `json:"reported"`
Stale bool `json:"stale"`
ReportedAt *time.Time `json:"reported_at,omitempty"`
Detected *NodeDetectedDomain `json:"detected,omitempty"`
Domain NodeDetectedDomain `json:"domain"`
Checks []NodePreflightCheck `json:"checks"`
Summary NodePreflightSummary `json:"summary"`
}
NodeOnboarding mirrors internal/api's nodeOnboardingResponse.
func (NodeOnboarding) Done ¶
func (o NodeOnboarding) Done() bool
Done reports whether the node reported facts, so the preflight is final.
type NodePatchStatusResource ¶
type NodePatchStatusResource struct {
Checked bool `json:"checked"`
Total int `json:"total"`
Security int `json:"security"`
CheckedAt *time.Time `json:"checked_at,omitempty"`
}
NodePatchStatusResource mirrors internal/api's nodePatchStatusResponse (internal/api/node_patch_status.go). Checked distinguishes "never checked" (Total/Security both zero-valued and meaningless) from checked-and-genuinely-up-to-date (Checked true, Total 0): callers must branch on Checked first.
type NodePreflightCheck ¶
type NodePreflightCheck struct {
ID string `json:"id"`
Status string `json:"status"`
Detail string `json:"detail"`
Fix string `json:"fix,omitempty"`
FixCommand string `json:"fix_command,omitempty"`
}
NodePreflightCheck mirrors internal/nodepreflight.Check.
type NodePreflightSummary ¶
type NodePreflightSummary struct {
Pass int `json:"pass"`
Warn int `json:"warn"`
Fail int `json:"fail"`
Unknown int `json:"unknown"`
Ready bool `json:"ready"`
}
NodePreflightSummary mirrors internal/nodepreflight.Summary.
type NodeProviderRegionResource ¶ added in v0.2.0
NodeProviderRegionResource mirrors internal/api's nodeProviderRegionResource.
type NodeProviderResource ¶ added in v0.2.0
type NodeProviderResource struct {
Provider string `json:"provider"`
HasToken bool `json:"has_token"`
Status string `json:"status,omitempty"`
Methods []string `json:"methods,omitempty"`
Method string `json:"method,omitempty"`
Label string `json:"label,omitempty"`
Location string `json:"location,omitempty"`
Notes string `json:"notes,omitempty"`
ConnectedBy string `json:"connected_by,omitempty"`
ConnectedAt *time.Time `json:"connected_at,omitempty"`
LastTestedAt *time.Time `json:"last_tested_at,omitempty"`
LastTestOK *bool `json:"last_test_ok,omitempty"`
LastTestDetail string `json:"last_test_detail,omitempty"`
}
NodeProviderResource mirrors internal/api's nodeProviderResource.
type NodeProviderSizeResource ¶ added in v0.2.0
type NodeProviderSizeResource struct {
ID string `json:"id"`
Name string `json:"name"`
VCPUs int `json:"vcpus"`
MemoryMB int `json:"memory_mb"`
DiskGB int `json:"disk_gb"`
PriceMonthly string `json:"price_monthly,omitempty"`
Currency string `json:"currency,omitempty"`
}
NodeProviderSizeResource mirrors internal/api's nodeProviderSizeResource.
type NodeProviderTestResult ¶
type NodeProviderTestResult struct {
OK bool `json:"ok"`
Message string `json:"message"`
TestedAt time.Time `json:"tested_at"`
}
NodeProviderTestResult mirrors internal/api's nodeProviderTestResult.
type NodeProvisionResource ¶ added in v0.2.0
type NodeProvisionResource struct {
ID string `json:"id"`
Provider string `json:"provider"`
Region string `json:"region"`
Size string `json:"size"`
Name string `json:"name"`
Role string `json:"role"`
Status string `json:"status"`
IPAddress string `json:"ip_address,omitempty"`
NodeID string `json:"node_id,omitempty"`
FailureReason string `json:"failure_reason,omitempty"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
NodeProvisionResource mirrors internal/api's nodeProvisionResource.
type NodeReenrollTokenResponse ¶ added in v0.2.0
type NodeReenrollTokenResponse struct {
Token string `json:"token"`
NodeID string `json:"node_id"`
ExpiresAt time.Time `json:"expires_at"`
CAFingerprint string `json:"ca_fingerprint,omitempty"`
AgentBinary string `json:"agent_binary"`
}
NodeReenrollTokenResponse mirrors internal/api's reenrollTokenResponse: the only time the token is shown.
type NodeResource ¶
type NodeResource struct {
ID string `json:"id"`
Name string `json:"name"`
Address string `json:"address,omitempty"`
Status string `json:"status"`
CertFingerprint string `json:"cert_fingerprint,omitempty"`
JoinedAt *time.Time `json:"joined_at,omitempty"`
LastSeenAt *time.Time `json:"last_seen_at,omitempty"`
// Schedulable is the cordon state: false means the node refuses new
// placements while whatever's already running there keeps running.
Schedulable bool `json:"schedulable"`
AcceptsAppWorkloads bool `json:"accepts_app_workloads"`
AcceptsBuildWorkloads bool `json:"accepts_build_workloads"`
Region string `json:"region,omitempty"`
Provider string `json:"provider,omitempty"`
Zone string `json:"zone,omitempty"`
CreatedAt time.Time `json:"created_at"`
// AlertStatus is only set by GET /api/v1/nodes/{id} (a single-node
// fetch), never the list endpoint; nil when telemetry isn't
// configured on the control plane.
AlertStatus *NodeAlertStatusResource `json:"alert_status,omitempty"`
// IsLocal is true for the one node running the control plane process
// itself, the only node with real disk/memory host metrics.
IsLocal bool `json:"is_local"`
// StatusReason is a machine-readable code for a status needing
// operator action, e.g. "enrolled_never_connected".
StatusReason string `json:"status_reason,omitempty"`
// GPU is set when the node reported an NVIDIA GPU.
GPU *NodeGPUResource `json:"gpu,omitempty"`
// Cert and Agent mirror the node's agent certificate lifecycle and the
// agent's self-reported build (node_cert.go in this package).
Cert *NodeCertResource `json:"cert,omitempty"`
Agent *NodeAgentResource `json:"agent,omitempty"`
// Failure is set while the node has a live failure state.
Failure *NodeFailureSummary `json:"failure,omitempty"`
}
NodeResource mirrors internal/api's nodeResource (internal/api/nodes.go).
type NodeResourceUsageResource ¶ added in v0.2.0
type NodeResourceUsageResource struct {
NodeID string `json:"node_id"`
Name string `json:"name"`
IsLocal bool `json:"is_local"`
CPUPercent *float64 `json:"cpu_percent,omitempty"`
MemoryUsageBytes *float64 `json:"memory_usage_bytes,omitempty"`
MemoryTotalBytes *float64 `json:"memory_total_bytes,omitempty"`
DiskUsedBytes *float64 `json:"disk_used_bytes,omitempty"`
DiskTotalBytes *float64 `json:"disk_total_bytes,omitempty"`
LevelrailMemoryBytes *float64 `json:"levelrail_memory_bytes,omitempty"`
OtherContainersMemoryBytes *float64 `json:"other_containers_memory_bytes,omitempty"`
OtherContainers []UnmanagedContainerUse `json:"other_containers,omitempty"`
SystemMemoryBytes *float64 `json:"system_memory_bytes,omitempty"`
}
NodeResourceUsageResource mirrors internal/api's nodeResourceUsageResource (internal/api/node_resource_usage.go): one node's latest known CPU/memory/disk reading. CPUPercent/ MemoryUsageBytes are the sum of every placed service's latest sample, not a true host read; MemoryTotalBytes/DiskUsedBytes/DiskTotalBytes are real host reads but (today) only ever populated for the node running the control plane itself. A nil field means no data yet, not zero usage.
type NodeSecurityEvent ¶
type NodeSecurityEvent struct {
ID int64 `json:"id"`
Kind string `json:"kind"`
Outcome string `json:"outcome"`
Reason string `json:"reason,omitempty"`
SourceIP string `json:"source_ip,omitempty"`
Count int `json:"count"`
FirstAt time.Time `json:"first_at"`
LastAt time.Time `json:"last_at"`
TokenID string `json:"token_id,omitempty"`
Subject string `json:"subject,omitempty"`
Message string `json:"message,omitempty"`
Serial string `json:"serial,omitempty"`
Fingerprint string `json:"fingerprint,omitempty"`
NotBefore int64 `json:"not_before,omitempty"`
NotAfter int64 `json:"not_after,omitempty"`
Actor string `json:"actor,omitempty"`
}
NodeSecurityEvent mirrors internal/api's nodeSecurityEventResource.
type NodeStatusEventResource ¶ added in v0.2.0
type NodeStatusEventResource struct {
FromStatus string `json:"from_status"`
ToStatus string `json:"to_status"`
CreatedAt time.Time `json:"created_at"`
}
NodeStatusEventResource mirrors internal/api's nodeStatusEventResource.
type NodeTrust ¶
type NodeTrust struct {
NodeID string `json:"node_id"`
IsLocal bool `json:"is_local"`
Status NodeTrustStatus `json:"status"`
CA *NodeTrustCA `json:"ca,omitempty"`
Cert *NodeTrustCert `json:"certificate,omitempty"`
Renewal *NodeTrustRenewal `json:"renewal,omitempty"`
Validation *NodeTrustValidation `json:"validation,omitempty"`
}
NodeTrust mirrors internal/api's nodeTrustResource.
type NodeTrustCA ¶
type NodeTrustCA struct {
Fingerprint string `json:"fingerprint,omitempty"`
PinState string `json:"pin_state,omitempty"`
PinReportedAt *time.Time `json:"pin_reported_at,omitempty"`
}
NodeTrustCA mirrors internal/api's nodeTrustCA.
type NodeTrustCert ¶
type NodeTrustCert struct {
Fingerprint string `json:"fingerprint,omitempty"`
Serial string `json:"serial,omitempty"`
IssuedAt *time.Time `json:"issued_at,omitempty"`
NotAfter *time.Time `json:"not_after,omitempty"`
DaysRemaining *int `json:"days_remaining,omitempty"`
LifetimeUsed *float64 `json:"lifetime_used,omitempty"`
KeyOrigin string `json:"key_origin"`
}
NodeTrustCert mirrors internal/api's nodeTrustCert.
type NodeTrustRenewal ¶
type NodeTrustRenewal struct {
NextRenewAt *time.Time `json:"next_renew_at,omitempty"`
NextRenewEstimated bool `json:"next_renew_estimated,omitempty"`
LastRenewedAt *time.Time `json:"last_renewed_at,omitempty"`
RenewalCount int `json:"renewal_count"`
LastError string `json:"last_error,omitempty"`
LastFailedAt *time.Time `json:"last_failed_at,omitempty"`
NextRetryAt *time.Time `json:"next_retry_at,omitempty"`
ConsecutiveFailures int `json:"consecutive_failures"`
}
NodeTrustRenewal mirrors internal/api's nodeTrustRenewal.
type NodeTrustStatus ¶
NodeTrustStatus mirrors internal/api's nodeTrustStatus.
type NodeTrustValidation ¶
type NodeTrustValidation struct {
WindowHours int `json:"window_hours"`
Accepted int `json:"accepted"`
Rejected int `json:"rejected"`
LastAcceptedAt *time.Time `json:"last_accepted_at,omitempty"`
LastRejectedAt *time.Time `json:"last_rejected_at,omitempty"`
}
NodeTrustValidation mirrors internal/api's nodeTrustValidation.
type NotificationChannelResource ¶
type NotificationChannelResource struct {
ID string `json:"id"`
Name string `json:"name"`
Kind string `json:"kind"`
NotifyURL string `json:"notify_url"`
Enabled bool `json:"enabled"`
// NotifyDeviceLogin is true when the channel gets a link-only notice
// while a CLI login awaits approval.
NotifyDeviceLogin bool `json:"notify_device_login"`
// NotifyDeviceLoginExpired is true when the channel is told a pending
// CLI login expired unapproved.
NotifyDeviceLoginExpired bool `json:"notify_device_login_expired"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
NotificationChannelResource mirrors internal/api's notificationChannelResource (internal/api/notification_channels.go).
type NotificationDeliveryResource ¶
type NotificationDeliveryResource struct {
ID string `json:"id"`
ChannelID string `json:"channel_id"`
Trigger string `json:"trigger"`
Success bool `json:"success"`
Error string `json:"error,omitempty"`
CreatedAt string `json:"created_at"`
}
NotificationDeliveryResource mirrors internal/api's notificationDeliveryResource (internal/api/notification_channels.go).
type OAuthProviderSettingsResource ¶ added in v0.2.0
type OAuthProviderSettingsResource struct {
Provider string `json:"provider"`
Enabled bool `json:"enabled"`
ClientID string `json:"client_id,omitempty"`
AllowedEmailDomain string `json:"allowed_email_domain,omitempty"`
IssuerURL string `json:"issuer_url,omitempty"`
DisplayName string `json:"display_name,omitempty"`
HasClientSecret bool `json:"has_client_secret"`
}
OAuthProviderSettingsResource mirrors internal/api's oauthProviderSettingsResource (internal/api/oauth_settings.go): GET/PUT /api/v1/settings/oauth[/{provider}]'s wire shape. ClientSecret is never included in a response, only HasClientSecret.
type OAuthSSOEvaluateRequest ¶
type OAuthSSOEvaluateRequest struct {
Email string `json:"email"`
EmailVerified bool `json:"email_verified"`
Groups []string `json:"groups"`
}
OAuthSSOEvaluateRequest mirrors the API's oauthSSOEvaluateRequest.
type OAuthSSOEvaluation ¶
type OAuthSSOEvaluation struct {
Provider string `json:"provider"`
Email string `json:"email"`
EmailVerified bool `json:"email_verified"`
GroupsClaim string `json:"groups_claim"`
GroupsFound bool `json:"groups_found"`
Groups []string `json:"groups"`
GroupLikeClaims []string `json:"group_like_claims"`
RoleID string `json:"role_id"`
RoleSource string `json:"role_source"`
AccountState string `json:"account_state"`
SyncRoles bool `json:"sync_roles"`
Allowed bool `json:"allowed"`
RefusalCode string `json:"refusal_code,omitempty"`
Issues []OAuthSSOIssue `json:"issues"`
}
OAuthSSOEvaluation mirrors the API's ssoEvaluation.
type OAuthSSOFix ¶
type OAuthSSOFix struct {
Kind string `json:"kind"`
Action string `json:"action,omitempty"`
Value string `json:"value,omitempty"`
}
OAuthSSOFix mirrors the API's ssoFix.
type OAuthSSOIssue ¶
type OAuthSSOIssue struct {
Code string `json:"code"`
Fix OAuthSSOFix `json:"fix"`
}
OAuthSSOIssue mirrors the API's ssoIssue.
type OAuthSSOPolicy ¶
type OAuthSSOPolicy struct {
Provider string `json:"provider"`
Name string `json:"name"`
Enabled bool `json:"enabled"`
GroupsSupported bool `json:"groups_supported"`
GroupsClaim string `json:"groups_claim"`
SyncRoles bool `json:"sync_roles"`
DefaultRoleID string `json:"default_role_id"`
JITProvisioning bool `json:"jit_provisioning"`
AllowedDomains []string `json:"allowed_domains"`
}
OAuthSSOPolicy mirrors the API's oauthSSOPolicyResource.
type OAuthSSOPolicyRequest ¶
type OAuthSSOPolicyRequest struct {
GroupsClaim string `json:"groups_claim"`
SyncRoles bool `json:"sync_roles"`
DefaultRoleID string `json:"default_role_id"`
JITProvisioning bool `json:"jit_provisioning"`
AllowedDomains []string `json:"allowed_domains"`
}
OAuthSSOPolicyRequest mirrors the API's oauthSSOPolicyRequest.
type OnboardingStateResource ¶
type OnboardingStateResource struct {
Completed bool `json:"completed"`
CurrentStep string `json:"current_step,omitempty"`
Steps map[string]string `json:"steps,omitempty"`
}
OnboardingStateResource mirrors internal/api's onboardingStateResource (internal/api/onboarding.go).
type OpenAPIRouteResource ¶ added in v0.2.0
type OpenAPIRouteResource struct {
Method string `json:"method"`
Path string `json:"path"`
Ability string `json:"ability"`
Group string `json:"group"`
Handler string `json:"handler"`
Description string `json:"description,omitempty"`
RequestBody json.RawMessage `json:"requestBody,omitempty"`
ResponseBody json.RawMessage `json:"responseBody,omitempty"`
}
OpenAPIRouteResource mirrors internal/api's openAPISpecRoute exactly: one registered route plus, for a hand-annotated few, a worked request/response example (see internal/api/openapi.go).
type OpenAPISpecResource ¶ added in v0.2.0
type OpenAPISpecResource struct {
Version int `json:"version"`
Count int `json:"count"`
ExampleCount int `json:"exampleCount"`
Routes []OpenAPIRouteResource `json:"routes"`
}
OpenAPISpecResource mirrors internal/api's openAPISpec: the "levelrail-cli api-docs" and web API explorer's shared data source, generated at build time by scripts/gen-api-reference from the routes*.go registrations.
type Option ¶
type Option func(*Client)
Option configures a Client at construction time. See WithUserAgent.
func WithNoCredentialsFix ¶
WithNoCredentialsFix replaces the message of a 401 answered to a request that carried no token, so the caller can name the exact command that fixes it.
func WithRetry ¶
func WithRetry(p RetryPolicy) Option
WithRetry enables bounded retry for idempotent requests and requests carrying an Idempotency-Key.
func WithUserAgent ¶
WithUserAgent sets the User-Agent header on every request this Client sends, so the control plane's audit log (internal/api's clientKindFromUserAgent) can tell which real client made a call rather than lumping every bearer-token caller into one bucket. Each of this project's own callers passes its own value: cmd/levelrail-cli sets "levelrail-cli/<version>", cmd/levelrail-mcp sets "levelrail-mcp/<version>".
type OrganizationResource ¶
type OrganizationResource struct {
ID string `json:"id"`
Name string `json:"name"`
CreatedAt string `json:"created_at"`
}
OrganizationResource mirrors internal/api's organizationResource (internal/api/organizations.go).
type OrphanFailure ¶ added in v0.2.0
type OrphanFailure struct {
OrphanResource
Error string `json:"error"`
}
OrphanFailure is an orphan the reaper could not remove.
type OrphanFinding ¶ added in v0.2.0
type OrphanFinding struct {
OrphanResource
FirstSeenAt *string `json:"first_seen_at,omitempty"`
ReapAfter *string `json:"reap_after,omitempty"`
Due bool `json:"due"`
}
OrphanFinding is an OrphanResource plus its grace period status.
type OrphanReport ¶ added in v0.2.0
type OrphanReport struct {
DryRun bool `json:"dry_run"`
Findings []OrphanFinding `json:"findings"`
Removed []OrphanResource `json:"removed"`
Failed []OrphanFailure `json:"failed,omitempty"`
Unreachable []string `json:"unreachable,omitempty"`
Halted string `json:"halted,omitempty"`
}
OrphanReport mirrors internal/orphans.Report.
type OrphanResource ¶ added in v0.2.0
type OrphanResource struct {
Kind string `json:"kind"`
Name string `json:"name"`
ID string `json:"id,omitempty"`
NodeID string `json:"node_id"`
Reason string `json:"reason"`
Image string `json:"image,omitempty"`
SizeBytes int64 `json:"size_bytes,omitempty"`
PlacedOn string `json:"placed_on,omitempty"`
Skip string `json:"skip,omitempty"`
}
OrphanResource mirrors internal/orphans.Orphan: a leftover container or volume that desired state no longer accounts for.
type OrphanedVolumeResource ¶ added in v0.2.0
type OrphanedVolumeResource struct {
Name string `json:"name"`
SizeBytes *int64 `json:"size_bytes,omitempty"`
CreatedAt string `json:"created_at,omitempty"`
}
OrphanedVolumeResource mirrors internal/api's orphanedVolumeResource: one of this instance's own named Docker volumes that current desired state no longer references. SizeBytes is nil when the volume driver didn't report a size, never a fabricated 0.
type OutageCheck ¶
type OutageCheck struct {
ID string `json:"id"`
Status string `json:"status"`
Detail string `json:"detail"`
Fix string `json:"fix,omitempty"`
}
OutageCheck is one survival property in a resilience report.
type OutageReport ¶
type OutageReport struct {
GeneratedAt time.Time `json:"generated_at"`
Simulated bool `json:"simulated"`
Overall string `json:"overall"`
Scopes []OutageScope `json:"scopes"`
}
OutageReport is GET /api/v1/system/resilience.
type OutageScope ¶
type OutageScope struct {
Kind string `json:"kind"`
ID string `json:"id"`
Name string `json:"name"`
Checks []OutageCheck `json:"checks"`
}
OutageScope groups the checks of the ingress or one node.
type PITRRestoreHistoryResource ¶ added in v0.2.0
type PITRRestoreHistoryResource struct {
ID string `json:"id"`
DatabaseName string `json:"database_name"`
BaseBackupHistoryID string `json:"base_backup_history_id"`
TargetTimestamp string `json:"target_timestamp"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
PITRRestoreHistoryResource mirrors internal/api's pitrRestoreHistoryResource: GET/POST .../pitr-restore(s).
type PITRStatusResource ¶ added in v0.2.0
type PITRStatusResource struct {
Engine string `json:"engine,omitempty"`
// RestoreMode is "in_place" (Postgres) or "new_database" (MySQL, MariaDB).
RestoreMode string `json:"restore_mode,omitempty"`
Enabled bool `json:"enabled"`
EnabledAt string `json:"enabled_at,omitempty"`
HasBaseBackup bool `json:"has_base_backup"`
WindowStart string `json:"window_start,omitempty"`
WindowEnd string `json:"window_end,omitempty"`
WindowError string `json:"window_error,omitempty"`
// WALShip is the last shipping outcome of the WAL archive to the backup
// target; nil until a pass has run.
WALShip *WALShipResource `json:"wal_ship,omitempty"`
}
PITRStatusResource mirrors internal/api's pitrStatusResource (internal/api/pitr.go): GET /api/v1/databases/{name}/pitr.
type PRPreviewEnvOverride ¶
type PRPreviewEnvOverride struct {
ID string `json:"id"`
Key string `json:"key"`
Value string `json:"value"`
Secret bool `json:"secret"`
UpdatedAt string `json:"updated_at"`
}
PRPreviewEnvOverride mirrors internal/api's prPreviewEnvResource: one env override for a single pull request's preview. Value is "" for a secret.
type PackageRegistryResource ¶
type PackageRegistryResource struct {
ID string `json:"id"`
Name string `json:"name"`
Ecosystem string `json:"ecosystem"`
URL string `json:"url"`
Username string `json:"username,omitempty"`
ModulePatterns string `json:"module_patterns,omitempty"`
ScopeKind string `json:"scope_kind"`
ScopeRef string `json:"scope_ref,omitempty"`
BuildSecretID string `json:"build_secret_id"`
CreatedBy string `json:"created_by,omitempty"`
CreatedAt time.Time `json:"created_at"`
}
PackageRegistryResource mirrors internal/api's packageRegistryResource.
type PatchEnvironmentRequest ¶ added in v0.2.0
type PatchEnvironmentRequest struct {
Name *string `json:"name,omitempty"`
Kind *string `json:"kind,omitempty"`
SortOrder *int `json:"sort_order,omitempty"`
Protected *bool `json:"protected,omitempty"`
}
PatchEnvironmentRequest mirrors internal/api's updateEnvironmentRequest; nil fields are left unchanged.
type PendingChange ¶ added in v0.2.0
type PendingChange struct {
Kind string `json:"kind"`
Keys []string `json:"keys,omitempty"`
Since string `json:"since"`
}
PendingChange mirrors internal/api's pendingChange.
type PendingChanges ¶ added in v0.2.0
type PendingChanges struct {
Pending bool `json:"pending"`
Changes []PendingChange `json:"changes"`
ApplyAction string `json:"apply_action"`
}
PendingChanges mirrors internal/api's pendingChangesResource.
type PendingJoinToken ¶
type PendingJoinToken struct {
ID string `json:"id"`
Purpose string `json:"purpose"`
NodeID string `json:"node_id,omitempty"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
}
PendingJoinToken is an unused, unexpired node join token (never its secret).
type PipelineApproval ¶ added in v0.2.0
type PipelineApproval struct {
ID int64 `json:"id"`
Job string `json:"job"`
StepIndex int `json:"step_index"`
Message string `json:"message"`
RequiredAbility string `json:"required_ability"`
Decision string `json:"decision,omitempty"`
DecidedBy string `json:"decided_by,omitempty"`
Comment string `json:"comment,omitempty"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
CreatedAt time.Time `json:"created_at"`
DecidedAt *time.Time `json:"decided_at,omitempty"`
}
PipelineApproval is one manual approval gate of a run.
type PipelineArtifact ¶
type PipelineArtifact struct {
ID string `json:"id"`
Job string `json:"job"`
Name string `json:"name"`
SizeBytes int64 `json:"size_bytes"`
SHA256 string `json:"sha256"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
}
PipelineArtifact is one archive a job stored.
type PipelineFix ¶
type PipelineFix struct {
Code string `json:"code"`
Kind string `json:"kind"`
Job string `json:"job"`
Target string `json:"target,omitempty"`
Hint string `json:"hint"`
Match string `json:"match"`
}
PipelineFix is a typed suggestion for a failed job.
type PipelineFixResult ¶
type PipelineFixResult struct {
Pipeline string `json:"pipeline"`
Run string `json:"run,omitempty"`
}
PipelineFixResult is the outcome of applying a fix.
type PipelineHold ¶ added in v0.2.0
type PipelineHold struct {
State string `json:"state"`
Reason string `json:"reason"`
By string `json:"by,omitempty"`
At *time.Time `json:"at,omitempty"`
}
PipelineHold is a run held for approval, such as a fork pull request.
type PipelineInsights ¶
type PipelineInsights struct {
Window int `json:"window"`
Jobs []PipelineJobInsight `json:"jobs"`
DiffRunID string `json:"diff_run_id,omitempty"`
DiffBaseID string `json:"diff_base_run_id,omitempty"`
Diff []PipelineJobDelta `json:"diff"`
}
PipelineInsights is the run-over-run view of one pipeline.
type PipelineIssue ¶ added in v0.2.0
type PipelineIssue struct {
Path string `json:"path"`
Line int `json:"line"`
Message string `json:"message"`
}
PipelineIssue is one validation problem in a pipeline definition.
type PipelineJobDelta ¶
type PipelineJobDelta struct {
Job string `json:"job"`
BaselineSeconds int64 `json:"baseline_seconds"`
CurrentSeconds int64 `json:"current_seconds"`
DeltaSeconds int64 `json:"delta_seconds"`
DeltaPercent float64 `json:"delta_percent"`
}
PipelineJobDelta is a job's duration change between two runs.
type PipelineJobInsight ¶
type PipelineJobInsight struct {
Job string `json:"job"`
Runs int `json:"runs"`
Failures int `json:"failures"`
FailureRate float64 `json:"failure_rate"`
P50Seconds int64 `json:"p50_seconds"`
LastSeconds int64 `json:"last_seconds"`
Flaky bool `json:"flaky"`
FlakyReason string `json:"flaky_reason,omitempty"`
}
PipelineJobInsight is one job's stats over recent runs.
type PipelineJobView ¶ added in v0.2.0
type PipelineJobView struct {
Key string `json:"key"`
Name string `json:"name"`
Stage string `json:"stage,omitempty"`
Needs []string `json:"needs"`
Matrix map[string]string `json:"matrix,omitempty"`
NodeID string `json:"node_id,omitempty"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
Attempt int `json:"attempt"`
Outputs map[string]string `json:"outputs,omitempty"`
StartedAt *time.Time `json:"started_at,omitempty"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
Steps []PipelineStepView `json:"steps"`
}
PipelineJobView is one job of a run with its steps.
type PipelineLogLine ¶ added in v0.2.0
type PipelineLogLine struct {
ID int64 `json:"id"`
Job string `json:"job"`
Step int `json:"step"`
Stream string `json:"stream"`
Line string `json:"line"`
Time time.Time `json:"time"`
}
PipelineLogLine is one output line of a run.
type PipelineOIDCResource ¶ added in v0.2.0
type PipelineOIDCResource struct {
Configured bool `json:"configured"`
IssuerURL string `json:"issuer_url,omitempty"`
JWKSURL string `json:"jwks_url,omitempty"`
RotationSupported bool `json:"rotation_supported"`
}
PipelineOIDCResource mirrors internal/api's oidcInfoResource: whether pipeline jobs can mint OIDC tokens on this control plane, and the URLs an operator wires into a cloud provider's OIDC trust policy.
type PipelineOIDCRotation ¶ added in v0.2.0
type PipelineOIDCRotation struct {
OldKID string `json:"old_kid"`
NewKID string `json:"new_kid"`
RetireAt time.Time `json:"retire_at"`
RetiringCount int `json:"retiring_count"`
}
PipelineOIDCRotation mirrors internal/api's rotatePipelineOIDCKeyResponse.
type PipelineParameter ¶
type PipelineParameter struct {
Name string `json:"name"`
Type string `json:"type,omitempty"`
Default string `json:"default,omitempty"`
Choices []string `json:"choices,omitempty"`
Required bool `json:"required,omitempty"`
Description string `json:"description,omitempty"`
}
PipelineParameter mirrors a declared run parameter.
type PipelineReport ¶ added in v0.2.0
type PipelineReport struct {
Provider string `json:"provider,omitempty"`
State string `json:"state,omitempty"`
URL string `json:"url,omitempty"`
Warning string `json:"warning,omitempty"`
}
PipelineReport mirrors internal/api's pipelineReport: the run's commit status as posted to the git forge.
type PipelineResource ¶ added in v0.2.0
type PipelineResource struct {
ID string `json:"id"`
App string `json:"app"`
Name string `json:"name"`
Source string `json:"source"`
Enabled bool `json:"enabled"`
YAML string `json:"yaml,omitempty"`
Triggers []string `json:"triggers,omitempty"`
// Parameters are the values a run may set.
Parameters []PipelineParameter `json:"parameters,omitempty"`
Jobs int `json:"jobs"`
LastRun *RunBrief `json:"last_run,omitempty"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
SourceSHA string `json:"source_sha,omitempty"`
Diverged bool `json:"diverged,omitempty"`
}
PipelineResource mirrors internal/api's pipelineResource.
type PipelineRunResource ¶ added in v0.2.0
type PipelineRunResource struct {
ID string `json:"id"`
PipelineID string `json:"pipeline_id"`
PipelineName string `json:"pipeline_name"`
App string `json:"app"`
Number int `json:"number"`
Trigger string `json:"trigger"`
Actor string `json:"actor,omitempty"`
Ref string `json:"ref,omitempty"`
CommitSHA string `json:"commit_sha,omitempty"`
Inputs map[string]string `json:"inputs,omitempty"`
PayloadBytes int `json:"payload_bytes,omitempty"`
PayloadType string `json:"payload_type,omitempty"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
CreatedAt time.Time `json:"created_at"`
StartedAt *time.Time `json:"started_at,omitempty"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
Jobs []PipelineJobView `json:"jobs,omitempty"`
Approvals []PipelineApproval `json:"approvals,omitempty"`
Hold *PipelineHold `json:"hold,omitempty"`
Report *PipelineReport `json:"report,omitempty"`
}
PipelineRunResource mirrors internal/api's pipelineRunResource.
type PipelineRunRow ¶ added in v0.2.0
type PipelineRunRow struct {
ID string `json:"id"`
App string `json:"app"`
Pipeline string `json:"pipeline"`
Number int `json:"number"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
Trigger string `json:"trigger"`
Ref string `json:"ref,omitempty"`
ShortSHA string `json:"short_sha,omitempty"`
CreatedAt time.Time `json:"created_at"`
StartedAt *time.Time `json:"started_at,omitempty"`
DurationSeconds *int64 `json:"duration_seconds,omitempty"`
ApprovalPending bool `json:"approval_pending"`
ApprovalID int64 `json:"approval_id,omitempty"`
HoldPending bool `json:"hold_pending"`
CanDecide bool `json:"can_decide"`
}
PipelineRunRow mirrors internal/api's pipelineRunRowResource.
type PipelineRunRowsPage ¶ added in v0.2.0
type PipelineRunRowsPage struct {
Runs []PipelineRunRow `json:"runs"`
NextCursor string `json:"next_cursor,omitempty"`
}
PipelineRunRowsPage is one page of cross-app runs.
type PipelineRunsQuery ¶ added in v0.2.0
type PipelineRunsQuery struct {
Status string
App string
Pipeline string
Trigger string
Cursor string
Limit int
}
PipelineRunsQuery filters ListAllPipelineRuns. Empty fields are not sent.
type PipelineSaveRequest ¶ added in v0.2.0
type PipelineSaveRequest struct {
Name string `json:"name,omitempty"`
YAML string `json:"yaml"`
Enabled *bool `json:"enabled,omitempty"`
}
PipelineSaveRequest is the body of create and update.
type PipelineStartRequest ¶ added in v0.2.0
type PipelineStartRequest struct {
Ref string `json:"ref,omitempty"`
SHA string `json:"sha,omitempty"`
Inputs map[string]string `json:"inputs,omitempty"`
}
PipelineStartRequest is the body of a manual or API run.
type PipelineStepView ¶ added in v0.2.0
type PipelineStepView struct {
Index int `json:"index"`
Name string `json:"name"`
Kind string `json:"kind"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
ExitCode *int `json:"exit_code,omitempty"`
Attempt int `json:"attempt"`
StartedAt *time.Time `json:"started_at,omitempty"`
FinishedAt *time.Time `json:"finished_at,omitempty"`
}
PipelineStepView is one step of a job.
type PipelineSyncItem ¶ added in v0.2.0
type PipelineSyncItem struct {
File string `json:"file"`
Name string `json:"name"`
Outcome string `json:"outcome"`
Message string `json:"message,omitempty"`
}
PipelineSyncItem is the outcome for one pipeline file.
type PipelineSyncResult ¶ added in v0.2.0
type PipelineSyncResult struct {
SHA string `json:"sha"`
Dir string `json:"dir,omitempty"`
Items []PipelineSyncItem `json:"items"`
}
PipelineSyncResult is the outcome of one repository sync.
type PipelineSyncStatus ¶ added in v0.2.0
type PipelineSyncStatus struct {
Connected bool `json:"connected"`
RepoIsTruth bool `json:"repo_is_truth"`
LastSHA string `json:"last_sha,omitempty"`
LastSyncedAt *time.Time `json:"last_synced_at,omitempty"`
LastError string `json:"last_error,omitempty"`
}
PipelineSyncStatus is an app's repository sync settings and last outcome.
type PipelineTrigger ¶ added in v0.2.0
type PipelineTrigger struct {
ID int64 `json:"id"`
Pipeline string `json:"pipeline,omitempty"`
Event string `json:"event"`
Ref string `json:"ref,omitempty"`
SHA string `json:"sha,omitempty"`
Decision string `json:"decision"`
Reason string `json:"reason"`
RunID string `json:"run_id,omitempty"`
CreatedAt time.Time `json:"created_at"`
}
PipelineTrigger is one recorded decision about a git event.
type PipelineValidation ¶ added in v0.2.0
type PipelineValidation struct {
Valid bool `json:"valid"`
Issues []PipelineIssue `json:"issues"`
Triggers []string `json:"triggers,omitempty"`
Jobs int `json:"jobs,omitempty"`
}
PipelineValidation is the result of POST /api/v1/pipelines/validate.
type PipelineWebhook ¶
type PipelineWebhook struct {
Configured bool `json:"configured"`
Enabled bool `json:"enabled,omitempty"`
HMAC bool `json:"hmac,omitempty"`
Path string `json:"path,omitempty"`
CreatedAt *time.Time `json:"created_at,omitempty"`
RotatedAt *time.Time `json:"rotated_at,omitempty"`
LastUsedAt *time.Time `json:"last_used_at,omitempty"`
Token string `json:"token,omitempty"`
Secret string `json:"secret,omitempty"`
}
PipelineWebhook is a pipeline's inbound webhook trigger. Token and Secret are set only on the response that minted them.
type PipelineWebhookDelivery ¶
type PipelineWebhookDelivery struct {
ID string `json:"id"`
ReceivedAt time.Time `json:"received_at"`
StatusCode int `json:"status_code"`
Outcome string `json:"outcome"`
Reason string `json:"reason,omitempty"`
RunID string `json:"run_id,omitempty"`
IdempotencyKey string `json:"idempotency_key,omitempty"`
ContentType string `json:"content_type,omitempty"`
BodyBytes int `json:"body_bytes"`
Replayable bool `json:"replayable"`
}
PipelineWebhookDelivery is one request a trigger received.
type PipelineWebhookRequest ¶
type PipelineWebhookRequest struct {
HMAC *bool `json:"hmac,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
}
PipelineWebhookRequest is the body of PUT .../webhook.
type PlacementDecision ¶
type PlacementDecision struct {
NodeID string `json:"node_id"`
Why string `json:"why"`
Needs PlacementNeeds `json:"needs"`
Policy PlacementPolicy `json:"policy"`
Considered []PlacementEvaluation `json:"considered"`
Warnings []string `json:"warnings,omitempty"`
}
PlacementDecision is the account of one placement choice.
type PlacementDecisionView ¶
type PlacementDecisionView struct {
Kind string `json:"kind"`
Name string `json:"name"`
NodeID string `json:"node_id"`
Recorded *RecordedPlacement `json:"recorded"`
Preview PlacementDecision `json:"preview"`
}
PlacementDecisionView is the recorded decision plus a fresh evaluation.
type PlacementDimension ¶
type PlacementDimension struct {
Name string `json:"name"`
Allocatable *int64 `json:"allocatable"`
Requested int64 `json:"requested"`
Need int64 `json:"need"`
Free *int64 `json:"free"`
Shortfall int64 `json:"shortfall"`
}
PlacementDimension is one resource on one node. A nil Allocatable means the node never reported it.
type PlacementEvaluation ¶
type PlacementEvaluation struct {
NodeID string `json:"node_id"`
Name string `json:"name"`
Eligible bool `json:"eligible"`
Reason string `json:"reason,omitempty"`
Capacity bool `json:"capacity_blocked,omitempty"`
Unverified bool `json:"unverified,omitempty"`
Headroom *int `json:"headroom_permille,omitempty"`
Load int `json:"load"`
Dimensions []PlacementDimension `json:"dimensions"`
}
PlacementEvaluation is how one node fared in a placement decision.
type PlacementNeeds ¶
type PlacementNeeds struct {
CPUMilli int64 `json:"cpu_milli"`
MemoryBytes int64 `json:"memory_bytes"`
DiskBytes int64 `json:"disk_bytes"`
}
PlacementNeeds is what a workload requests.
type PlacementPolicy ¶
type PlacementPolicy struct {
CPUOvercommitPercent int `json:"cpu_overcommit_percent"`
MemoryOvercommitPercent int `json:"memory_overcommit_percent"`
MinFreeDiskPercent int `json:"min_free_disk_percent"`
RejectUnknown bool `json:"reject_unknown"`
}
PlacementPolicy is the operator's overcommit and headroom setting.
type PlacementRejection ¶ added in v0.2.0
PlacementRejection says why a node is not eligible.
type PlacementResource ¶ added in v0.2.0
type PlacementResource struct {
Kind string `json:"kind"`
Name string `json:"name"`
NodeID string `json:"node_id"`
NodeSelector map[string]string `json:"node_selector"`
Eligible []string `json:"eligible_node_ids"`
Rejected []PlacementRejection `json:"rejected"`
}
PlacementResource mirrors internal/api's placementResource.
type PlacementSimulation ¶
type PlacementSimulation struct {
Request struct {
CPUMilli int64 `json:"cpu_milli"`
MemoryMiB int64 `json:"memory_mib"`
Count int `json:"count"`
Selector string `json:"selector,omitempty"`
} `json:"request"`
Placed []SimulatedPlacement `json:"placed"`
Unplaced int `json:"unplaced"`
Zones []ZoneSummary `json:"zones"`
}
PlacementSimulation is the body of GET /api/v1/nodes/placement-simulation.
type PlatformImportItem ¶ added in v0.2.0
type PlatformImportItem struct {
Kind string `json:"kind"`
SourceID string `json:"source_id"`
SourceName string `json:"source_name"`
Target string `json:"target,omitempty"`
Status string `json:"status"`
Reasons []string `json:"reasons,omitempty"`
Manual []string `json:"manual,omitempty"`
}
PlatformImportItem is one row of a platform import report.
type PlatformImportReport ¶ added in v0.2.0
type PlatformImportReport struct {
Platform string `json:"platform"`
Items []PlatformImportItem `json:"items"`
Counts map[string]int `json:"counts"`
Notes []string `json:"notes,omitempty"`
}
PlatformImportReport is the discover or apply result.
type PlatformImportRequest ¶ added in v0.2.0
type PlatformImportRequest struct {
Platform string `json:"platform"`
URL string `json:"url"`
Token string `json:"token"`
InsecureTLS bool `json:"insecure_tls,omitempty"`
AllowPrivate bool `json:"allow_private,omitempty"`
AllowLoopback bool `json:"allow_loopback,omitempty"`
Only []string `json:"only,omitempty"`
Collision string `json:"collision,omitempty"`
}
PlatformImportRequest is the body of the platform import routes. Token is the source platform's credential and is sent only in this body.
type Plugin ¶
type Plugin struct {
Name string `json:"name"`
Version string `json:"version"`
Kind string `json:"kind"`
Publisher string `json:"publisher"`
Description string `json:"description"`
Image string `json:"image"`
Digest string `json:"digest"`
Manifest string `json:"manifest"`
KeyID string `json:"key_id"`
RequestedAbilities []string `json:"requested_abilities"`
ApprovedAbilities []string `json:"approved_abilities"`
OutboundHosts []string `json:"outbound_hosts"`
ConfigJSON string `json:"config_json"`
State string `json:"state"`
Running bool `json:"running"`
Health string `json:"health"`
Verification string `json:"verification"`
Fix string `json:"fix"`
Panels []PluginPanel `json:"panels"`
Commands []PluginCommand `json:"commands"`
ApprovedAt string `json:"approved_at"`
ApprovedBy string `json:"approved_by"`
InstalledAt string `json:"installed_at"`
InstalledBy string `json:"installed_by"`
LastError string `json:"last_error"`
}
Plugin is one installed plugin as the control plane reports it.
type PluginActionResult ¶
PluginActionResult is the plugin's answer to a button press.
type PluginCommand ¶
type PluginCommand struct {
ID string `json:"id"`
Description string `json:"description"`
Panel string `json:"panel"`
Action string `json:"action"`
}
PluginCommand is a CLI subcommand a plugin contributes through its manifest.
type PluginKey ¶
type PluginKey struct {
KeyID string `json:"key_id"`
Name string `json:"name"`
PublicKey string `json:"public_key"`
AddedAt string `json:"added_at"`
AddedBy string `json:"added_by"`
}
PluginKey is one trusted publisher key.
type PluginManifest ¶
type PluginManifest struct {
Name string `json:"name"`
Version string `json:"version"`
Kind string `json:"kind"`
Publisher string `json:"publisher"`
Description string `json:"description"`
Image string `json:"image"`
Abilities []string `json:"abilities"`
OutboundHosts []string `json:"outbound_hosts"`
}
PluginManifest is the parsed plugin.yaml in a preview.
type PluginPanel ¶
type PluginPanel struct {
ID string `json:"id"`
Title string `json:"title"`
Description string `json:"description"`
Rows []PluginPanelRow `json:"rows"`
Slot string `json:"slot"`
}
PluginPanel is a read-only card a plugin contributes through its manifest.
type PluginPanelColumn ¶
PluginPanelColumn names one table column.
type PluginPanelPoint ¶
PluginPanelPoint is one labelled chart value.
type PluginPanelRow ¶
PluginPanelRow is one label and plain-text value in a PluginPanel.
type PluginPanelView ¶
type PluginPanelView struct {
Widgets []PluginWidgetView `json:"widgets"`
}
PluginPanelView is a panel's bound data.
type PluginPreview ¶
type PluginPreview struct {
Manifest PluginManifest `json:"manifest"`
Verification PluginVerification `json:"verification"`
Action string `json:"action"`
InstalledVersion string `json:"installed_version"`
ApprovedAbilities []string `json:"approved_abilities"`
AddedAbilities []string `json:"added_abilities"`
RemovedAbilities []string `json:"removed_abilities"`
AddedHosts []string `json:"added_hosts"`
RemovedHosts []string `json:"removed_hosts"`
ReapprovalRequired bool `json:"reapproval_required"`
}
PluginPreview is the review shown before an install or upgrade is approved.
type PluginTestResult ¶
type PluginTestResult struct {
OK bool `json:"ok"`
Zones []string `json:"zones,omitempty"`
Message string `json:"message"`
}
PluginTestResult is the outcome of POST /api/v1/plugins/{name}/test.
type PluginVerification ¶
type PluginVerification struct {
Status string `json:"status"`
DigestPinned bool `json:"digest_pinned"`
Digest string `json:"digest"`
Signed bool `json:"signed"`
KeyID string `json:"key_id"`
KeyName string `json:"key_name"`
Installable bool `json:"installable"`
Reason string `json:"reason"`
}
PluginVerification is what the control plane could prove about a package.
type PluginWidgetView ¶
type PluginWidgetView struct {
Type string `json:"type"`
Title string `json:"title"`
Error string `json:"error,omitempty"`
Value string `json:"value,omitempty"`
Unit string `json:"unit,omitempty"`
State string `json:"state,omitempty"`
Text string `json:"text,omitempty"`
Columns []PluginPanelColumn `json:"columns,omitempty"`
Rows [][]string `json:"rows,omitempty"`
Items []string `json:"items,omitempty"`
Points []PluginPanelPoint `json:"points,omitempty"`
Action string `json:"action,omitempty"`
Label string `json:"label,omitempty"`
}
PluginWidgetView is one widget of a panel after the control plane bound it to plugin data.
type PolicyAttachmentResource ¶
type PolicyAttachmentResource struct {
ID string `json:"id"`
PolicyID string `json:"policy_id"`
PrincipalType string `json:"principal_type"`
PrincipalID string `json:"principal_id"`
CreatedAt time.Time `json:"created_at"`
}
PolicyAttachmentResource mirrors internal/api's policyAttachmentResource.
type PolicyCheckApp ¶
type PolicyCheckApp struct {
App string `json:"app"`
ProjectID string `json:"project_id,omitempty"`
Environment string `json:"environment_id,omitempty"`
Violations []PolicyViolation `json:"violations"`
WouldFail bool `json:"would_fail"`
}
PolicyCheckApp is one app's dry-run outcome.
type PolicyCheckRequest ¶
type PolicyCheckRequest struct {
App string `json:"app,omitempty"`
Scope string `json:"scope,omitempty"`
ScopeID string `json:"scope_id,omitempty"`
Rules map[string]DeployPolicyRule `json:"rules,omitempty"`
}
PolicyCheckRequest narrows a dry run to one app and previews unsaved rules.
type PolicyCheckResult ¶
type PolicyCheckResult struct {
Checked int `json:"checked"`
Failing int `json:"failing"`
Warning int `json:"warning"`
Apps []PolicyCheckApp `json:"apps"`
}
PolicyCheckResult is the body of POST /api/v1/deploy-policies/check.
type PolicyDocument ¶ added in v0.2.0
type PolicyDocument struct {
Statement []PolicyStatement `json:"Statement"`
}
PolicyDocument is a policy body, typed so tool output schemas stay exact.
type PolicyLimits ¶ added in v0.2.0
type PolicyLimits struct {
MaxHeaderRules int `json:"max_header_rules"`
MaxForwarders int `json:"max_forwarders"`
MaxCacheRules int `json:"max_cache_rules"`
MaxRegexLen int `json:"max_regex_len"`
MaxHeaderValueLen int `json:"max_header_value_len"`
CacheMaxObject int64 `json:"cache_max_object_bytes"`
CacheTotalBytes int64 `json:"cache_total_bytes"`
ForwardTimeoutSec int `json:"forward_timeout_seconds"`
Shield ShieldLimits `json:"shield"`
}
PolicyLimits are the instance caps for traffic controls.
type PolicyPreviewHops ¶ added in v0.2.0
type PolicyPreviewHops struct {
URL string `json:"url"`
Hops []trafficpolicy.Hop `json:"hops"`
Error string `json:"error,omitempty"`
}
PolicyPreviewHops is one sample URL's redirect chain.
type PolicyPreviewRequest ¶ added in v0.2.0
type PolicyPreviewRequest struct {
Policy *trafficpolicy.Policy `json:"policy,omitempty"`
Method string `json:"method,omitempty"`
Path string `json:"path,omitempty"`
URLs []string `json:"urls,omitempty"`
CanonicalPreset string `json:"canonical_preset,omitempty"`
}
PolicyPreviewRequest overlays draft sections and asks what happens to one request and to sample URLs.
type PolicyPreviewResponse ¶ added in v0.2.0
type PolicyPreviewResponse struct {
Steps []trafficpolicy.Step `json:"steps"`
Hops []PolicyPreviewHops `json:"hops,omitempty"`
Errors []trafficpolicy.FieldError `json:"errors,omitempty"`
}
PolicyPreviewResponse is POST .../policies/preview's result.
type PolicyRequest ¶
type PolicyRequest struct {
Name string `json:"name"`
Description string `json:"description,omitempty"`
Document json.RawMessage `json:"document"`
}
PolicyRequest mirrors internal/api's policyRequest, the body for both CreatePolicy and UpdatePolicy.
type PolicyResource ¶
type PolicyResource struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Document json.RawMessage `json:"document"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
PolicyResource mirrors internal/api's policyResource (internal/api/iam_handlers.go).
type PolicyStatement ¶ added in v0.2.0
type PolicyStatement struct {
Effect string `json:"Effect"`
Action []string `json:"Action"`
Resource []string `json:"Resource"`
}
PolicyStatement is one Allow or Deny rule of a policy document.
type PolicyTemplate ¶ added in v0.2.0
type PolicyTemplate struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Params []PolicyTemplateParam `json:"params"`
Document PolicyDocument `json:"document"`
}
PolicyTemplate mirrors internal/api's policyTemplateResource.
type PolicyTemplateList ¶ added in v0.2.0
type PolicyTemplateList struct {
Version int `json:"version"`
Templates []PolicyTemplate `json:"templates"`
}
PolicyTemplateList mirrors internal/api's policyTemplateListResponse.
type PolicyTemplateParam ¶ added in v0.2.0
type PolicyTemplateParam struct {
Name string `json:"name"`
Description string `json:"description"`
Required bool `json:"required"`
}
PolicyTemplateParam mirrors internal/api's policyTemplateParam.
type PolicyViolation ¶
type PolicyViolation struct {
Rule string `json:"rule"`
Code string `json:"code"`
Mode string `json:"mode"`
Message string `json:"message"`
NextAction string `json:"next_action"`
}
PolicyViolation mirrors internal/policy.Violation.
type PortHolder ¶ added in v0.2.0
PortHolder is a container already publishing a host port.
type PortStream ¶ added in v0.2.0
type PortStream struct {
ID string `json:"id"`
Protocol string `json:"protocol"`
HostPort int `json:"host_port"`
ContainerPort int `json:"container_port"`
Target string `json:"target"`
OpenToAll bool `json:"open_to_all"`
AllowedSources []string `json:"allowed_sources"`
Conflicts []string `json:"conflicts"`
Holders []PortHolder `json:"holders"`
}
PortStream is one of the app's raw TCP/UDP streams.
type PostureCounts ¶ added in v0.2.0
type PostureCounts struct {
Critical int `json:"critical"`
High int `json:"high"`
Medium int `json:"medium"`
Low int `json:"low"`
Unknown int `json:"unknown"`
Passing int `json:"passing"`
}
PostureCounts mirrors internal/api's postureCounts.
type PostureFix ¶ added in v0.2.0
type PostureFix struct {
Kind string `json:"kind"`
Link string `json:"link,omitempty"`
Action string `json:"action,omitempty"`
Params map[string]string `json:"params,omitempty"`
CLI string `json:"cli,omitempty"`
}
PostureFix mirrors internal/api's postureFix: a dashboard link, a named one-click action, and an optional CLI command without the program name.
type PostureItem ¶ added in v0.2.0
type PostureItem struct {
ID string `json:"id"`
Severity string `json:"severity"`
Status string `json:"status"`
Count int `json:"count"`
Subjects []string `json:"subjects,omitempty"`
Detail string `json:"detail,omitempty"`
Fix *PostureFix `json:"fix,omitempty"`
}
PostureItem mirrors internal/api's postureItem.
type Preferences ¶
type Preferences struct {
Timezone string `json:"timezone"`
Language string `json:"language"`
Theme string `json:"theme"`
LandingPage string `json:"landing_page"`
Gravatar bool `json:"gravatar"`
}
Preferences mirrors internal/api's preferencesResource.
type PreflightCheck ¶ added in v0.2.0
type PreflightCheck struct {
ID string `json:"id"`
Name string `json:"name"`
Status string `json:"status"`
Reason string `json:"reason"`
Fix string `json:"fix,omitempty"`
}
PreflightCheck is one preflight result.
type PreflightDisk ¶ added in v0.2.0
type PreflightDisk struct {
Status string `json:"status"`
RequiredBytes int64 `json:"required_bytes"`
FreeBytes *int64 `json:"free_bytes"`
Message string `json:"message"`
}
PreflightDisk mirrors internal/models' PreflightDisk.
type PreflightFile ¶ added in v0.2.0
PreflightFile mirrors internal/models' PreflightFile.
type PreflightNode ¶ added in v0.2.0
type PreflightNode struct {
NodeID string `json:"node_id"`
GPUPresent bool `json:"gpu_present"`
VRAMTotalBytes *int64 `json:"vram_total_bytes"`
VRAMFreeBytes *int64 `json:"vram_free_bytes"`
DiskFreeBytes *int64 `json:"disk_free_bytes"`
DiskTotalBytes *int64 `json:"disk_total_bytes"`
}
PreflightNode mirrors internal/models' PreflightNode. Nil is unknown.
type PreflightQuant ¶ added in v0.2.0
type PreflightQuant struct {
Name string `json:"name"`
Bytes int64 `json:"bytes"`
Files []string `json:"files"`
Fit string `json:"fit"`
Recommended bool `json:"recommended"`
}
PreflightQuant mirrors internal/models' Quant.
type PreflightReport ¶ added in v0.2.0
type PreflightReport struct {
Status string `json:"status"`
Checks []PreflightCheck `json:"checks"`
}
PreflightReport mirrors internal/preflight.Report.
type PreflightSelection ¶ added in v0.2.0
type PreflightSelection struct {
Label string `json:"label"`
Bytes int64 `json:"bytes"`
Fit string `json:"fit"`
}
PreflightSelection mirrors internal/models' PreflightSelection.
type PreviewDatabaseIsolationResource ¶ added in v0.2.0
type PreviewDatabaseIsolationResource struct {
SourceKey string `json:"source_key"`
DatabaseName string `json:"database_name"`
RoleName string `json:"role_name"`
Isolated bool `json:"isolated"`
Status string `json:"status"`
StatusReason string `json:"status_reason,omitempty"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
PreviewDatabaseIsolationResource mirrors internal/api's previewDatabaseIsolationResource (preview_environments_handlers.go). The role's password is never included here.
type PreviewEnvironmentResource ¶
type PreviewEnvironmentResource struct {
AppName string `json:"app_name"`
PRNumber int `json:"pr_number"`
PreviewAppID string `json:"preview_app_id"`
Branch string `json:"branch"`
HeadSHA string `json:"head_sha"`
Domain string `json:"domain,omitempty"`
Status string `json:"status"`
StatusReason string `json:"status_reason,omitempty"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
Stale bool `json:"stale"`
ExpiresAt string `json:"expires_at,omitempty"`
Extended bool `json:"extended"`
IsFork bool `json:"is_fork"`
HeadRepo string `json:"head_repo,omitempty"`
// EphemeralDatabases mirrors internal/api's own EphemeralDatabases
// field: every disposable, preview-scoped database instance
// provisioned for this preview (spec.Database.EphemeralInPreviews),
// empty when none were declared or none opted in.
EphemeralDatabases []PreviewEphemeralDatabaseResource `json:"ephemeral_databases,omitempty"`
// DatabaseIsolations mirrors internal/api's own DatabaseIsolations
// field: every isolated Postgres role provisioned on an existing
// database for this preview (spec.Database.IsolatedInPreviews).
DatabaseIsolations []PreviewDatabaseIsolationResource `json:"database_isolations,omitempty"`
}
PreviewEnvironmentResource mirrors internal/api's previewEnvironmentResource (internal/api/preview_environments_handlers.go).
type PreviewEphemeralDatabaseResource ¶ added in v0.2.0
type PreviewEphemeralDatabaseResource struct {
SourceKey string `json:"source_key"`
DatabaseName string `json:"database_name"`
Engine string `json:"engine"`
Version string `json:"version"`
Status string `json:"status"`
StatusReason string `json:"status_reason,omitempty"`
Ready AppStatusSummary `json:"ready"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
PreviewEphemeralDatabaseResource mirrors internal/api's previewEphemeralDatabaseResource (preview_environments_handlers.go). Ready reuses AppStatusSummary's exact shape: it's computed the same way, from the same database.Controller reconcile conditions GET /api/v1/databases already summarizes per database.
type PreviewLimitsResource ¶ added in v0.2.0
type PreviewLimitsResource struct {
MaxPerApp int `json:"max_per_app"`
MaxTotal int `json:"max_total"`
LiveTotal int `json:"live_total"`
}
PreviewLimitsResource mirrors internal/api's previewLimitsResource.
type PreviewPolicyResource ¶ added in v0.2.0
type PreviewPolicyResource struct {
OnLimit string `json:"on_limit"`
AllowForkPreviews bool `json:"allow_fork_previews"`
TTLHours int `json:"ttl_hours"`
EffectiveTTLHours int `json:"effective_ttl_hours"`
MaxPerApp int `json:"max_per_app"`
LiveCount int `json:"live_count"`
MaxTotal int `json:"max_total"`
LiveTotal int `json:"live_total"`
MaxPreviews int `json:"max_previews"`
MemoryLimit string `json:"memory_limit"`
CPULimit float64 `json:"cpu_limit"`
EffectiveMemory string `json:"effective_memory"`
EffectiveCPU float64 `json:"effective_cpu"`
IdleSleepMinutes int `json:"idle_sleep_minutes"`
EffectiveIdleSleepMinutes int `json:"effective_idle_sleep_minutes"`
DatabaseStrategy string `json:"database_strategy"`
SeedDatabase string `json:"seed_database"`
AllowForkSecrets bool `json:"allow_fork_secrets"`
GateBasicAuth bool `json:"gate_basic_auth"`
GateUsername string `json:"gate_username"`
GatePasswordSet bool `json:"gate_password_set"`
AllowIndexing bool `json:"allow_indexing"`
}
PreviewPolicyResource mirrors internal/api's previewPolicyResource.
type PreviewPruneResult ¶ added in v0.2.0
type PreviewPruneResult struct {
Removed int `json:"removed"`
FreedBytes int64 `json:"freed_bytes"`
}
PreviewPruneResult is POST /api/v1/apps/{name}/preview/prune's body.
type PreviewRecord ¶ added in v0.2.0
type PreviewRecord struct {
DeploymentID string `json:"deployment_id"`
Status string `json:"status"`
Reason string `json:"reason,omitempty"`
Detail string `json:"detail,omitempty"`
HTTPStatus int `json:"http_status,omitempty"`
Path string `json:"path"`
Source string `json:"source,omitempty"`
Bytes int64 `json:"bytes"`
CapturedAt time.Time `json:"captured_at"`
ImageURL string `json:"image_url,omitempty"`
}
PreviewRecord is one deployment's preview outcome.
type PreviewSettingsRequest ¶ added in v0.2.0
type PreviewSettingsRequest struct {
Mode *string `json:"mode,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
Path *string `json:"path,omitempty"`
WaitMS *int `json:"wait_ms,omitempty"`
}
PreviewSettingsRequest is PUT /api/v1/apps/{name}/preview's body; nil fields are left unchanged.
type PreviewSettingsResource ¶
type PreviewSettingsResource struct {
Enabled bool `json:"enabled"`
PostPRComments bool `json:"post_pr_comments"`
}
PreviewSettingsResource mirrors internal/api's previewSettingsResource: the resulting state of both preview-settings toggles after a SetPreviewSettingsRequest is applied.
type PreviewStatus ¶ added in v0.2.0
type PreviewStatus struct {
App string `json:"app"`
Enabled bool `json:"enabled"`
Mode string `json:"mode"`
DefaultMode string `json:"default_mode"`
Path string `json:"path"`
WaitMS int `json:"wait_ms"`
ServerEnabled bool `json:"server_enabled"`
Capturing bool `json:"capturing"`
Image string `json:"image"`
BrowserImage *struct {
Ref string `json:"ref"`
LastUsedAt *time.Time `json:"last_used_at,omitempty"`
} `json:"browser_image,omitempty"`
KeepPerApp int `json:"keep_per_app"`
TTLDays int `json:"ttl_days"`
MaxTotalMB int64 `json:"max_total_mb"`
Storage struct {
AppBytes int64 `json:"app_bytes"`
AppCount int `json:"app_count"`
TotalBytes int64 `json:"total_bytes"`
TotalCount int `json:"total_count"`
} `json:"storage"`
Latest *PreviewRecord `json:"latest,omitempty"`
}
PreviewStatus is GET /api/v1/apps/{name}/preview's body.
type PreviewsOverview ¶ added in v0.2.0
type PreviewsOverview struct {
Limits PreviewLimitsResource `json:"limits"`
PerApp map[string]int `json:"live_per_app"`
Previews []PreviewEnvironmentResource `json:"previews"`
}
PreviewsOverview is GET /api/v1/previews's body.
type PrivateNetworkChange ¶
type PrivateNetworkChange struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Deleted bool `json:"deleted,omitempty"`
Enforced bool `json:"enforced"`
}
PrivateNetworkChange is the small ack body of a mutation.
type PrivateNetworkList ¶
type PrivateNetworkList struct {
Networks []PrivateNetworkResource `json:"networks"`
Rules []PrivateNetworkRuleResource `json:"rules"`
}
PrivateNetworkList is the GET /api/v1/private-networks body.
type PrivateNetworkMap ¶
type PrivateNetworkMap struct {
Apps []PrivateNetworkMapApp `json:"apps"`
Edges []PrivateNetworkMapEdge `json:"edges"`
}
PrivateNetworkMap is the GET /api/v1/private-networks/map body.
type PrivateNetworkMapApp ¶
type PrivateNetworkMapApp struct {
ID string `json:"id"`
Name string `json:"name"`
ProjectID string `json:"project_id,omitempty"`
NodeID string `json:"node_id,omitempty"`
Networks []string `json:"networks"`
}
PrivateNetworkMapApp is a graph node.
type PrivateNetworkMapEdge ¶
type PrivateNetworkMapEdge struct {
A string `json:"a"`
B string `json:"b"`
Allowed bool `json:"allowed"`
Via string `json:"via,omitempty"`
ViaName string `json:"via_name,omitempty"`
RuleID string `json:"rule_id,omitempty"`
CrossNode bool `json:"cross_node"`
Observed string `json:"observed"`
Fix string `json:"fix,omitempty"`
}
PrivateNetworkMapEdge is a graph edge with its verdict and fix.
type PrivateNetworkRequest ¶
type PrivateNetworkRequest struct {
Name string `json:"name,omitempty"`
ProjectID string `json:"project_id,omitempty"`
DefaultDeny bool `json:"default_deny"`
Members []string `json:"members"`
}
PrivateNetworkRequest is the create and update body.
type PrivateNetworkResource ¶
type PrivateNetworkResource struct {
ID string `json:"id"`
Name string `json:"name"`
ProjectID string `json:"project_id,omitempty"`
DefaultDeny bool `json:"default_deny"`
Members []string `json:"members"`
CreatedAt string `json:"created_at"`
}
PrivateNetworkResource mirrors one entry of GET /api/v1/private-networks.
type PrivateNetworkRuleRequest ¶
type PrivateNetworkRuleRequest struct {
From string `json:"from"`
To string `json:"to"`
Note string `json:"note,omitempty"`
}
PrivateNetworkRuleRequest is the allow rule body.
type PrivateNetworkRuleResource ¶
type PrivateNetworkRuleResource struct {
ID string `json:"id"`
From string `json:"from"`
To string `json:"to"`
Note string `json:"note,omitempty"`
CreatedAt string `json:"created_at"`
}
PrivateNetworkRuleResource is one allow rule between two apps.
type ProbeAttempt ¶ added in v0.2.0
type ProbeAttempt struct {
ID int64 `json:"id"`
Target string `json:"target"`
Success bool `json:"success"`
StatusCode int `json:"status_code,omitempty"`
ExitCode int `json:"exit_code,omitempty"`
Error string `json:"error,omitempty"`
LatencyMS int64 `json:"latency_ms"`
ProbedAt string `json:"probed_at"`
}
ProbeAttempt is one readiness-probe attempt made during a deploy cutover.
type ProfileSummary ¶
ProfileSummary is ListProfiles' element type: a profile's name and API URL, deliberately never its token. See ListProfiles.
func ListProfiles ¶
func ListProfiles(prog string) ([]ProfileSummary, error)
ListProfiles returns every profile section configured in prog's credentials file, in the order they first appear, each with its API URL but never its token: see ProfileSummary. Returns a nil slice, no error, for a missing file, the same "nothing configured" shape ReadCredentialsFile's own doc comment describes.
type ProjectLifecycleResult ¶ added in v0.2.0
type ProjectLifecycleResult struct {
SucceededApps []string `json:"succeeded_apps"`
SucceededDatabases []string `json:"succeeded_databases"`
FailedApps []string `json:"failed_apps,omitempty"`
FailedDatabases []string `json:"failed_databases,omitempty"`
}
ProjectLifecycleResult mirrors internal/api's projectLifecycleResult: the response for StopProject/StartProject, which apps and databases in the project succeeded or failed the requested state change.
type ProjectResource ¶
type ProjectResource struct {
ID string `json:"id"`
Name string `json:"name"`
CreatedAt string `json:"created_at"`
OrgID string `json:"org_id,omitempty"`
}
ProjectResource mirrors internal/api's projectResource (internal/api/projects.go). OrgID is empty when the project isn't filed under any organization.
type ProjectRestartResponse ¶ added in v0.2.0
type ProjectRestartResponse struct {
RestartedCount int `json:"restarted_count"`
Apps []string `json:"apps"`
Failed []string `json:"failed,omitempty"`
}
ProjectRestartResponse mirrors internal/api's projectRestartResponse (internal/api/project_restart.go): which apps a bulk restart succeeded or failed on.
type ProjectTopologyEdgeResource ¶ added in v0.2.0
type ProjectTopologyEdgeResource struct {
From string `json:"from"`
To string `json:"to"`
Kind string `json:"kind"`
}
ProjectTopologyEdgeResource mirrors internal/api's topologyEdge.
type ProjectTopologyNodeResource ¶ added in v0.2.0
type ProjectTopologyNodeResource struct {
ID string `json:"id"`
Kind string `json:"kind"`
Label string `json:"label"`
Status *ProjectTopologyNodeStatus `json:"status,omitempty"`
}
ProjectTopologyNodeResource mirrors internal/api's topologyNode.
type ProjectTopologyNodeStatus ¶ added in v0.2.0
type ProjectTopologyNodeStatus struct {
Label string `json:"label"`
Variant string `json:"variant"`
}
ProjectTopologyNodeStatus mirrors internal/api's appStatusSummary.
type ProjectTopologyResource ¶ added in v0.2.0
type ProjectTopologyResource struct {
Nodes []ProjectTopologyNodeResource `json:"nodes"`
Edges []ProjectTopologyEdgeResource `json:"edges"`
}
ProjectTopologyResource mirrors internal/api's topologyGraph, GET /api/v1/projects/{id}/topology's response body.
type PromoteAppRequest ¶
type PromoteAppRequest struct {
To string `json:"to"`
Target string `json:"target,omitempty"`
Confirm bool `json:"confirm,omitempty"`
IncludeEnv bool `json:"include_env,omitempty"`
Force bool `json:"force,omitempty"`
// OverrideFreeze and OverrideReason bypass an active deploy freeze window.
OverrideFreeze bool `json:"override_freeze,omitempty"`
OverrideReason string `json:"override_reason,omitempty"`
}
PromoteAppRequest mirrors internal/api's promoteTriggerRequest: POST /api/v1/apps/{name}/promote's body. Target is optional, the same "auto-discover the sole candidate, or disambiguate" contract PromotePreview's own Target query param has.
type PromoteDiff ¶ added in v0.2.0
type PromoteDiff struct {
Image *DeployCompareField `json:"image,omitempty"`
Replicas *DeployCompareField `json:"replicas,omitempty"`
Resources *DeployCompareField `json:"resources,omitempty"`
Health *DeployCompareField `json:"health,omitempty"`
EnvAdded []string `json:"env_added"`
EnvRemoved []string `json:"env_removed"`
EnvChanged []string `json:"env_changed"`
SecretsAdded []string `json:"secret_keys_added"`
SecretsGone []string `json:"secret_keys_removed"`
Untouched []string `json:"untouched"`
}
PromoteDiff mirrors internal/api's promoteDiff. Env values are never sent.
type PromotePreviewResource ¶
type PromotePreviewResource struct {
SourceApp string `json:"source_app"`
TargetApp string `json:"target_app"`
Environment EnvironmentResource `json:"environment"`
From PromotePreviewSide `json:"from"`
To PromotePreviewSide `json:"to"`
Changes []DeployCompareField `json:"changes"`
UnsnapshottedFields []string `json:"unsnapshotted_fields"`
Note string `json:"note"`
Diff PromoteDiff `json:"diff"`
Blockers []string `json:"blockers"`
NeedsConfirmation bool `json:"needs_confirmation"`
Frozen bool `json:"frozen"`
FreezeReason string `json:"freeze_reason,omitempty"`
}
PromotePreviewResource mirrors internal/api's promotePreviewResource, GET /api/v1/apps/{name}/promote/preview's response.
type PromotePreviewSide ¶
type PromotePreviewSide struct {
AppName string `json:"app_name"`
Image string `json:"image"`
ImageDigest string `json:"image_digest,omitempty"`
}
PromotePreviewSide mirrors internal/api's promotePreviewSide (internal/api/promote.go): one side of a promotion preview, always live desired state (there is no DeployID/CommitSHA/Status to show).
type ProtectAllRequest ¶ added in v0.2.0
type ProtectAllRequest struct {
TargetID string `json:"target_id"`
Schedule string `json:"schedule,omitempty"`
Retain *int `json:"retain,omitempty"`
RetainDays *int `json:"retain_days,omitempty"`
IncludeScratch bool `json:"include_scratch,omitempty"`
Only []ProtectItem `json:"only,omitempty"`
Apply bool `json:"apply"`
}
ProtectAllRequest is POST /api/v1/backups/protect-all's body.
type ProtectAllResponse ¶ added in v0.2.0
type ProtectAllResponse struct {
Applied bool `json:"applied"`
TargetID string `json:"target_id"`
Schedule string `json:"schedule"`
Retain int `json:"retain"`
RetainDays int `json:"retain_days"`
Plan []ProtectItem `json:"plan"`
Done []ProtectItem `json:"done,omitempty"`
Failed []struct {
ProtectItem
Error string `json:"error"`
} `json:"failed,omitempty"`
}
ProtectAllResponse mirrors internal/api's protectAllResponse.
type ProtectItem ¶ added in v0.2.0
type ProtectItem struct {
Kind string `json:"kind"`
AppName string `json:"app_name,omitempty"`
Name string `json:"name"`
Scratch bool `json:"scratch,omitempty"`
}
ProtectItem names one resource in a protect-all plan.
type ProvisionAttemptResource ¶
type ProvisionAttemptResource struct {
ID string `json:"attempt_id"`
Status string `json:"status"`
CurrentStep string `json:"current_step,omitempty"`
Steps []ProvisionStepResource `json:"steps"`
Failure *ProvisionFailureResource `json:"failure,omitempty"`
}
ProvisionAttemptResource is the latest creation attempt of a database.
type ProvisionFailureResource ¶
type ProvisionFailureResource struct {
Step string `json:"step"`
Reason string `json:"reason"`
Fix *ProvisionFixResource `json:"fix,omitempty"`
}
ProvisionFailureResource says why an attempt stopped.
type ProvisionFixResource ¶
type ProvisionFixResource struct {
ID string `json:"id"`
Label string `json:"label"`
Confirm bool `json:"confirm,omitempty"`
}
ProvisionFixResource is a typed recovery action for a failed step.
type ProvisionStepResource ¶
type ProvisionStepResource struct {
Step string `json:"step"`
Status string `json:"status"`
Detail string `json:"detail,omitempty"`
Current int64 `json:"current,omitempty"`
Total int64 `json:"total,omitempty"`
}
ProvisionStepResource is one step of a database creation attempt.
type ProxyCertificate ¶ added in v0.2.0
type ProxyCertificate struct {
Issuer string `json:"issuer"`
NotAfter string `json:"not_after"`
Valid bool `json:"valid"`
}
ProxyCertificate is the certificate the proxy served for a domain.
type ProxyDetection ¶ added in v0.2.0
type ProxyDetection struct {
Kind string `json:"kind"`
Container string `json:"container"`
Image string `json:"image"`
PublishedPorts []int `json:"published_ports"`
DynamicDir string `json:"dynamic_dir"`
EntrypointHTTP string `json:"entrypoint_http"`
EntrypointHTTPS string `json:"entrypoint_https"`
CertResolver string `json:"cert_resolver"`
UpstreamHost string `json:"upstream_host"`
CertDir string `json:"cert_dir,omitempty"`
Webroot string `json:"webroot,omitempty"`
Complete bool `json:"complete"`
Missing []string `json:"missing"`
}
ProxyDetection is what was read from the container holding ports 80/443.
type ProxyDomain ¶ added in v0.2.0
type ProxyDomain struct {
Domain string `json:"domain"`
Target string `json:"target"`
App string `json:"app"`
File string `json:"file"`
State string `json:"state"`
ProxyLoaded *bool `json:"proxy_loaded"`
Reachable bool `json:"reachable"`
Certificate *ProxyCertificate `json:"certificate"`
LastError string `json:"last_error"`
CheckedAt string `json:"checked_at"`
}
ProxyDomain is one managed route.
type ProxyIngress ¶ added in v0.2.0
type ProxyIngress struct {
HTTPPort int `json:"http_port"`
HTTPSPort int `json:"https_port"`
DashboardAddr string `json:"dashboard_addr"`
TLSTerminatedUpstream bool `json:"tls_terminated_upstream"`
PublicHTTPSPort int `json:"public_https_port"`
}
ProxyIngress is how this instance's ingress is set up for the proxy.
type ProxyInstallFile ¶
ProxyInstallFile is one file the install writes.
type ProxyInstallMount ¶
type ProxyInstallMount struct {
Host string `json:"host"`
Container string `json:"container"`
ReadOnly bool `json:"read_only"`
}
ProxyInstallMount is one bind mount of the proxy container.
type ProxyInstallPlan ¶
type ProxyInstallPlan struct {
Provider string `json:"provider"`
Container string `json:"container"`
Image string `json:"image"`
Ports []int `json:"ports"`
Mounts []ProxyInstallMount `json:"mounts"`
Files []ProxyInstallFile `json:"files"`
Restart string `json:"restart"`
RouteDir string `json:"route_dir"`
}
ProxyInstallPlan is the exact install the server would run.
type ProxyInstallRequest ¶
type ProxyInstallRequest struct {
Provider string `json:"provider,omitempty"`
Confirm bool `json:"confirm"`
}
ProxyInstallRequest is POST .../proxy-integration/install's body.
type ProxyInstallResult ¶
type ProxyInstallResult struct {
DryRun bool `json:"dry_run"`
Plan ProxyInstallPlan `json:"plan"`
Outcome string `json:"outcome,omitempty"`
Detail string `json:"detail,omitempty"`
Integration *ProxyIntegration `json:"integration,omitempty"`
}
ProxyInstallResult is the dry-run plan, or the outcome once confirmed.
type ProxyIntegration ¶ added in v0.2.0
type ProxyIntegration struct {
Detected ProxyDetection `json:"detected"`
Settings ProxyIntegrationSettings `json:"settings"`
Ingress ProxyIngress `json:"ingress"`
Domains []ProxyDomain `json:"domains"`
Steps []ProxyStep `json:"steps"`
// Provider is the selected provider kind; Providers is the picker list.
Provider string `json:"provider"`
Providers []ProxyProvider `json:"providers"`
// DryRun, Changes, Manual and Snippet are set by setup only.
DryRun bool `json:"dry_run,omitempty"`
Changes []string `json:"changes,omitempty"`
Manual bool `json:"manual,omitempty"`
Snippet string `json:"snippet,omitempty"`
}
ProxyIntegration is GET /api/v1/system/proxy-integration.
type ProxyIntegrationSettings ¶ added in v0.2.0
type ProxyIntegrationSettings struct {
Integration string `json:"integration"`
DynamicDir string `json:"dynamic_dir"`
EntrypointHTTP string `json:"entrypoint_http"`
EntrypointHTTPS string `json:"entrypoint_https"`
CertResolver string `json:"cert_resolver"`
UpstreamHost string `json:"upstream_host"`
Container string `json:"container"`
CertDir string `json:"cert_dir"`
Webroot string `json:"webroot"`
}
ProxyIntegrationSettings is PUT /api/v1/settings/proxy-integration's body.
type ProxyProvider ¶
type ProxyProvider struct {
Kind string `json:"kind"`
Mode string `json:"mode"`
Detected bool `json:"detected"`
Selected bool `json:"selected"`
}
ProxyProvider is one choice in the proxy picker. Mode is builtin, managed (files written and reloaded by this instance) or manual (a snippet).
type ProxySetupRequest ¶ added in v0.2.0
type ProxySetupRequest struct {
Confirm bool `json:"confirm"`
DynamicDir string `json:"dynamic_dir,omitempty"`
Provider string `json:"provider,omitempty"`
CertDir string `json:"cert_dir,omitempty"`
}
ProxySetupRequest is POST /api/v1/system/proxy-integration/setup's body.
type ProxyStep ¶ added in v0.2.0
type ProxyStep struct {
ID string `json:"id"`
State string `json:"state"`
Detail string `json:"detail"`
}
ProxyStep is one item of the setup checklist.
type PublishLockResource ¶
type PublishLockResource struct {
Locked bool `json:"locked"`
App string `json:"app,omitempty"`
Reason string `json:"reason,omitempty"`
LockedBy string `json:"locked_by,omitempty"`
LockedAt time.Time `json:"locked_at,omitempty"`
PinnedImage string `json:"pinned_image,omitempty"`
HeldBuilds []string `json:"held_builds"`
}
PublishLockResource is an app's publish lock state.
type PurgeAuditLogResult ¶
type PurgeAuditLogResult struct {
Deleted int64 `json:"deleted"`
}
PurgeAuditLogResult is POST /api/v1/audit-log/purge's response shape (internal/api/audit_retention.go's purgeAuditLogResponse).
type PurgeCacheRequest ¶ added in v0.2.0
PurgeCacheRequest selects what to purge: scope url, prefix or all.
type PurgeCacheResponse ¶ added in v0.2.0
PurgeCacheResponse reports how many entries were removed.
type PushSubscriptionResource ¶ added in v0.2.0
type PushSubscriptionResource struct {
ID string `json:"id"`
UserAgent string `json:"user_agent"`
CreatedAt string `json:"created_at"`
}
PushSubscriptionResource mirrors internal/api's pushSubscriptionResource (internal/api/push_subscriptions.go): one browser registered for the "webpush" notification-channel kind.
type PutDeployFreezeRequest ¶ added in v0.2.0
type PutDeployFreezeRequest struct {
Windows []FreezeWindowResource `json:"windows"`
}
PutDeployFreezeRequest is PUT .../deploy-freeze's body.
type QueuedFunctionCall ¶
type QueuedFunctionCall struct {
ID string `json:"id"`
Function string `json:"function"`
Source string `json:"source"`
Method string `json:"method"`
Path string `json:"path"`
BodyBytes int `json:"body_bytes"`
Status string `json:"status"`
Attempts int `json:"attempts"`
MaxAttempts int `json:"max_attempts"`
NextAttemptAt time.Time `json:"next_attempt_at"`
LastStatusCode int `json:"last_status_code,omitempty"`
LastError string `json:"last_error,omitempty"`
CreatedAt time.Time `json:"created_at"`
}
QueuedFunctionCall is one queued, finished or dead-lettered call.
type QuietHoursResource ¶
type QuietHoursResource struct {
Start string `json:"start"`
End string `json:"end"`
Timezone string `json:"timezone"`
Enabled bool `json:"enabled"`
}
QuietHoursResource is a channel's quiet-hours window.
type QuotaLimits ¶
type QuotaLimits struct {
MaxApps int64 `json:"max_apps"`
MaxDatabases int64 `json:"max_databases"`
MaxMemoryMB int64 `json:"max_memory_mb"`
MaxCPU float64 `json:"max_cpu"`
MaxPreviews int64 `json:"max_previews"`
}
QuotaLimits mirrors internal/api's quotaLimitsResource. 0 is unlimited.
type QuotaResource ¶
type QuotaResource struct {
Scope string `json:"scope"`
ScopeID string `json:"scope_id"`
Name string `json:"name"`
Limits QuotaLimits `json:"limits"`
Effective QuotaLimits `json:"effective_limits"`
Usage QuotaUsage `json:"usage"`
WarnPercent int `json:"warn_percent"`
CanManage bool `json:"can_manage"`
}
QuotaResource mirrors internal/api's quotaResource.
type QuotaUsage ¶
type QuotaUsage struct {
Apps int64 `json:"apps"`
Databases int64 `json:"databases"`
MemoryMB int64 `json:"memory_mb"`
CPU float64 `json:"cpu"`
Previews int64 `json:"previews"`
}
QuotaUsage mirrors internal/api's quotaUsageResource.
type ReachCounts ¶
type ReachCounts struct {
High int `json:"high"`
Medium int `json:"medium"`
Low int `json:"low"`
Info int `json:"info"`
}
ReachCounts mirrors internal/exposure's ReachCounts.
type ReachEndpoint ¶
type ReachEndpoint struct {
Kind string `json:"kind"`
Value string `json:"value"`
Class string `json:"class,omitempty"`
}
ReachEndpoint mirrors internal/exposure's ReachEndpoint.
type ReachFinding ¶
type ReachFinding struct {
ID string `json:"id"`
Kind string `json:"kind"`
Severity string `json:"severity"`
Subject ReachRef `json:"subject"`
Node string `json:"node,omitempty"`
Port int `json:"port,omitempty"`
Params map[string]string `json:"params,omitempty"`
Fix *ReachFix `json:"fix,omitempty"`
}
ReachFinding mirrors internal/exposure's ReachFinding.
type ReachFix ¶
type ReachFix struct {
Kind string `json:"kind"`
Method string `json:"method,omitempty"`
Path string `json:"path,omitempty"`
Body map[string]string `json:"body,omitempty"`
Link string `json:"link,omitempty"`
Restarts bool `json:"restarts,omitempty"`
}
ReachFix mirrors internal/exposure's ReachFix.
type ReachReport ¶
type ReachReport struct {
GeneratedAt string `json:"generated_at"`
Counts ReachCounts `json:"counts"`
Subjects []ReachSubject `json:"subjects"`
Findings []ReachFinding `json:"findings"`
RulesReadable bool `json:"rules_readable"`
RestrictedPorts int `json:"restricted_ports"`
}
ReachReport mirrors internal/exposure's ReachReport.
type ReachSubject ¶
type ReachSubject struct {
Type string `json:"type"`
Name string `json:"name"`
Endpoints []ReachEndpoint `json:"endpoints"`
Findings int `json:"findings"`
}
ReachSubject mirrors internal/exposure's ReachSubject.
type ReadinessCheck ¶ added in v0.2.0
type ReadinessCheck struct {
ID string `json:"id"`
Name string `json:"name"`
Status string `json:"status"`
Detail string `json:"detail"`
Fix string `json:"fix"`
}
ReadinessCheck is one server readiness check.
type RecentChange ¶ added in v0.2.0
type RecentChange struct {
At time.Time `json:"at"`
Kind string `json:"kind"`
Actor string `json:"actor"`
Title string `json:"title"`
Detail string `json:"detail,omitempty"`
Keys []string `json:"keys,omitempty"`
Ref string `json:"ref,omitempty"`
LikelyCause bool `json:"likely_cause,omitempty"`
}
RecentChange mirrors internal/changes.Change: one config, deploy or lifecycle change on an app. Keys are names only, never values.
type RecentChangesResource ¶ added in v0.2.0
type RecentChangesResource struct {
App string `json:"app"`
Since time.Time `json:"since"`
Until time.Time `json:"until"`
WindowSeconds int64 `json:"window_seconds"`
Changes []RecentChange `json:"changes"`
Total int `json:"total"`
Truncated bool `json:"truncated,omitempty"`
}
RecentChangesResource mirrors internal/changes.Result.
type ReclaimOrphanResponse ¶ added in v0.2.0
type ReclaimOrphanResponse struct {
Removed string `json:"removed"`
ReclaimedBytes int64 `json:"reclaimed_bytes"`
}
ReclaimOrphanResponse mirrors internal/api's reclaimOrphanResponse.
type RecordedPlacement ¶
type RecordedPlacement struct {
Trigger string `json:"trigger"`
DecidedAt time.Time `json:"decided_at"`
Decision PlacementDecision `json:"decision"`
}
RecordedPlacement is a stored decision and what triggered it.
type RedirectDomainRow ¶ added in v0.2.0
type RedirectDomainRow struct {
Domain string `json:"domain"`
Redirect *trafficpolicy.HostRedirect `json:"redirect,omitempty"`
Maintenance bool `json:"maintenance"`
Wildcard bool `json:"wildcard"`
}
RedirectDomainRow is one of the app's domains on the Redirects tab.
type RedirectEffective ¶ added in v0.2.0
type RedirectEffective struct {
HandledBy string `json:"handled_by"`
Explanation string `json:"explanation"`
HTTPSPort int `json:"https_port"`
TLSTerminatedUpstream bool `json:"tls_terminated_upstream"`
IngressHTTPRedirect bool `json:"ingress_http_redirect"`
}
RedirectEffective explains who redirects plain HTTP to HTTPS.
type RegistryCredentialResource ¶
type RegistryCredentialResource struct {
ID string `json:"id"`
Name string `json:"name"`
RegistryHost string `json:"registry_host"`
Username string `json:"username"`
CreatedAt string `json:"created_at"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
ExpiryStatus string `json:"expiry_status,omitempty"`
Preset string `json:"preset,omitempty"`
Region string `json:"region,omitempty"`
LastRefreshedAt *time.Time `json:"last_refreshed_at,omitempty"`
NextRefreshAt *time.Time `json:"next_refresh_at,omitempty"`
LastRefreshError string `json:"last_refresh_error,omitempty"`
}
RegistryCredentialResource mirrors internal/api's registryCredentialResource (internal/api/registry_credentials.go). No password field, the same write-only convention BackupTargetResource uses for its own credentials. ExpiresAt/ExpiryStatus are operator-set metadata, not something the platform infers from the credential itself; ExpiryStatus is "healthy"/"expiring_soon"/"expired", empty when no expiry was set.
type RegistryCredentialUsage ¶
type RegistryCredentialUsage struct {
Services []string `json:"services"`
}
RegistryCredentialUsage mirrors the registry credential usage response.
type RegistryRepositoriesResource ¶ added in v0.2.0
type RegistryRepositoriesResource struct {
Repositories []string `json:"repositories"`
}
RegistryRepositoriesResource mirrors internal/api's registryRepositoriesResponse (internal/api/registry_catalog.go): GET /api/v1/registry/repositories's wire shape.
type RegistrySettingsResource ¶
type RegistrySettingsResource struct {
Enabled bool `json:"enabled"`
Host string `json:"host,omitempty"`
Username string `json:"username,omitempty"`
HasCredentials bool `json:"has_credentials"`
Status string `json:"status"`
Message string `json:"message,omitempty"`
Password string `json:"password,omitempty"`
}
RegistrySettingsResource mirrors internal/api's registrySettingsResource (internal/api/registry_settings.go): GET/PUT/DELETE /api/v1/settings/registry's wire shape. Password is write-once: it is only ever populated in the response to a PUT call that generates a fresh credential (the registry's first enable), empty every other time.
type RegistryTagsResource ¶ added in v0.2.0
type RegistryTagsResource struct {
Repository string `json:"repository"`
Tags []string `json:"tags"`
}
RegistryTagsResource mirrors internal/api's registryTagsResponse: GET /api/v1/registry/tags's wire shape.
type RejectDeployApprovalRequest ¶ added in v0.2.0
type RejectDeployApprovalRequest struct {
Reason string `json:"reason,omitempty"`
}
RejectDeployApprovalRequest mirrors internal/api's rejectDeployApprovalRequest (POST .../deploy-approvals/{id}/reject).
type RejoinMeshResponse ¶ added in v0.2.0
RejoinMeshResponse mirrors internal/api's rejoinMeshResponse (POST /api/v1/nodes/{id}/mesh/rejoin).
type ReleaseHistory ¶ added in v0.2.0
type ReleaseHistory struct {
CurrentVersion string `json:"current_version"`
CurrentSchemaVersion *int `json:"current_schema_version"`
Channel string `json:"channel"`
View string `json:"view"`
Reachable bool `json:"github_reachable"`
Releases []ReleaseHistoryItem `json:"releases"`
RetainedOnly []ReleaseHistoryItem `json:"retained_only"`
}
ReleaseHistory is GET /api/v1/updates/releases' response.
type ReleaseHistoryItem ¶ added in v0.2.0
type ReleaseHistoryItem struct {
Version string `json:"version"`
URL string `json:"url"`
PublishedAt string `json:"published_at"`
Channel string `json:"channel"`
Running bool `json:"running"`
Retained bool `json:"retained"`
AssetName string `json:"asset_name"`
AssetAvailable bool `json:"asset_available"`
AssetSize int64 `json:"asset_size"`
Signed bool `json:"signed"`
SchemaVersion *int `json:"schema_version"`
SchemaSource string `json:"schema_source"`
Verdict string `json:"verdict"`
Notes string `json:"notes"`
}
ReleaseHistoryItem is one release in GET /api/v1/updates/releases.
type ReleaseNoteEntry ¶
type ReleaseNoteEntry struct {
SHA string `json:"sha"`
Scope string `json:"scope,omitempty"`
Summary string `json:"summary"`
Author string `json:"author,omitempty"`
URL string `json:"url,omitempty"`
}
ReleaseNoteEntry is one commit line in a release notes group.
type ReleaseNoteGroup ¶
type ReleaseNoteGroup struct {
Key string `json:"key"`
Title string `json:"title"`
Entries []ReleaseNoteEntry `json:"entries"`
}
ReleaseNoteGroup is the commits of one conventional-commit type.
type ReleaseNotesResource ¶
type ReleaseNotesResource struct {
ServiceName string `json:"service_name"`
From DeployCompareSide `json:"from"`
To DeployCompareSide `json:"to"`
Commits []GitCommitSummary `json:"commits"`
Groups []ReleaseNoteGroup `json:"groups"`
Markdown string `json:"markdown"`
Note string `json:"note,omitempty"`
}
ReleaseNotesResource mirrors GET /api/v1/apps/{name}/deploys/release-notes.
type RenewCertificateResource ¶ added in v0.2.0
type RenewCertificateResource struct {
Domain string `json:"domain"`
HadStoredCertificate bool `json:"had_stored_certificate"`
Status string `json:"status"`
}
RenewCertificateResource mirrors internal/api's renewCertificateResponse (internal/api/domain_tls_cert.go): POST .../cert/renew's response body.
type ReplayWebhookDeliveryResult ¶
type ReplayWebhookDeliveryResult struct {
Status int `json:"status"`
Message string `json:"message"`
}
ReplayWebhookDeliveryResult mirrors internal/api's replayWebhookDeliveryResult: the status/message a replayed delivery's re-run processing produced.
type RepoBranchesResource ¶ added in v0.2.0
type RepoBranchesResource struct {
Branches []string `json:"branches"`
}
RepoBranchesResource mirrors internal/api's gitBranchesResponse.
type RepoPlan ¶
type RepoPlan struct {
RepoURL string `json:"repo_url"`
Branch string `json:"branch"`
BaseDirectory string `json:"base_directory,omitempty"`
Tool string `json:"tool,omitempty"`
PackageCap int `json:"package_cap"`
PackagesFound int `json:"packages_found"`
Packages []RepoPlanRow `json:"packages"`
Warnings []RepoPlanWarning `json:"warnings"`
Totals struct {
Packages int `json:"packages"`
Warnings int `json:"warnings"`
Flagged int `json:"flagged"`
} `json:"totals"`
}
RepoPlan mirrors internal/repoplan's Plan.
type RepoPlanRow ¶
type RepoPlanRow struct {
Name string `json:"name"`
PackageName string `json:"package_name"`
Directory string `json:"directory"`
Port *int `json:"port"`
PortSource string `json:"port_source,omitempty"`
BuildKind string `json:"build_kind"`
Dockerfile string `json:"dockerfile,omitempty"`
WatchPaths []string `json:"watch_paths"`
DependsOn []string `json:"depends_on"`
Warnings []RepoPlanWarning `json:"warnings"`
}
RepoPlanRow mirrors internal/repoplan's Row.
type RepoPlanWarning ¶
RepoPlanWarning mirrors internal/repoplan's Warning.
type RequestPointResource ¶ added in v0.2.0
type RequestPointResource struct {
Timestamp time.Time `json:"timestamp"`
Requests float64 `json:"requests"`
RatePerSec float64 `json:"rate_per_sec"`
ErrorRate4xx float64 `json:"error_rate_4xx"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
UpstreamErrors float64 `json:"upstream_errors"`
P50Ms float64 `json:"p50_ms"`
P95Ms float64 `json:"p95_ms"`
P99Ms float64 `json:"p99_ms"`
BytesInPerSec float64 `json:"bytes_in_per_sec"`
BytesOutPerSec float64 `json:"bytes_out_per_sec"`
}
RequestPointResource mirrors internal/telemetry.RequestPoint.
type RequestSummaryResource ¶ added in v0.2.0
type RequestSummaryResource struct {
WindowSeconds float64 `json:"window_seconds"`
HasTraffic bool `json:"has_traffic"`
Requests float64 `json:"requests"`
RatePerSec float64 `json:"rate_per_sec"`
ErrorRate4xx float64 `json:"error_rate_4xx"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
P95Ms float64 `json:"p95_ms"`
UpstreamErrors float64 `json:"upstream_errors"`
}
RequestSummaryResource mirrors internal/telemetry.RequestSummary.
type ResilienceReport ¶
type ResilienceReport struct {
Scenarios []chaos.Info `json:"scenarios"`
Latest []chaos.Result `json:"latest"`
Unmeasured []string `json:"not_yet_measured"`
}
ResilienceReport mirrors GET /api/v1/resilience.
type ResolveAIChatConfirmationRequest ¶ added in v0.2.0
type ResolveAIChatConfirmationRequest struct {
Approve bool `json:"approve"`
}
ResolveAIChatConfirmationRequest mirrors internal/api's resolveAIChatConfirmationRequest: POST /api/v1/ai/sessions/{id}/confirmations/{confirmation_id}'s request body.
type ResolverResult ¶ added in v0.2.0
type ResolverResult struct {
Name string `json:"name"`
Addresses []string `json:"addresses,omitempty"`
Error string `json:"error,omitempty"`
}
ResolverResult is what one resolver answered for a domain.
type ResourceHealthResource ¶ added in v0.2.0
type ResourceHealthResource struct {
Kind string `json:"kind"`
AppName string `json:"app_name,omitempty"`
ResourceName string `json:"resource_name"`
TargetID string `json:"target_id,omitempty"`
Schedule string `json:"schedule,omitempty"`
NextRun string `json:"next_run,omitempty"`
BackupCount int `json:"backup_count"`
TotalBytes int64 `json:"total_bytes"`
LastAttempt *BackupSummaryResource `json:"last_attempt,omitempty"`
LastBackup *BackupSummaryResource `json:"last_backup,omitempty"`
LastVerifiedRestore *DrillSummaryResource `json:"last_verified_restore,omitempty"`
LastDrill *DrillSummaryResource `json:"last_drill,omitempty"`
Encrypted bool `json:"encrypted"`
State string `json:"state"`
StateReason string `json:"state_reason,omitempty"`
ProtectionLevel string `json:"protection_level,omitempty"`
Warning string `json:"warning,omitempty"`
}
ResourceHealthResource mirrors internal/api's resourceHealthResource.
type ResourceRecommendationResource ¶
type ResourceRecommendationResource struct {
ServiceName string `json:"service_name"`
LookbackWindow string `json:"lookback_window"`
LookbackLabel string `json:"lookback_label,omitempty"`
Memory DimensionRecommendationResource `json:"memory"`
CPU DimensionRecommendationResource `json:"cpu"`
OOMDetectedAt string `json:"oom_detected_at,omitempty"`
OOMExcerpt string `json:"oom_excerpt,omitempty"`
}
ResourceRecommendationResource mirrors internal/api's resourceRecommendationResource: the shared response shape for both GET /api/v1/apps/{name}/resource-recommendation (internal/api/resource_recommendation.go) and GET /api/v1/databases/{name}/resource-recommendation (internal/api/database_resource_recommendation.go), a deterministic memory/CPU right-sizing suggestion synthesized from internal/rightsizing over the resource's own historical usage samples, never from an external model, and never applied automatically. ServiceName holds the app or database name either way.
type RestoreHistoryResource ¶
type RestoreHistoryResource struct {
ID string `json:"id"`
DatabaseName string `json:"database_name,omitempty"`
ServiceName string `json:"service_name,omitempty"`
VolumeName string `json:"volume_name,omitempty"`
BackupHistoryID string `json:"backup_history_id"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
RestoreHistoryResource mirrors internal/api's restoreHistoryResource (internal/api/restore.go). ServiceName/VolumeName mirror BackupHistoryResource's own identical fields above.
type RestorePoint ¶
type RestorePoint struct {
ID string `json:"id"`
Version string `json:"version"`
Schema int `json:"schema"`
CreatedAt string `json:"created_at"`
SizeBytes int64 `json:"size_bytes"`
HasBinary bool `json:"has_binary"`
HasUnit bool `json:"has_unit"`
DatabaseRestoreNeeded bool `json:"database_restore_needed"`
CanRestore bool `json:"can_restore"`
CannotRestoreWhy string `json:"cannot_restore_reason"`
}
RestorePoint is one kept pre-upgrade restore point.
type RestorePoints ¶
type RestorePoints struct {
RestorePoints []RestorePoint `json:"restore_points"`
}
RestorePoints is GET /api/v1/updates/restore-points' response.
type RestoreStarted ¶
type RestoreStarted struct {
Status string `json:"status"`
RestorePoint string `json:"restore_point"`
Version string `json:"version"`
}
RestoreStarted is POST /api/v1/updates/restore-points/{id}/restore's response.
type RetryPolicy ¶
type RetryPolicy struct {
MaxRetries int // retries after the first attempt
MaxWait time.Duration // total time spent waiting across all retries
BaseDelay time.Duration // backoff start when the server sends no Retry-After
}
RetryPolicy bounds the retry of HTTP 429 and 503. Zero MaxRetries disables it.
type RevealResult ¶ added in v0.2.0
type RevealResult struct {
Key string `json:"key"`
Value string `json:"value"`
Type string `json:"type"`
HideAfterSeconds int `json:"hide_after_seconds"`
}
RevealResult is one revealed value.
type RevealedLoginCode ¶ added in v0.2.0
RevealedLoginCode mirrors internal/api's revealLoginCodeResponse.
type ReverseProxyCheck ¶ added in v0.2.0
type ReverseProxyCheck struct {
ResolvesToHost bool `json:"resolves_to_host"`
Reachable bool `json:"reachable"`
Detail string `json:"detail,omitempty"`
}
ReverseProxyCheck is the result of the reachability check.
type ReverseProxyGuide ¶ added in v0.2.0
type ReverseProxyGuide struct {
Holders []ReverseProxyHolder `json:"holders"`
Detected string `json:"detected_proxy,omitempty"`
Plan *ReverseProxyPlan `json:"plan,omitempty"`
Check *ReverseProxyCheck `json:"check,omitempty"`
}
ReverseProxyGuide is GET /api/v1/system/reverse-proxy.
type ReverseProxyHolder ¶ added in v0.2.0
type ReverseProxyHolder struct {
Port int `json:"port"`
Container string `json:"container"`
Image string `json:"image"`
Kind string `json:"kind,omitempty"`
NetworkGateway string `json:"network_gateway,omitempty"`
}
ReverseProxyHolder is a container publishing port 80 or 443.
type ReverseProxyPlan ¶ added in v0.2.0
type ReverseProxyPlan struct {
Domain string `json:"domain"`
Proxy string `json:"proxy"`
UpstreamURL string `json:"upstream_url"`
NeedsRebind bool `json:"needs_rebind"`
Rebind string `json:"rebind,omitempty"`
Snippet string `json:"snippet"`
SnippetPath string `json:"snippet_path,omitempty"`
Steps []string `json:"steps"`
}
ReverseProxyPlan is the configuration that puts the dashboard behind a proxy.
type RevokeAgentTokensResource ¶ added in v0.2.0
type RevokeAgentTokensResource struct {
Revoked int `json:"revoked"`
}
RevokeAgentTokensResource mirrors the revoke-agent-tokens response.
type RevokeJoinTokensResponse ¶
type RevokeJoinTokensResponse struct {
Revoked int64 `json:"revoked"`
}
RevokeJoinTokensResponse reports how many pending tokens were revoked.
type RevokedSessions ¶ added in v0.2.0
type RevokedSessions struct {
Revoked int `json:"revoked"`
}
RevokedSessions mirrors internal/api's revokeSessionsResponse.
type RoleRequest ¶ added in v0.2.0
type RoleRequest struct {
Name string `json:"name"`
Description string `json:"description"`
Abilities []string `json:"abilities"`
Visibility string `json:"visibility,omitempty"`
}
RoleRequest is the body of POST /api/v1/roles and PUT /api/v1/roles/{id}.
type RoleResource ¶
type RoleResource struct {
Name string `json:"name"`
Description string `json:"description"`
Abilities []string `json:"abilities"`
ID string `json:"id,omitempty"`
Visibility string `json:"visibility,omitempty"`
Builtin bool `json:"builtin"`
UserCount int `json:"user_count"`
}
RoleResource mirrors internal/api's Role (internal/api/roles.go).
type RollbackBackup ¶ added in v0.2.0
type RollbackBackup struct {
Name string `json:"name"`
CreatedAt string `json:"created_at"`
SchemaVersion int `json:"schema_version"`
Compatible bool `json:"compatible"`
}
RollbackBackup is a restore point in a rollback plan.
type RollbackChange ¶ added in v0.2.0
RollbackChange is one release's notes between the target and the running version.
type RollbackPlan ¶ added in v0.2.0
type RollbackPlan struct {
CurrentVersion string `json:"current_version"`
CurrentSchemaVersion int `json:"current_schema_version"`
Target RollbackTarget `json:"target"`
Verdict string `json:"verdict"`
Steps []string `json:"steps"`
Warnings []string `json:"warnings"`
DowntimeSeconds int `json:"downtime_seconds"`
RestoreRequired bool `json:"restore_required"`
Backups []RollbackBackup `json:"backups"`
LossSince *string `json:"data_loss_since"`
Command string `json:"command"`
RestoreCommand string `json:"restore_command"`
FetchCommand string `json:"fetch_command"`
Checks []UpgradeCheck `json:"checks"`
Blocked bool `json:"blocked"`
Changes []RollbackChange `json:"changes"`
Notes string `json:"notes"`
OneClick bool `json:"one_click"`
OneClickReason string `json:"one_click_reason"`
}
RollbackPlan is GET /api/v1/updates/rollback-plan's response.
type RollbackStarted ¶
type RollbackStarted struct {
Status string `json:"status"`
TargetVersion string `json:"target_version"`
}
RollbackStarted is POST /api/v1/updates/rollback's response.
type RollbackTarget ¶ added in v0.2.0
type RollbackTarget struct {
Version string `json:"version"`
SchemaVersion int `json:"schema_version"`
SchemaSource string `json:"schema_source"`
Retained bool `json:"retained"`
}
RollbackTarget is the release a plan returns to.
type RollbackTargetResource ¶ added in v0.2.0
type RollbackTargetResource struct {
DeployID string `json:"deploy_id"`
Image string `json:"image"`
ImageID string `json:"image_id,omitempty"`
PinRef string `json:"pin_ref"`
PinnedAt time.Time `json:"pinned_at"`
Live bool `json:"live"`
}
RollbackTargetResource is a pinned release image cleanup never removes.
type RollbackToRequest ¶ added in v0.2.0
type RollbackToRequest struct {
Confirm bool `json:"confirm,omitempty"`
OverrideFreeze bool `json:"override_freeze,omitempty"`
OverrideReason string `json:"override_reason,omitempty"`
}
RollbackToRequest is the optional body of POST .../deploys/{id}/rollback.
type RotateDEKFailure ¶
RotateDEKFailure mirrors internal/api's rotateDEKFailure.
type RotateDEKResult ¶
type RotateDEKResult struct {
App string `json:"app,omitempty"`
Values int `json:"values,omitempty"`
RotatedAt *time.Time `json:"rotated_at,omitempty"`
RunID string `json:"run_id,omitempty"`
Resumed bool `json:"resumed,omitempty"`
Total int `json:"total,omitempty"`
Rotated int `json:"rotated,omitempty"`
Skipped int `json:"skipped,omitempty"`
FailedCount int `json:"failed_count,omitempty"`
Failed []RotateDEKFailure `json:"failed,omitempty"`
Complete bool `json:"complete"`
}
RotateDEKResult mirrors internal/api's rotateDEKResponse.
type RotateKeyResponse ¶ added in v0.2.0
type RotateKeyResponse struct {
NodeID string `json:"node_id"`
OldPublicKey string `json:"old_public_key"`
NewPublicKey string `json:"new_public_key"`
}
RotateKeyResponse mirrors internal/api's rotateKeyResponse (POST /api/v1/nodes/{id}/mesh/rotate-key).
type RotateMasterKeyRequest ¶
type RotateMasterKeyRequest struct {
NewMasterKey string `json:"newMasterKey"`
}
RotateMasterKeyRequest mirrors internal/api's rotateMasterKeyRequest: the new master key, read from a file or stdin by the CLI so it never appears as a bare command-line argument.
type RotateMasterKeyResult ¶
type RotateMasterKeyResult struct {
RotatedAt time.Time `json:"rotatedAt"`
PersistedToFile bool `json:"persistedToFile"`
Warning string `json:"warning,omitempty"`
Rebind *SecretRebindResult `json:"rebind,omitempty"`
}
RotateMasterKeyResult mirrors internal/api's rotateMasterKeyResponse. Warning is non-empty exactly when the operator has a required follow-up before the control plane's next restart: either the master key is env-sourced (update APP_MASTER_KEY out of band) or the file write itself failed (update the key file by hand).
type Route53DNSResource ¶ added in v0.2.0
type Route53DNSResource struct {
Enabled bool `json:"enabled"`
Region string `json:"region,omitempty"`
HostedZoneID string `json:"hosted_zone_id,omitempty"`
HasAccessKeyID bool `json:"has_access_key_id"`
HasSecretAccessKey bool `json:"has_secret_access_key"`
}
Route53DNSResource mirrors internal/api's route53DNSResource (internal/api/route53_dns.go): GET/PUT/DELETE /api/v1/settings/route53-dns's wire shape. Neither credential half ever appears here in either direction. A second, independent ACME DNS-01 provider from CloudflareDNSResource, not a replacement.
type RunBrief ¶ added in v0.2.0
type RunBrief struct {
ID string `json:"id"`
Number int `json:"number"`
Status string `json:"status"`
}
RunBrief is a pipeline's most recent run summary.
type RuntimeSettingResource ¶
type RuntimeSettingResource struct {
Key string `json:"key"`
Category string `json:"category"`
Kind string `json:"kind"`
Title string `json:"title"`
Description string `json:"description"`
Default any `json:"default"`
Value any `json:"value"`
Source string `json:"source"`
Env string `json:"env"`
Apply string `json:"apply"`
Risk string `json:"risk"`
Onboarding bool `json:"onboarding"`
PendingRestart bool `json:"pending_restart"`
UpdatedAt string `json:"updated_at"`
UpdatedBy string `json:"updated_by"`
}
RuntimeSettingResource mirrors one entry of /api/v1/settings/runtime. Value and Default are typed by the setting's kind (bool, string, []string or number).
type RuntimeSettingWrite ¶
type RuntimeSettingWrite struct {
Value any `json:"value"`
ConfirmWeakening bool `json:"confirm_weakening,omitempty"`
}
RuntimeSettingWrite is the PUT body. ConfirmWeakening is only set for settings whose risk is weakens_security.
type RuntimeSettingsListResource ¶
type RuntimeSettingsListResource struct {
Settings []RuntimeSettingResource `json:"settings"`
Restart RuntimeSettingsRestart `json:"restart"`
}
RuntimeSettingsListResource mirrors the body of GET /api/v1/settings/runtime.
type RuntimeSettingsRestart ¶
type RuntimeSettingsRestart struct {
Supported bool `json:"supported"`
PendingRestart bool `json:"pending_restart"`
}
RuntimeSettingsRestart reports whether the control plane can restart itself and has a restart pending.
type SAMLCertificateInfo ¶
type SAMLCertificateInfo struct {
Subject string `json:"subject"`
NotAfter string `json:"not_after"`
}
SAMLCertificateInfo summarizes one trusted IDP signing certificate.
type SAMLConnection ¶
type SAMLConnection struct {
ID string `json:"id"`
Name string `json:"name"`
Enabled bool `json:"enabled"`
Configured bool `json:"configured"`
IDPEntityID string `json:"idp_entity_id"`
IDPSSOURL string `json:"idp_sso_url"`
IDPCertificates string `json:"idp_certificates"`
IDPMetadataURL string `json:"idp_metadata_url"`
Certificates []SAMLCertificateInfo `json:"certificates"`
EmailAttribute string `json:"email_attribute"`
NameAttribute string `json:"name_attribute"`
GroupsAttribute string `json:"groups_attribute"`
AllowedDomains []string `json:"allowed_domains"`
JITProvisioning bool `json:"jit_provisioning"`
DefaultRoleID string `json:"default_role_id"`
SyncRoles bool `json:"sync_roles"`
SPEntityID string `json:"sp_entity_id"`
SPACSURL string `json:"sp_acs_url"`
SPMetadataURL string `json:"sp_metadata_url"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
SAMLConnection mirrors internal/api's samlConnectionResource.
type SAMLConnectionRequest ¶
type SAMLConnectionRequest struct {
Name string `json:"name"`
Enabled bool `json:"enabled"`
IDPEntityID string `json:"idp_entity_id"`
IDPSSOURL string `json:"idp_sso_url"`
IDPCertificates string `json:"idp_certificates"`
IDPMetadataURL string `json:"idp_metadata_url"`
EmailAttribute string `json:"email_attribute"`
NameAttribute string `json:"name_attribute"`
GroupsAttribute string `json:"groups_attribute"`
AllowedDomains []string `json:"allowed_domains"`
JITProvisioning bool `json:"jit_provisioning"`
DefaultRoleID string `json:"default_role_id"`
SyncRoles bool `json:"sync_roles"`
}
SAMLConnectionRequest is the full body of a create or update.
func RequestFromSAMLConnection ¶
func RequestFromSAMLConnection(c SAMLConnection) SAMLConnectionRequest
RequestFromSAMLConnection copies the editable fields, for read-modify-write updates.
type SAMLMetadataImport ¶
type SAMLMetadataImport struct {
URL string `json:"url,omitempty"`
XML string `json:"xml,omitempty"`
}
SAMLMetadataImport carries IDP metadata by URL or inline XML (exactly one).
type SBOMLicenseCount ¶ added in v0.2.0
SBOMLicenseCount is how many packages carry a license.
type SBOMPackage ¶ added in v0.2.0
type SBOMPackage struct {
Name string `json:"name"`
Version string `json:"version,omitempty"`
Type string `json:"type,omitempty"`
License string `json:"license,omitempty"`
}
SBOMPackage is one component of an SBOM.
type SBOMSummary ¶ added in v0.2.0
type SBOMSummary struct {
DeploymentID string `json:"deployment_id"`
Format string `json:"format"`
PackageCount int `json:"package_count"`
Types []SBOMTypeCount `json:"types"`
Licenses []SBOMLicenseCount `json:"licenses"`
Unlicensed int `json:"unlicensed"`
TopPackages []SBOMPackage `json:"top_packages"`
Provenance bool `json:"provenance"`
Available bool `json:"available"`
Bytes int64 `json:"bytes"`
GeneratedAt time.Time `json:"generated_at"`
DownloadURL string `json:"download_url,omitempty"`
}
SBOMSummary is GET .../deployments/{id}/sbom's body.
type SBOMTypeCount ¶ added in v0.2.0
SBOMTypeCount is how many packages are of a type.
type SCIMToken ¶
type SCIMToken struct {
ID string `json:"id"`
Name string `json:"name"`
Prefix string `json:"prefix"`
CreatedBy string `json:"created_by"`
CreatedAt string `json:"created_at"`
LastUsedAt *string `json:"last_used_at"`
RevokedAt *string `json:"revoked_at"`
}
SCIMToken mirrors internal/api's scimTokenResource.
type SCIMTokenCreated ¶
SCIMTokenCreated is a new or rotated token with its one-time plaintext.
type SLOPreviewResource ¶ added in v0.2.0
type SLOPreviewResource struct {
Config AlertSLOConfig `json:"config"`
HasTraffic bool `json:"has_traffic"`
BudgetRemaining float64 `json:"budget_remaining"`
BudgetRequests float64 `json:"budget_window_requests"`
Windows []SLOWindowStat `json:"windows"`
Tiers []SLOTierStatus `json:"tiers"`
Firing bool `json:"firing"`
Page bool `json:"page"`
MaxBurn float64 `json:"max_burn"`
}
SLOPreviewResource mirrors internal/api's sloPreviewResource: the error budget left and current burn rates for an SLO.
type SLOTierStatus ¶ added in v0.2.0
type SLOTierStatus struct {
Name string `json:"name"`
Factor float64 `json:"factor"`
LongSeconds int64 `json:"long_seconds"`
ShortSeconds int64 `json:"short_seconds"`
Page bool `json:"page"`
LongBurn float64 `json:"long_burn"`
ShortBurn float64 `json:"short_burn"`
EffectiveBurn float64 `json:"effective_burn"`
Firing bool `json:"firing"`
}
SLOTierStatus mirrors internal/api's sloTierResource.
type SLOWindowStat ¶ added in v0.2.0
type SLOWindowStat struct {
WindowSeconds int64 `json:"window_seconds"`
Requests float64 `json:"requests"`
Bad float64 `json:"bad"`
BurnRate float64 `json:"burn_rate"`
}
SLOWindowStat mirrors internal/api's sloWindowResource.
type SSHHostKey ¶ added in v0.2.2
SSHHostKey is one host key the server presented, as ssh-keygen -l prints it.
type SSHNodeProvisionAuthRequest ¶ added in v0.2.0
type SSHNodeProvisionAuthRequest struct {
Type string `json:"type"` // "key" or "password"
PrivateKey string `json:"private_key,omitempty"`
Passphrase string `json:"passphrase,omitempty"`
Password string `json:"password,omitempty"`
}
SSHNodeProvisionAuthRequest mirrors internal/api's createSSHNodeProvisionAuthRequest: one of two credential shapes, never stored past the one provisioning call this starts.
type SSHNodeProvisionResource ¶ added in v0.2.0
type SSHNodeProvisionResource struct {
ID string `json:"id"`
Name string `json:"name"`
Role string `json:"role"`
Status string `json:"status"`
DetectedOS string `json:"detected_os,omitempty"`
DetectedArch string `json:"detected_arch,omitempty"`
NodeID string `json:"node_id,omitempty"`
FailureReason string `json:"failure_reason,omitempty"`
Log string `json:"log,omitempty"`
HostKeyFingerprint string `json:"host_key_fingerprint,omitempty"`
HostKeyVerified bool `json:"host_key_verified"`
Warnings []string `json:"warnings,omitempty"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
SSHNodeProvisionResource mirrors internal/api's sshNodeProvisionResource.
type SSHProvisionPreflight ¶ added in v0.2.2
type SSHProvisionPreflight struct {
Host string `json:"host"`
Port int `json:"port"`
HostKeys []SSHHostKey `json:"host_keys"`
}
SSHProvisionPreflight is the preflight response: the server's host keys, read without authenticating.
type SSHProvisionPreflightRequest ¶ added in v0.2.2
type SSHProvisionPreflightRequest struct {
Host string `json:"host"`
Port int `json:"port,omitempty"`
}
SSHProvisionPreflightRequest is POST /api/v1/nodes/ssh-provision/preflight's body.
type SSOGroupMapping ¶
type SSOGroupMapping struct {
Group string `json:"group"`
RoleID string `json:"role_id"`
Priority int `json:"priority"`
}
SSOGroupMapping maps a directory group to a stored role.
type SSOGroupMappings ¶
type SSOGroupMappings struct {
Mappings []SSOGroupMapping `json:"mappings"`
}
SSOGroupMappings is the full mapping set.
type SSOSettings ¶
type SSOSettings struct {
EnforceSSO bool `json:"enforce_sso"`
SPCertificate string `json:"sp_certificate"`
BaseURL string `json:"base_url"`
BaseURLError string `json:"base_url_error,omitempty"`
MasterKeyMissing bool `json:"master_key_missing"`
SCIMBaseURL string `json:"scim_base_url"`
SCIMDefaultRole string `json:"scim_default_role_id"`
}
SSOSettings mirrors internal/api's ssoSettingsResource.
type SaveAppAsTemplateRequest ¶ added in v0.2.0
type SaveAppAsTemplateRequest struct {
Name string `json:"name"`
Description string `json:"description,omitempty"`
}
SaveAppAsTemplateRequest mirrors internal/api's saveAppAsTemplateRequest: POST /api/v1/apps/{name}/save-as-template's body.
type SavedLogQuery ¶ added in v0.2.0
type SavedLogQuery struct {
ID string `json:"id"`
Name string `json:"name"`
App string `json:"app,omitempty"`
Spec LogQuerySpec `json:"spec"`
Visibility string `json:"visibility"`
Pinned bool `json:"pinned"`
Owner string `json:"owner,omitempty"`
Mine bool `json:"mine"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
SavedLogQuery mirrors internal/api's savedLogQueryResource.
type SavedLogQueryRequest ¶ added in v0.2.0
type SavedLogQueryRequest struct {
Name string `json:"name"`
App string `json:"app,omitempty"`
Spec LogQuerySpec `json:"spec"`
Visibility string `json:"visibility,omitempty"`
Pinned bool `json:"pinned,omitempty"`
}
SavedLogQueryRequest creates or replaces a saved log query.
type SavedSearch ¶
type SavedSearch struct {
ID string `json:"id"`
Name string `json:"name"`
Query string `json:"query"`
CreatedAt time.Time `json:"created_at"`
}
SavedSearch is a stored query.
type ScheduledMaintenanceRequest ¶
type ScheduledMaintenanceRequest struct {
Title string `json:"title"`
Message string `json:"message,omitempty"`
Scope string `json:"scope"`
Target string `json:"target,omitempty"`
StartsAt time.Time `json:"starts_at"`
EndsAt time.Time `json:"ends_at"`
Freeze bool `json:"freeze"`
AnnounceLeadMins int `json:"announce_lead_minutes"`
}
ScheduledMaintenanceRequest is the body of POST /api/v1/scheduled-maintenance.
type ScheduledMaintenanceResource ¶
type ScheduledMaintenanceResource struct {
ID string `json:"id"`
Title string `json:"title"`
Message string `json:"message"`
Scope string `json:"scope"`
Target string `json:"target,omitempty"`
StartsAt time.Time `json:"starts_at"`
EndsAt time.Time `json:"ends_at"`
Freeze bool `json:"freeze"`
AnnounceLeadMins int `json:"announce_lead_minutes"`
AnnouncedAt *time.Time `json:"announced_at,omitempty"`
State string `json:"state"`
CreatedBy string `json:"created_by,omitempty"`
CreatedAt time.Time `json:"created_at"`
}
ScheduledMaintenanceResource mirrors internal/api's scheduledMaintenanceResource.
type ScheduledTaskRequest ¶
type ScheduledTaskRequest struct {
Command []string `json:"command"`
Schedule string `json:"schedule"`
Enabled bool `json:"enabled"`
// ConcurrencyPolicy is one of "allow", "forbid", "replace", "queue",
// or empty (server-side default "allow").
ConcurrencyPolicy string `json:"concurrency_policy,omitempty"`
// Scheduled job fields; zero values are omitted so an update leaves
// the stored value alone.
Name string `json:"name,omitempty"`
Mode string `json:"mode,omitempty"`
Timezone string `json:"timezone,omitempty"`
TimeoutSeconds int `json:"timeout_seconds,omitempty"`
MaxRetries int `json:"max_retries,omitempty"`
RetryBackoffSeconds int `json:"retry_backoff_seconds,omitempty"`
CatchUp string `json:"catch_up,omitempty"`
CatchUpLookbackSeconds int `json:"catch_up_lookback_seconds,omitempty"`
CPULimitMillis int `json:"cpu_limit_millis,omitempty"`
MemoryLimitMB int `json:"memory_limit_mb,omitempty"`
WarnAfterSeconds int `json:"warn_after_seconds,omitempty"`
// HTTP makes the job call a path on the app (Mode "http").
HTTP *JobHTTP `json:"http,omitempty"`
}
ScheduledTaskRequest mirrors the fields internal/api's scheduledTaskResource actually reads from a create/update request body (Command, Schedule, Enabled); ID and ServiceName always come from the URL, never the body.
type ScheduledTaskResource ¶
type ScheduledTaskResource struct {
ID string `json:"id,omitempty"`
ServiceName string `json:"service_name,omitempty"`
Command []string `json:"command"`
Schedule string `json:"schedule"`
Enabled bool `json:"enabled"`
// ConcurrencyPolicy is one of "allow", "forbid", "replace": what
// happens when this task's next due run finds a previous invocation
// of itself still executing. Empty on a request defaults to "allow"
// server-side.
ConcurrencyPolicy string `json:"concurrency_policy"`
LastRunAt *time.Time `json:"last_run_at,omitempty"`
LastRunStatus string `json:"last_run_status,omitempty"`
LastRunOutput string `json:"last_run_output,omitempty"`
// ConsecutiveFailures mirrors internal/api's own field: what a
// kind=scheduled_task_failure alert rule watches.
ConsecutiveFailures int `json:"consecutive_failures"`
// Scheduled job fields (internal/api/scheduled_tasks.go): Name, Mode
// (fresh or exec), Timezone, retry/timeout/catch-up policy, limits,
// and live scheduling state.
Name string `json:"name,omitempty"`
Mode string `json:"mode,omitempty"`
Timezone string `json:"timezone,omitempty"`
TimeoutSeconds int `json:"timeout_seconds,omitempty"`
MaxRetries int `json:"max_retries,omitempty"`
RetryBackoffSeconds int `json:"retry_backoff_seconds,omitempty"`
CatchUp string `json:"catch_up,omitempty"`
CatchUpLookbackSeconds int `json:"catch_up_lookback_seconds,omitempty"`
CPULimitMillis int `json:"cpu_limit_millis,omitempty"`
MemoryLimitMB int `json:"memory_limit_mb,omitempty"`
WarnAfterSeconds int `json:"warn_after_seconds,omitempty"`
Source string `json:"source,omitempty"`
ConsecutiveMissed int `json:"consecutive_missed"`
RunningSince *time.Time `json:"running_since,omitempty"`
NextRunAt *time.Time `json:"next_run_at,omitempty"`
// RunID is set on the response to a run-now call.
RunID string `json:"run_id,omitempty"`
// HTTP is the request an http-mode job sends instead of a command.
HTTP *JobHTTP `json:"http,omitempty"`
CreatedAt time.Time `json:"created_at,omitempty"`
UpdatedAt time.Time `json:"updated_at,omitempty"`
}
ScheduledTaskResource mirrors internal/api's scheduledTaskResource (internal/api/scheduled_tasks.go). Command is a real argv (no shell), and LastRun* describe only the single most recent run in place: there is no separate run-history endpoint.
type Scope ¶ added in v0.2.0
Scope is the team and project every request is narrowed to.
func CurrentScope ¶ added in v0.2.0
func CurrentScope() Scope
CurrentScope returns the scope set by SetScope.
func ReadContext ¶ added in v0.2.0
ReadContext returns a profile's saved team and project.
type SearchActionInfo ¶
type SearchActionInfo struct {
ID string `json:"id"`
Ability string `json:"ability"`
Confirm bool `json:"confirm"`
// MCPTool is the exact MCP tool to call, MCPArgs its filled-in arguments
// and MCPNeeds the inputs the caller must still supply.
MCPTool string `json:"mcp_tool,omitempty"`
MCPArgs map[string]string `json:"mcp_args,omitempty"`
MCPNeeds []string `json:"mcp_needs,omitempty"`
}
SearchActionInfo is what runs a search action hit.
type SearchHit ¶
type SearchHit struct {
Ref string `json:"ref"`
Kind string `json:"kind"`
Title string `json:"title"`
Subtitle string `json:"subtitle,omitempty"`
AppName string `json:"app_name,omitempty"`
Env string `json:"env,omitempty"`
NodeName string `json:"node_name,omitempty"`
Tags []string `json:"tags,omitempty"`
Href string `json:"href,omitempty"`
TitleSpans []SearchSpan `json:"title_spans,omitempty"`
Score float64 `json:"score"`
Action *SearchActionInfo `json:"action,omitempty"`
}
SearchHit is one unified search result.
type SearchResponse ¶
type SearchResponse struct {
Hits []SearchHit `json:"hits"`
NextCursor string `json:"next_cursor,omitempty"`
Total int `json:"total"`
}
SearchResponse is a page of hits.
type SearchSpan ¶
SearchSpan is a half-open range of code points in a hit's title.
type SecretBindingStatus ¶ added in v0.2.0
type SecretBindingStatus struct {
Total int `json:"total"`
Bound int `json:"bound"`
Legacy int `json:"legacy"`
}
SecretBindingStatus mirrors internal/api's secretBindingResponse.
type SecretFinding ¶
type SecretFinding struct {
RuleID string `json:"rule_id"`
Source string `json:"source"`
Path string `json:"path,omitempty"`
Line int `json:"line,omitempty"`
Var string `json:"var,omitempty"`
Fingerprint string `json:"fingerprint"`
Allowed bool `json:"allowed,omitempty"`
}
SecretFinding is one suspected credential. It never carries the value.
type SecretKeyResource ¶
type SecretKeyResource struct {
Key string `json:"key"`
Locked bool `json:"locked"`
BuildTime bool `json:"build_time"`
UpdatedAt string `json:"updated_at"`
Stale bool `json:"stale"`
}
SecretKeyResource mirrors internal/api's secretKeyResource (internal/api/secrets.go): a secret's key and locked state, never its value. UpdatedAt is RFC3339, and Stale reports whether it's older than the effective secret rotation warning threshold.
type SecretRebindFailure ¶ added in v0.2.0
type SecretRebindFailure struct {
Owner string `json:"owner"`
Key string `json:"key"`
Reason string `json:"reason"`
}
SecretRebindFailure names one slot a rebind could not bind.
type SecretRebindResult ¶ added in v0.2.0
type SecretRebindResult struct {
Scanned int `json:"scanned"`
Rebound int `json:"rebound"`
AlreadyBound int `json:"alreadyBound"`
Changed int `json:"changed"`
FailedCount int `json:"failedCount"`
Failed []SecretRebindFailure `json:"failed"`
Remaining int `json:"remaining"`
}
SecretRebindResult mirrors internal/api's secretRebindResponse.
type SecretRotationPolicyResource ¶
type SecretRotationPolicyResource struct {
App string `json:"app,omitempty"`
Key string `json:"key"`
IntervalDays int `json:"interval_days"`
GraceHours int `json:"grace_hours"`
Owner string `json:"owner"`
AutoRotate bool `json:"auto_rotate"`
LastRotatedAt string `json:"last_rotated_at,omitempty"`
NextDueAt string `json:"next_due_at,omitempty"`
Status string `json:"status"`
State string `json:"state"`
LastError string `json:"last_error,omitempty"`
PreviousExpiresAt string `json:"previous_expires_at,omitempty"`
}
SecretRotationPolicyResource mirrors the control plane's rotation policy wire shape. It never carries a secret value.
type SecretScanAllowEntry ¶
type SecretScanAllowEntry struct {
Fingerprint string `json:"fingerprint"`
Reason string `json:"reason"`
Actor string `json:"actor"`
CreatedAt time.Time `json:"created_at"`
}
SecretScanAllowEntry is one allow-listed fingerprint with its audit trail.
type SecretScanEnvResult ¶
type SecretScanEnvResult struct {
Scope string `json:"scope"`
Truncated bool `json:"truncated"`
Findings []SecretFinding `json:"findings"`
ScannedAt time.Time `json:"scanned_at"`
}
SecretScanEnvResult is POST .../secret-scan/run's body.
type SecretScanLimits ¶
type SecretScanLimits struct {
MaxFiles int `json:"max_files"`
MaxFileBytes int64 `json:"max_file_bytes"`
MaxTotalBytes int64 `json:"max_total_bytes"`
MaxFindings int `json:"max_findings"`
TimeoutSeconds int `json:"timeout_seconds"`
}
SecretScanLimits are the server's scan caps.
type SecretScanRun ¶
type SecretScanRun struct {
DeploymentID string `json:"deployment_id"`
App string `json:"app"`
Policy string `json:"policy"`
Action string `json:"action"`
Reason string `json:"reason,omitempty"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
FilesScanned int `json:"files_scanned"`
Truncated bool `json:"truncated"`
Findings []SecretFinding `json:"findings"`
ScannedAt time.Time `json:"scanned_at"`
}
SecretScanRun is the scan recorded for one deploy.
type SecretScanSettings ¶
type SecretScanSettings struct {
App string `json:"app"`
Policy string `json:"policy"`
AllowList []SecretScanAllowEntry `json:"allow_list"`
Limits SecretScanLimits `json:"limits"`
}
SecretScanSettings is GET .../secret-scan's body.
type SecurityPolicy ¶ added in v0.2.0
type SecurityPolicy struct {
ApprovalScope string `json:"approval_scope"`
MaxTokenLifetimeDays int `json:"max_token_lifetime_days"`
WarnUnusedDays int `json:"warn_unused_days"`
DisableUnusedDays int `json:"disable_unused_days"`
Sources map[string]string `json:"sources"`
NewDeviceApproval bool `json:"new_device_approval"`
NoticeGraceDays int `json:"notice_grace_days"`
}
SecurityPolicy mirrors internal/api's securityPolicyResource.
type SecurityPolicyUpdate ¶ added in v0.2.0
type SecurityPolicyUpdate struct {
ApprovalScope *string `json:"approval_scope,omitempty"`
MaxTokenLifetimeDays *int `json:"max_token_lifetime_days,omitempty"`
WarnUnusedDays *int `json:"warn_unused_days,omitempty"`
DisableUnusedDays *int `json:"disable_unused_days,omitempty"`
}
SecurityPolicyUpdate is the PUT body; nil fields keep their value.
type SecurityPosture ¶ added in v0.2.0
type SecurityPosture struct {
Score int `json:"score"`
Grade string `json:"grade"`
GeneratedAt time.Time `json:"generated_at"`
Counts PostureCounts `json:"counts"`
Full bool `json:"full"`
Items []PostureItem `json:"items"`
Account []PostureItem `json:"account"`
}
SecurityPosture mirrors internal/api's postureResponse. Items is empty unless the caller is an admin (Full).
type SecuritySessions ¶ added in v0.2.0
type SecuritySessions struct {
UserID string `json:"user_id"`
Self bool `json:"self"`
Sessions []Session `json:"sessions"`
TrustedDevices []TrustedDevice `json:"trusted_devices"`
Tokens []SessionToken `json:"tokens"`
}
SecuritySessions mirrors internal/api's securitySessionsResponse.
type SelfUpgradeAttempt ¶ added in v0.2.0
type SelfUpgradeAttempt struct {
ID string `json:"id"`
FromVersion string `json:"from_version"`
ToVersion string `json:"to_version"`
FromSchema int `json:"from_schema"`
ToSchema int `json:"to_schema"`
Initiator string `json:"initiator"`
Outcome string `json:"outcome"`
FailedStep string `json:"failed_step"`
Error string `json:"error"`
BackupName string `json:"backup_name"`
Acked []string `json:"acked"`
Steps []SelfUpgradeStep `json:"steps"`
CurrentStep string `json:"current_step"`
Log []SelfUpgradeLogLine `json:"log"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at"`
DatabaseRestored bool `json:"database_restored"`
RolledBackMinutes int `json:"rolled_back_minutes"`
Failure *SelfUpgradeFailure `json:"failure,omitempty"`
}
SelfUpgradeAttempt is one recorded upgrade attempt.
type SelfUpgradeAttempts ¶ added in v0.2.0
type SelfUpgradeAttempts struct {
Attempts []SelfUpgradeAttempt `json:"attempts"`
}
SelfUpgradeAttempts is GET /api/v1/updates/self-upgrade/attempts' response.
type SelfUpgradeBreaking ¶ added in v0.2.0
type SelfUpgradeBreaking struct {
ID string `json:"id"`
Version string `json:"version"`
Summary string `json:"summary"`
RequiresAck bool `json:"requires_ack"`
}
SelfUpgradeBreaking is one breaking change between two versions.
type SelfUpgradeFailure ¶
type SelfUpgradeFailure struct {
Cause string `json:"cause"`
Primary string `json:"primary"`
FixID string `json:"fix_id,omitempty"`
Retryable bool `json:"retryable"`
Rollbackable bool `json:"rollbackable"`
CLI string `json:"cli,omitempty"`
}
SelfUpgradeFailure is the typed cause and fix buttons of a failed attempt.
type SelfUpgradeLogLine ¶
type SelfUpgradeLogLine struct {
At string `json:"at"`
Step string `json:"step"`
Line string `json:"line"`
}
SelfUpgradeLogLine is one event of an attempt's live log.
type SelfUpgradePlan ¶ added in v0.2.0
type SelfUpgradePlan struct {
CurrentVersion string `json:"current_version"`
TargetVersion string `json:"target_version"`
Breaking []SelfUpgradeBreaking `json:"breaking"`
NotesAvailable bool `json:"notes_available"`
CanApply bool `json:"can_apply"`
CannotApplyWhy string `json:"cannot_apply_reason"`
Command string `json:"command"`
Steps []string `json:"steps"`
}
SelfUpgradePlan is GET /api/v1/updates/self-upgrade/plan's response.
type SelfUpgradeStarted ¶ added in v0.2.0
type SelfUpgradeStarted struct {
Status string `json:"status"`
TargetVersion string `json:"target_version"`
}
SelfUpgradeStarted is POST /api/v1/updates/self-upgrade's response.
type SelfUpgradeStatus ¶
type SelfUpgradeStatus struct {
CurrentVersion string `json:"current_version"`
Running *SelfUpgradeAttempt `json:"running"`
LastFinished *SelfUpgradeAttempt `json:"last_finished"`
Verified bool `json:"verified"`
}
SelfUpgradeStatus is GET /api/v1/updates/self-upgrade/status' response.
type SelfUpgradeStep ¶ added in v0.2.0
type SelfUpgradeStep struct {
Name string `json:"name"`
Status string `json:"status"`
Detail string `json:"detail"`
At string `json:"at"`
DurationMS int64 `json:"duration_ms"`
}
SelfUpgradeStep is one step of an attempt's timeline.
type ServerAddress ¶ added in v0.2.0
type ServerAddress struct {
IPv4 string `json:"ipv4,omitempty"`
IPv6 string `json:"ipv6,omitempty"`
Source string `json:"source"`
Detected ServerAddressPair `json:"detected"`
Override ServerAddressPair `json:"override"`
PublicHost string `json:"public_host,omitempty"`
PublicHostSource string `json:"public_host_source,omitempty"`
BehindNAT bool `json:"behind_nat"`
TLSTerminatedUpstream bool `json:"tls_terminated_upstream"`
AppsBaseDomain string `json:"apps_base_domain,omitempty"`
Domain string `json:"domain,omitempty"`
Records []DNSRecordSuggestion `json:"records,omitempty"`
}
ServerAddress mirrors internal/api's serverAddressResource.
type ServerAddressPair ¶ added in v0.2.0
type ServerAddressPair struct {
IPv4 string `json:"ipv4,omitempty"`
IPv6 string `json:"ipv6,omitempty"`
}
ServerAddressPair is an IPv4 and IPv6 address, either may be empty.
type ServerMismatchError ¶
type ServerMismatchError struct {
Prog, Profile, URL string
Pinned ServerPin
Got *InstanceInfo
}
ServerMismatchError is returned instead of sending a token to a server that is not the one the profile is pinned to.
func (*ServerMismatchError) Error ¶
func (e *ServerMismatchError) Error() string
type ServerProfile ¶
type ServerProfile struct {
Active string `json:"active"`
Configured string `json:"configured"`
Source string `json:"source"`
EnvVar string `json:"env_var"`
PinnedByEnv bool `json:"pinned_by_env"`
RestartRequired bool `json:"restart_required"`
Recommended string `json:"recommended,omitempty"`
Profiles []ServerProfileInfo `json:"profiles"`
Problems []ServerProfileProblem `json:"problems"`
NeedsConfirm bool `json:"needs_confirm"`
Saved bool `json:"saved"`
UpdatedBy string `json:"updated_by,omitempty"`
}
ServerProfile mirrors GET /api/v1/settings/server-profile.
type ServerProfileInfo ¶
type ServerProfileInfo struct {
ID string `json:"id"`
Mesh bool `json:"mesh"`
Plugins bool `json:"plugins"`
Experimental int `json:"experimental_features"`
RetentionDays int `json:"retention_days"`
LoopbackAgent bool `json:"loopback_agent"`
LazyLoops bool `json:"lazy_loops"`
Recommendation bool `json:"posture_recommendations"`
SBOMScan bool `json:"sbom_scan"`
}
ServerProfileInfo mirrors one entry of GET /api/v1/settings/server-profile's profile list.
type ServerProfileProblem ¶
type ServerProfileProblem struct {
Code string `json:"code"`
Message string `json:"message"`
Blocking bool `json:"blocking"`
}
ServerProfileProblem is one reason a profile move is refused or needs a confirm.
type ServerReadiness ¶ added in v0.2.0
type ServerReadiness struct {
Checks []ReadinessCheck `json:"checks"`
Mode string `json:"mode"`
Proxy string `json:"proxy"`
Holders map[int]string `json:"holders"`
NextStep string `json:"next_step"`
Blocked bool `json:"blocked"`
Summary string `json:"summary"`
}
ServerReadiness is GET /api/v1/system/readiness' response.
type ServiceHealth ¶
type ServiceHealth struct {
Readiness *ServiceProbe `json:"readiness,omitempty"`
Liveness *ServiceProbe `json:"liveness,omitempty"`
ReadyTimeout int64 `json:"ready_timeout,omitempty"`
}
ServiceHealth mirrors internal/api's appResource.Health field.
type ServiceHooks ¶
type ServiceHooks struct {
PreDeploy string `json:"pre_deploy,omitempty"`
PostDeploy string `json:"post_deploy,omitempty"`
}
ServiceHooks mirrors internal/api's appResource.Hooks field (store.ServiceHooks' JSON encoding).
type ServiceProbe ¶
type ServiceProbe struct {
Path string `json:"path"`
Scheme string `json:"scheme,omitempty"`
Host string `json:"host,omitempty"`
TLSSkipVerify bool `json:"tls_skip_verify,omitempty"`
FollowRedirects *bool `json:"follow_redirects,omitempty"`
ExpectedStatus string `json:"expected_status,omitempty"`
Exec []string `json:"exec,omitempty"`
Interval int64 `json:"interval,omitempty"`
Timeout int64 `json:"timeout,omitempty"`
Failures int `json:"failures,omitempty"`
}
ServiceProbe mirrors one of AppResource.Health's two probes (readiness or liveness).
type ServiceResources ¶
type ServiceResources struct {
MemoryBytes int64 `json:"memory_bytes,omitempty"`
NanoCPUs int64 `json:"nano_cpus,omitempty"`
SwapMemoryBytes int64 `json:"swap_memory_bytes,omitempty"`
CPUSetCPUs string `json:"cpuset_cpus,omitempty"`
}
ServiceResources mirrors internal/api's appResource.Resources field (internal/api/apps.go), which is itself store.DesiredService's own JSON encoding: bytes and nanoseconds, not app.yaml's human-friendly "512Mi"/"5s" strings. Redeclared here, not imported from internal/store or internal/api, so this package depends only on the documented wire contract, never on the control plane's internal Go types. ServiceProbe and ServiceHealth below share that same reasoning.
type ServiceTemplateDetail ¶
type ServiceTemplateDetail struct {
ID string `json:"id"`
Name string `json:"name"`
Slogan string `json:"slogan"`
Category string `json:"category"`
DocumentationURL string `json:"documentation_url"`
Compose string `json:"compose"`
RecommendedMemoryBytes int64 `json:"recommended_memory_bytes,omitempty"`
RequiresGPU bool `json:"requires_gpu,omitempty"`
RequiresConfiguration bool `json:"requires_configuration,omitempty"`
Requirements TemplateRequirements `json:"requirements"`
}
ServiceTemplateDetail mirrors internal/api's serviceTemplateDetail: GET /api/v1/service-templates/{id}'s response, including the full compose.yaml body. Also what a custom template id (ListCustomTemplates below) resolves to, through the same endpoint: Category reads "Custom" and RecommendedMemoryBytes/RequiresGPU are always zero for those, see resolveTemplate's own doc comment (internal/api/service_templates.go).
type ServiceTemplateListItem ¶
type ServiceTemplateListItem struct {
ID string `json:"id"`
Name string `json:"name"`
Slogan string `json:"slogan"`
Category string `json:"category"`
DocumentationURL string `json:"documentation_url"`
RecommendedMemoryBytes int64 `json:"recommended_memory_bytes,omitempty"`
RequiresGPU bool `json:"requires_gpu,omitempty"`
}
ServiceTemplateListItem mirrors internal/api's serviceTemplateListItem (internal/api/service_templates.go): one catalog entry from GET /api/v1/service-templates, without the full Compose body.
type Session ¶ added in v0.2.0
type Session struct {
ID string `json:"id"`
Browser string `json:"browser"`
IP string `json:"ip"`
Network string `json:"network"`
CreatedAt time.Time `json:"created_at"`
LastSeenAt time.Time `json:"last_seen_at"`
ExpiresAt time.Time `json:"expires_at"`
Current bool `json:"current"`
}
Session mirrors internal/api's sessionResource.
type SessionInfoResource ¶
type SessionInfoResource struct {
Username string `json:"username"`
ExpiresAt string `json:"expires_at"`
}
SessionInfoResource mirrors internal/api's sessionInfoResponse (internal/api/account.go)'s wire shape. GetSession below sends this over a plain bearer-token request, which handleGetSession's own doc comment says it will never honor ("deliberately not requireAbility: a bearer token has no session of its own to report on").
type SessionLinkResource ¶ added in v0.2.0
SessionLinkResource mirrors internal/api's mintSessionLinkResponse (internal/api/session_links.go): Token is a one-time secret, URL is the same token already embedded in a ready-to-open login link.
type SessionPolicy ¶
type SessionPolicy struct {
TeamID string `json:"team_id"`
TeamName string `json:"team_name"`
IdleTimeout string `json:"idle_timeout"`
MaxLifetime string `json:"max_lifetime"`
IPAllowlist []string `json:"ip_allowlist"`
RequireMFA bool `json:"require_mfa"`
MaxSessions int `json:"max_concurrent_sessions"`
OnLimit string `json:"on_limit"`
UpdatedBy string `json:"updated_by"`
UpdatedAt string `json:"updated_at"`
}
SessionPolicy mirrors internal/api's sessionPolicyResource.
type SessionPolicyRequest ¶
type SessionPolicyRequest struct {
IdleTimeout string `json:"idle_timeout"`
MaxLifetime string `json:"max_lifetime"`
IPAllowlist []string `json:"ip_allowlist"`
RequireMFA bool `json:"require_mfa"`
MaxSessions int `json:"max_concurrent_sessions"`
OnLimit string `json:"on_limit"`
}
SessionPolicyRequest is the body of a policy save; durations use Go syntax such as 30m or 12h.
type SessionToken ¶ added in v0.2.0
type SessionToken struct {
ID string `json:"id"`
Name string `json:"name"`
Abilities []string `json:"abilities"`
CreatedAt time.Time `json:"created_at"`
LastUsedAt *time.Time `json:"last_used_at,omitempty"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
}
SessionToken is the subset of an API token the sessions view shows.
type SetAIProviderRequest ¶
type SetAIProviderRequest struct {
APIKey string `json:"api_key,omitempty"`
BaseURL string `json:"base_url,omitempty"`
DefaultModel string `json:"default_model,omitempty"`
}
SetAIProviderRequest is PUT .../providers/{id}'s body; empty fields are unchanged.
type SetAppDatabaseRequest ¶
type SetAppDatabaseRequest struct {
DatabaseName string `json:"database_name"`
EnvVar string `json:"env_var,omitempty"`
Field string `json:"field,omitempty"`
}
SetAppDatabaseRequest mirrors internal/api's setAppDatabaseRequest (apps_database.go). EnvVar and Field are both optional: the server defaults them ("DATABASE_URL"/"url") when left blank.
type SetAppEgressPolicyRequest ¶ added in v0.2.0
type SetAppEgressPolicyRequest struct {
Mode string `json:"mode"`
Allow []AppEgressAllow `json:"allow"`
}
SetAppEgressPolicyRequest mirrors internal/api's setEgressPolicyRequest (apps_egress.go). Mode must be "allowlist" with at least one Allow entry; the server rejects anything else.
type SetAppEnvironmentRequest ¶
type SetAppEnvironmentRequest struct {
EnvironmentID string `json:"environment_id"`
}
SetAppEnvironmentRequest mirrors internal/api's setAppEnvironmentRequest. An empty EnvironmentID clears the assignment.
type SetAppNodeRequest ¶ added in v0.2.0
type SetAppNodeRequest struct {
NodeID string `json:"node_id"`
}
SetAppNodeRequest mirrors internal/api's setAppNodeRequest. An empty NodeID moves the app back to the control plane's own local node.
type SetAppProjectRequest ¶
type SetAppProjectRequest struct {
ProjectID string `json:"project_id"`
}
SetAppProjectRequest mirrors internal/api's setAppProjectRequest. An empty ProjectID clears the assignment.
type SetAppScheduleRequest ¶ added in v0.2.0
type SetAppScheduleRequest struct {
Cron string `json:"cron,omitempty"`
RunAt string `json:"run_at,omitempty"`
Branch string `json:"branch"`
Timezone string `json:"timezone,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
}
SetAppScheduleRequest mirrors internal/api's setAppScheduleRequest. Enabled defaults to true server-side when nil.
type SetAppStorageRequest ¶ added in v0.2.0
type SetAppStorageRequest struct {
StorageTargetID string `json:"storage_target_id"`
}
SetAppStorageRequest mirrors internal/api's setAppStorageRequest: PUT /api/v1/apps/{name}/storage's request body.
type SetAppVolumesRequest ¶ added in v0.2.0
type SetAppVolumesRequest struct {
Volumes []AppVolumeResource `json:"volumes"`
}
SetAppVolumesRequest mirrors internal/api's setAppVolumesRequest (apps_volumes_attach.go): the service's whole desired volume list, full-replace like SetAppEgressPolicyRequest.
type SetAppVolumesResponse ¶ added in v0.2.0
type SetAppVolumesResponse struct {
Name string `json:"name"`
Volumes []AppVolumeResource `json:"volumes,omitempty"`
}
SetAppVolumesResponse mirrors internal/api's setAppVolumesResponse.
type SetAutoRollbackRequest ¶ added in v0.2.0
type SetAutoRollbackRequest struct {
Enabled bool `json:"enabled"`
}
SetAutoRollbackRequest mirrors internal/api's setAutoRollbackRequest (deploys.go): PUT /api/v1/apps/{name}/auto-rollback's body.
type SetAutoRollbackSLOBurnRequest ¶ added in v0.2.0
type SetAutoRollbackSLOBurnRequest struct {
Mode string `json:"mode"`
}
SetAutoRollbackSLOBurnRequest mirrors internal/api's setAutoRollbackSLOBurnRequest (deploys.go): PUT /api/v1/apps/{name}/auto-rollback-slo-burn's body. Mode is one of "off", "auto", "dry_run", "pause_for_human".
type SetBackupScheduleRequest ¶
type SetBackupScheduleRequest struct {
TargetID string `json:"target_id"`
Schedule string `json:"schedule"`
Retain int `json:"retain,omitempty"`
RetainDays int `json:"retain_days,omitempty"`
}
SetBackupScheduleRequest mirrors internal/api's setBackupScheduleRequest.
type SetDatabaseProjectRequest ¶
type SetDatabaseProjectRequest struct {
ProjectID string `json:"project_id"`
}
SetDatabaseProjectRequest mirrors internal/api's setDatabaseProjectRequest. An empty ProjectID clears the assignment.
type SetDatabasePublicAccessRequest ¶
type SetDatabasePublicAccessRequest struct {
Port int `json:"port,omitempty"`
BindAddress string `json:"bind_address,omitempty"`
}
SetDatabasePublicAccessRequest mirrors internal/api's setDatabasePublicAccessRequest. Port 0 means auto-assign the next free port. BindAddress empty means the server's own default ("private", loopback only); "public" opts into every interface.
type SetDatabaseResourcesRequest ¶
type SetDatabaseResourcesRequest struct {
Resources *ServiceResources `json:"resources"`
}
SetDatabaseResourcesRequest mirrors internal/api's setDatabaseResourcesRequest.
type SetDomainAuthGateRequest ¶ added in v0.2.0
type SetDomainAuthGateRequest struct {
Enabled bool `json:"enabled"`
AuthURL string `json:"auth_url"`
CheckPath string `json:"check_path"`
CopyHeaders []string `json:"copy_headers"`
TimeoutSeconds int `json:"timeout_seconds"`
Provider string `json:"provider,omitempty"`
Allow []AuthGateRule `json:"allow,omitempty"`
}
SetDomainAuthGateRequest mirrors internal/api's setDomainAuthGateRequest. TimeoutSeconds 0 uses the server's APP_AUTH_GATE_TIMEOUT default.
type SetDomainBasicAuthRequest ¶
type SetDomainBasicAuthRequest struct {
Username string `json:"username"`
Password string `json:"password,omitempty"`
}
SetDomainBasicAuthRequest mirrors internal/api's setDomainBasicAuthRequest. Password empty on an update means "leave the currently stored password unchanged".
type SetDomainErrorPageRequest ¶ added in v0.2.0
type SetDomainErrorPageRequest struct {
StatusCode int `json:"status_code"`
Body string `json:"body"`
}
SetDomainErrorPageRequest mirrors internal/api's setDomainErrorPageRequest: one status-code-to-body upsert at a time.
type SetDomainMaintenanceRequest ¶
type SetDomainMaintenanceRequest struct {
Title string `json:"title,omitempty"`
Message string `json:"message,omitempty"`
RetryAfterSeconds int `json:"retry_after_seconds,omitempty"`
Until string `json:"until,omitempty"`
Bypass []string `json:"bypass,omitempty"`
BypassHealthCheck *bool `json:"bypass_health_check,omitempty"`
// MaxDurationSeconds nil takes the server default, 0 means no limit.
MaxDurationSeconds *int `json:"max_duration_seconds,omitempty"`
}
SetDomainMaintenanceRequest is PUT .../maintenance's optional body.
type SetDomainRedirectRequest ¶ added in v0.2.0
type SetDomainRedirectRequest struct {
TargetURL string `json:"target_url"`
StatusCode int `json:"status_code,omitempty"`
}
SetDomainRedirectRequest mirrors internal/api's setDomainRedirectRequest. StatusCode 0 defaults server-side to 301 (permanent).
type SetDomainTLSCertRequest ¶
SetDomainTLSCertRequest mirrors internal/api's setDomainTLSCertRequest: both fields are required every call, there is no "leave the current certificate unchanged" partial-update case.
type SetDomainWAFRequest ¶ added in v0.2.0
type SetDomainWAFRequest struct {
WAFEnabled bool `json:"waf_enabled"`
WAFMode string `json:"waf_mode,omitempty"`
RateLimitRPS int `json:"rate_limit_rps"`
RateLimitBurst int `json:"rate_limit_burst"`
}
SetDomainWAFRequest mirrors internal/api's setDomainWAFRequest. WAFMode empty defaults server-side to "detect". RateLimitRPS 0 means rate limiting is off, independent of WAFEnabled.
type SetExecAccessRequest ¶ added in v0.2.0
type SetExecAccessRequest struct {
Enabled bool `json:"enabled"`
}
SetExecAccessRequest mirrors internal/api's setExecAccessRequest (exec.go): PUT /api/v1/apps/{name}/exec-access's body.
type SetGitDeploySettingsRequest ¶ added in v0.2.0
type SetGitDeploySettingsRequest struct {
DeployPaths *[]string `json:"deploy_paths,omitempty"`
DeployPathsIgnore *[]string `json:"deploy_paths_ignore,omitempty"`
ReportStatus *bool `json:"report_status,omitempty"`
}
SetGitDeploySettingsRequest mirrors internal/api's setGitDeploySettingsRequest; a nil field keeps its current value.
type SetGitSourceBuildRequest ¶ added in v0.2.0
type SetGitSourceBuildRequest struct {
BuildType string `json:"build_type"`
BuildPath string `json:"build_path"`
BaseDirectory string `json:"base_directory"`
BuildCommand string `json:"build_command"`
PublishDir string `json:"publish_dir"`
}
SetGitSourceBuildRequest mirrors internal/api's setGitSourceBuildRequest.
type SetGitSourceRequest ¶
type SetGitSourceRequest struct {
RepoURL string `json:"repo_url"`
Branch string `json:"branch,omitempty"`
BuildType string `json:"build_type,omitempty"`
BuildPath string `json:"build_path,omitempty"`
// BaseDirectory is the build context, relative to the repository root.
BaseDirectory string `json:"base_directory,omitempty"`
BuildCommand string `json:"build_command,omitempty"`
PublishDir string `json:"publish_dir,omitempty"`
Token string `json:"token,omitempty"`
TriggerMode string `json:"trigger_mode,omitempty"`
}
SetGitSourceRequest mirrors internal/api's setGitSourceRequest (internal/api/git_sources.go), minus the multi-service Services/ AdditionalServices fields (see GitSourceResource's own doc comment).
type SetLogDrainRequest ¶
type SetLogDrainRequest struct {
Type string `json:"type"`
Target string `json:"target"`
Enabled bool `json:"enabled"`
}
SetLogDrainRequest mirrors internal/api's setLogDrainRequest.
type SetNodeFailureDomainRequest ¶
type SetNodeFailureDomainRequest struct {
Region *string `json:"region,omitempty"`
Provider *string `json:"provider,omitempty"`
Zone *string `json:"zone,omitempty"`
}
SetNodeFailureDomainRequest is the body of PUT /api/v1/nodes/{id}/region. A nil field keeps the stored value; a pointer to "" clears it.
type SetNodeProviderCredentialRequest ¶ added in v0.2.0
type SetNodeProviderCredentialRequest struct {
Provider string `json:"provider"`
Token string `json:"token"`
SecretAccessKey string `json:"secret_access_key,omitempty"`
SessionToken string `json:"session_token,omitempty"`
Region string `json:"region,omitempty"`
RoleARN string `json:"role_arn,omitempty"`
UseAmbientCredentials bool `json:"use_ambient_credentials,omitempty"`
Method string `json:"method,omitempty"`
Verify bool `json:"verify,omitempty"`
Label string `json:"label,omitempty"`
Location string `json:"location,omitempty"`
Notes string `json:"notes,omitempty"`
}
SetNodeProviderCredentialRequest is POST /api/v1/node-providers' body. The fields after Token mirror internal/api's own request struct and are aws-only: for hetzner/digitalocean, Token alone is the provider's bearer API token.
type SetNodeWorkloadsRequest ¶
type SetNodeWorkloadsRequest struct {
AcceptsAppWorkloads bool `json:"accepts_app_workloads"`
AcceptsBuildWorkloads bool `json:"accepts_build_workloads"`
}
SetNodeWorkloadsRequest mirrors internal/api's setNodeWorkloadsRequest: a full replace of both fields, not a partial patch.
type SetPreviewPolicyRequest ¶ added in v0.2.0
type SetPreviewPolicyRequest struct {
OnLimit *string `json:"on_limit,omitempty"`
AllowForkPreviews *bool `json:"allow_fork_previews,omitempty"`
TTLHours *int `json:"ttl_hours,omitempty"`
MaxPreviews *int `json:"max_previews,omitempty"`
MemoryLimit *string `json:"memory_limit,omitempty"`
CPULimit *float64 `json:"cpu_limit,omitempty"`
IdleSleepMinutes *int `json:"idle_sleep_minutes,omitempty"`
DatabaseStrategy *string `json:"database_strategy,omitempty"`
SeedDatabase *string `json:"seed_database,omitempty"`
AllowForkSecrets *bool `json:"allow_fork_secrets,omitempty"`
GateBasicAuth *bool `json:"gate_basic_auth,omitempty"`
GateUsername *string `json:"gate_username,omitempty"`
GatePassword *string `json:"gate_password,omitempty"`
AllowIndexing *bool `json:"allow_indexing,omitempty"`
}
SetPreviewPolicyRequest is PUT .../preview-policy's body; nil fields are left unchanged.
type SetPreviewSettingsRequest ¶
type SetPreviewSettingsRequest struct {
Enabled *bool `json:"enabled,omitempty"`
PostPRComments *bool `json:"post_pr_comments,omitempty"`
}
SetPreviewSettingsRequest mirrors internal/api's setPreviewSettingsRequest (preview_environments_handlers.go). Both fields are optional pointers: nil means "leave the currently stored value unchanged," so SetPreviewEnabled and SetPreviewPostPRComments (client.go) can each touch just their own toggle without resetting the other back to false.
type SetProjectOrganizationRequest ¶
type SetProjectOrganizationRequest struct {
OrgID string `json:"org_id"`
}
SetProjectOrganizationRequest mirrors internal/api's setProjectOrganizationRequest. An empty OrgID clears the assignment.
type SetSecretBuildTimeRequest ¶
type SetSecretBuildTimeRequest struct {
BuildTime bool `json:"build_time"`
}
SetSecretBuildTimeRequest mirrors internal/api's setSecretBuildTimeRequest.
type SetSecretLockRequest ¶
type SetSecretLockRequest struct {
Locked bool `json:"locked"`
}
SetSecretLockRequest mirrors internal/api's setSecretLockRequest (internal/api/secrets.go).
type SetSecretRequest ¶
type SetSecretRequest struct {
Value string `json:"value"`
OverwriteLocked bool `json:"overwrite_locked"`
BuildTime *bool `json:"build_time,omitempty"`
}
SetSecretRequest mirrors internal/api's setSecretRequest (internal/api/secrets.go).
type SetSecretRotationPolicyRequest ¶
type SetSecretRotationPolicyRequest struct {
IntervalDays int `json:"interval_days"`
GraceHours int `json:"grace_hours"`
Owner string `json:"owner"`
AutoRotate bool `json:"auto_rotate"`
}
SetSecretRotationPolicyRequest is the PUT body for a rotation policy.
type SetSharedEnvSecretRequest ¶ added in v0.2.0
type SetSharedEnvSecretRequest struct {
}
SetSharedEnvSecretRequest mirrors internal/api's setSharedEnvSecretRequest (internal/api/shared_env_secrets.go).
type SetVolumeBackupScheduleRequest ¶
type SetVolumeBackupScheduleRequest struct {
TargetID string `json:"target_id"`
Schedule string `json:"schedule"`
Retain int `json:"retain,omitempty"`
RetainDays int `json:"retain_days,omitempty"`
SqlitePath string `json:"sqlite_path,omitempty"`
}
SetVolumeBackupScheduleRequest mirrors internal/api's setVolumeBackupScheduleRequest.
type SetupGuideProgress ¶ added in v0.2.0
SetupGuideProgress counts done items of a multi-item setup step.
type SetupGuideResource ¶ added in v0.2.0
type SetupGuideResource struct {
Steps []SetupGuideStep `json:"steps"`
ReadyPercent int `json:"ready_percent"`
Done int `json:"done"`
Total int `json:"total"`
NextStep string `json:"next_step,omitempty"`
Complete bool `json:"complete"`
Hidden bool `json:"hidden"`
ServerAddress string `json:"server_address,omitempty"`
}
SetupGuideResource is GET /api/v1/setup/guide.
type SetupGuideStep ¶ added in v0.2.0
type SetupGuideStep struct {
ID string `json:"id"`
Title string `json:"title"`
State string `json:"state"`
Optional bool `json:"optional"`
EstimateMinutes int `json:"estimate_minutes"`
Href string `json:"href"`
BlockedBy []string `json:"blocked_by,omitempty"`
Reason string `json:"reason,omitempty"`
Progress *SetupGuideProgress `json:"progress,omitempty"`
Manual bool `json:"manual,omitempty"`
}
SetupGuideStep is one entry of the Get started checklist.
type SetupStatusResource ¶ added in v0.2.0
type SetupStatusResource struct {
NeedsSetup bool `json:"needs_setup"`
}
SetupStatusResource mirrors GET /api/v1/auth/setup-status.
type SharedEnvVarResource ¶ added in v0.2.0
type SharedEnvVarResource struct {
}
SharedEnvVarResource mirrors internal/api's sharedEnvVarResource (internal/api/shared_env_secrets.go): one shared env var at the project/organization/environment tier. Value is always "" for a secret-marked entry, matching SecretKeyResource's own "never a value" rule above. UpdatedAt/Stale are only populated when Secret is true, see sharedEnvVarResource's own doc comment.
type ShieldBotList ¶
ShieldBotList is GET /api/v1/system/shield/bots.
type ShieldLimits ¶
type ShieldLimits struct {
MaxBotAgents int `json:"max_bot_agents"`
MaxRetryAfterSeconds int `json:"max_retry_after_seconds"`
DefaultRetryAfter int `json:"default_retry_after_seconds"`
TarpitMaxMillis int `json:"tarpit_max_ms"`
AttackRatePerMinute int `json:"attack_rate_per_minute"`
AttackBurst int `json:"attack_burst"`
AttackMaxConcurrent int `json:"attack_max_concurrent"`
AttackDefaultMinutes int `json:"attack_default_minutes"`
AttackMaxMinutes int `json:"attack_max_minutes"`
MaxTrackedIPsPerDomain int `json:"max_tracked_ips"`
}
ShieldLimits are the instance caps and under-attack defaults for the abuse shield.
type ShieldPolicyResource ¶
type ShieldPolicyResource struct {
Domain string `json:"domain"`
Kind string `json:"kind"`
Configured bool `json:"configured"`
Spec trafficpolicy.Shield `json:"spec"`
UpdatedAt string `json:"updated_at,omitempty"`
}
ShieldPolicyResource is GET/PUT .../domains/{domain}/shield.
type ShieldRecommendedResource ¶
type ShieldRecommendedResource struct {
DryRun bool `json:"dry_run"`
Blocked string `json:"blocked,omitempty"`
RatePerMinute int `json:"rate_per_minute"`
Burst int `json:"burst"`
MaxConcurrent int `json:"max_concurrent"`
BlockBots bool `json:"block_bots"`
Applied []string `json:"applied"`
Skipped []ShieldRecommendedSkip `json:"skipped"`
}
ShieldRecommendedResource is the result of applying the recommended shield to an app.
type ShieldRecommendedSkip ¶
ShieldRecommendedSkip is a domain the recommended shield left alone.
type SignInApproval ¶ added in v0.2.0
type SignInApproval struct {
ID string `json:"id"`
RequesterIP string `json:"requester_ip"`
UserAgent string `json:"user_agent"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
}
SignInApproval mirrors internal/api's signInApprovalItem. It never carries the number the waiting browser shows: the approver has to type it.
type SignInCode ¶ added in v0.2.0
type SignInCode struct {
ID string `json:"id"`
RequesterIP string `json:"requester_ip"`
UserAgent string `json:"user_agent"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
Revealable bool `json:"revealable"`
}
SignInCode mirrors internal/api's signInCodeItem: a waiting code request, without the code itself.
type SignInRequests ¶ added in v0.2.0
type SignInRequests struct {
Codes []SignInCode `json:"codes"`
Approvals []SignInApproval `json:"approvals"`
}
SignInRequests mirrors internal/api's signInRequestsResponse.
type SilenceMatchers ¶ added in v0.2.0
type SilenceMatchers struct {
RuleIDs []string `json:"rule_ids,omitempty"`
Kinds []string `json:"kinds,omitempty"`
Apps []string `json:"apps,omitempty"`
Nodes []string `json:"nodes,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Severities []string `json:"severities,omitempty"`
Metrics []string `json:"metrics,omitempty"`
}
SilenceMatchers mirrors alerting.SilenceMatcher.
type SilenceResource ¶ added in v0.2.0
type SilenceResource struct {
ID string `json:"id"`
Matchers SilenceMatchers `json:"matchers"`
StartsAt time.Time `json:"starts_at"`
EndsAt time.Time `json:"ends_at"`
CreatedBy string `json:"created_by"`
Reason string `json:"reason,omitempty"`
CreatedAt time.Time `json:"created_at"`
ExpiredAt *time.Time `json:"expired_at,omitempty"`
Status string `json:"status"`
}
SilenceResource mirrors internal/api's silenceResource.
type SimulatedPlacement ¶
type SimulatedPlacement struct {
Name string `json:"name"`
From string `json:"from_node_id,omitempty"`
NodeID string `json:"node_id,omitempty"`
NodeName string `json:"node_name,omitempty"`
Zone string `json:"zone,omitempty"`
Why string `json:"why,omitempty"`
Unplaced string `json:"unplaced,omitempty"`
}
SimulatedPlacement is one workload in a placement or failure simulation.
type SleepActivity ¶
type SleepActivity struct {
LastRequestAt *time.Time `json:"last_request_at,omitempty"`
LastNetworkActivityAt *time.Time `json:"last_network_activity_at,omitempty"`
OpenConnections int `json:"open_connections"`
IdleForSeconds int64 `json:"idle_for_seconds"`
WillSleepAt *time.Time `json:"will_sleep_at,omitempty"`
}
SleepActivity is what the scheduler last saw.
type SleepEnableOptions ¶
type SleepEnableOptions struct {
HoldRequests *bool `json:"hold_requests,omitempty"`
IgnorePaths []string `json:"ignore_paths,omitempty"`
PortWake *bool `json:"port_wake,omitempty"`
}
SleepEnableOptions are the optional settings sent with an enable.
type SleepEvent ¶
type SleepEvent struct {
ID int64 `json:"id"`
Kind string `json:"kind"`
At time.Time `json:"at"`
Reason string `json:"reason,omitempty"`
IdleMinutes int `json:"idle_minutes,omitempty"`
TriggerPath string `json:"trigger_path,omitempty"`
TriggerSource string `json:"trigger_source,omitempty"`
Detail string `json:"detail,omitempty"`
DurationSeconds *int64 `json:"duration_seconds,omitempty"`
WakeLatencyMs *int64 `json:"wake_latency_ms,omitempty"`
Actor string `json:"actor"`
}
SleepEvent mirrors internal/api's sleepEventResource.
type SleepFix ¶
type SleepFix struct {
Kind string `json:"kind"`
Label string `json:"label"`
Method string `json:"method"`
Path string `json:"path"`
Body map[string]any `json:"body,omitempty"`
}
SleepFix is a suggested remedy for a blocker or warning.
type SleepFleet ¶
type SleepFleet struct {
Enabled int `json:"enabled"`
Sleeping int `json:"sleeping"`
ReclaimedBytes int64 `json:"reclaimed_bytes"`
Apps []SleepFleetApp `json:"apps"`
}
SleepFleet mirrors internal/api's sleepFleetResource.
type SleepFleetApp ¶
type SleepFleetApp struct {
Name string `json:"name"`
IdleMinutes int `json:"idle_minutes"`
Sleeping bool `json:"sleeping"`
MemoryLimitBytes int64 `json:"memory_limit_bytes"`
Since *time.Time `json:"since,omitempty"`
WakeTiming WakeTiming `json:"wake_timing"`
}
SleepFleetApp mirrors internal/api's sleepFleetApp.
type SleepHistory ¶
type SleepHistory struct {
Enabled bool `json:"enabled"`
Sleeping bool `json:"sleeping"`
Events []SleepEvent `json:"events"`
Stats SleepStats `json:"stats"`
// WakeTiming covers the app's most recent timed wakes, not the requested window.
WakeTiming WakeTiming `json:"wake_timing"`
IdleLimits SleepIdleLimits `json:"idle_limits"`
}
SleepHistory mirrors internal/api's sleepHistoryResource.
type SleepIdleLimits ¶
type SleepIdleLimits struct {
MinMinutes int `json:"min_minutes"`
MaxMinutes int `json:"max_minutes"`
DefaultMinutes int `json:"default_minutes"`
}
SleepIdleLimits mirrors internal/api's sleepIdleLimits.
type SleepItem ¶
type SleepItem struct {
Code string `json:"code"`
Title string `json:"title"`
Detail string `json:"detail"`
Fix *SleepFix `json:"fix,omitempty"`
}
SleepItem is one blocker or warning.
type SleepPortWake ¶
type SleepPortWake struct {
Supported bool `json:"supported"`
Active bool `json:"active"`
Ports []int `json:"ports"`
}
SleepPortWake is the live port wake state.
type SleepSettings ¶
type SleepSettings struct {
IdleMinutes int `json:"idle_minutes"`
HoldRequests bool `json:"hold_requests"`
IgnorePaths []string `json:"ignore_paths"`
PortWake bool `json:"port_wake"`
}
SleepSettings are the stored sleep options.
type SleepStats ¶
type SleepStats struct {
CurrentlyAsleepSince *time.Time `json:"currently_asleep_since,omitempty"`
AsleepSeconds7d int64 `json:"asleep_seconds_7d"`
AsleepSeconds30d int64 `json:"asleep_seconds_30d"`
WakeCount7d int `json:"wake_count_7d"`
AvgWakeLatencyMs *int64 `json:"avg_wake_latency_ms,omitempty"`
P95WakeLatencyMs *int64 `json:"p95_wake_latency_ms,omitempty"`
LastSleptAt *time.Time `json:"last_slept_at,omitempty"`
LastWokeAt *time.Time `json:"last_woke_at,omitempty"`
LastWakeReason string `json:"last_wake_reason,omitempty"`
MemoryGiBHoursSaved30d *float64 `json:"memory_gib_hours_saved_30d,omitempty"`
}
SleepStats mirrors internal/api's sleepStatsResource.
type SlowQueryEntryResource ¶ added in v0.2.0
type SlowQueryEntryResource struct {
Timestamp time.Time `json:"timestamp"`
DurationMs float64 `json:"duration_ms"`
Query string `json:"query"`
RowsExamined int64 `json:"rows_examined,omitempty"`
}
SlowQueryEntryResource mirrors internal/api's slowQueryEntryResource (internal/api/database_slow_queries.go).
type SourceUpload ¶
type SourceUpload struct {
Hash string `json:"hash"`
Size int64 `json:"size"`
FileCount int `json:"file_count"`
ExtractedBytes int64 `json:"extracted_bytes"`
CreatedAt string `json:"created_at"`
ExpiresAt string `json:"expires_at,omitempty"`
Deduped bool `json:"deduped,omitempty"`
// HasIndex and SiteRoot are set for zip uploads only.
HasIndex *bool `json:"has_index,omitempty"`
SiteRoot string `json:"site_root,omitempty"`
}
SourceUpload mirrors internal/api's sourceUploadResource.
type SourceUploadList ¶
type SourceUploadList struct {
Items []SourceUpload `json:"items"`
UsageBytes int64 `json:"usage_bytes"`
}
SourceUploadList is GET /api/v1/apps/{name}/uploads.
type SpendDryRun ¶
type SpendDryRun struct {
spendcap.Preview
Scope string `json:"scope"`
Target string `json:"target"`
Currency string `json:"currency"`
Note string `json:"note"`
}
SpendDryRun is the answer to a pause dry-run; nothing was changed.
type SpendForecast ¶
type SpendForecast struct {
Cost usagecost.Band `json:"cost"`
EgressBytes int64 `json:"egress_bytes"`
Pct float64 `json:"pct"`
WillExceed bool `json:"will_exceed"`
}
SpendForecast is the projected month end position of a cap.
type SpendGuardInfo ¶
type SpendGuardInfo struct {
Blocked bool `json:"blocked"`
Allowed bool `json:"allowed"`
Reasons []SpendGuardReason `json:"reasons"`
Override *spendcap.Override `json:"override,omitempty"`
}
SpendGuardInfo says whether new deploys of an app are refused.
type SpendGuardReason ¶
SpendGuardReason is one cap or budget holding an app at its limit.
type SplitBucket ¶
type SplitBucket struct {
Bucket time.Time `json:"bucket"`
Counts map[string]uint64 `json:"counts"`
}
SplitBucket is one hour of per-variant request counts.
type SplitStartRequest ¶
type SplitStartRequest struct {
Variants []SplitVariantInput `json:"variants"`
CookieName string `json:"cookie_name,omitempty"`
CookieTTL string `json:"cookie_ttl,omitempty"`
}
SplitStartRequest is the body of POST /api/v1/apps/{name}/split. The production arm gets the leftover weight when it is not listed.
type SplitTest ¶
type SplitTest struct {
Active bool `json:"active"`
Supported bool `json:"supported"`
Unsupported string `json:"unsupported_reason,omitempty"`
TestID string `json:"test_id,omitempty"`
Status string `json:"status,omitempty"`
CookieName string `json:"cookie_name,omitempty"`
CookieTTLSecs int `json:"cookie_ttl_secs,omitempty"`
OverrideParam string `json:"override_param,omitempty"`
CreatedAt *time.Time `json:"created_at,omitempty"`
EndedAt *time.Time `json:"ended_at,omitempty"`
EndReason string `json:"end_reason,omitempty"`
TotalRequests uint64 `json:"total_requests"`
Variants []SplitVariant `json:"variants"`
Hourly []SplitBucket `json:"hourly,omitempty"`
}
SplitTest mirrors internal/api's split test resource.
type SplitVariant ¶
type SplitVariant struct {
ID string `json:"id"`
Label string `json:"label"`
Kind string `json:"kind"`
Ref string `json:"ref,omitempty"`
Weight int `json:"weight"`
Status string `json:"status"`
Host string `json:"host,omitempty"`
Requests uint64 `json:"requests"`
QALink string `json:"qa_link,omitempty"`
}
SplitVariant mirrors one variant of internal/api's split test resource.
type SplitVariantInput ¶
type SplitVariantInput struct {
Label string `json:"label,omitempty"`
Kind string `json:"kind"`
Ref string `json:"ref"`
Weight int `json:"weight"`
}
SplitVariantInput is one non-production arm in a start request.
type StandaloneDomain ¶ added in v0.2.0
type StandaloneDomain struct {
Domain string `json:"domain"`
Kind string `json:"kind"`
Scope string `json:"scope"`
Target string `json:"target"`
TargetKind string `json:"target_kind"`
TargetURL string `json:"target_url"`
UpstreamTLS bool `json:"upstream_tls"`
TLSSkipVerify bool `json:"tls_skip_verify"`
TLSServerName string `json:"tls_server_name,omitempty"`
HostHeader string `json:"host_header"`
WebSocket bool `json:"websocket"`
DialTimeoutSeconds int `json:"dial_timeout_seconds"`
ReadTimeoutSeconds int `json:"read_timeout_seconds"`
StripPrefix string `json:"strip_prefix,omitempty"`
Description string `json:"description,omitempty"`
CreatedBy string `json:"created_by,omitempty"`
CreatedAt string `json:"created_at,omitempty"`
UpdatedAt string `json:"updated_at,omitempty"`
}
StandaloneDomain mirrors internal/api's standaloneDomainResource.
type StandaloneDomainRequest ¶ added in v0.2.0
type StandaloneDomainRequest struct {
Domain string `json:"domain,omitempty"`
Target *string `json:"target,omitempty"`
UpstreamTLS *bool `json:"upstream_tls,omitempty"`
TLSSkipVerify *bool `json:"tls_skip_verify,omitempty"`
TLSServerName *string `json:"tls_server_name,omitempty"`
HostHeader *string `json:"host_header,omitempty"`
WebSocket *bool `json:"websocket,omitempty"`
DialTimeoutSeconds *int `json:"dial_timeout_seconds,omitempty"`
ReadTimeoutSeconds *int `json:"read_timeout_seconds,omitempty"`
StripPrefix *string `json:"strip_prefix,omitempty"`
Description *string `json:"description,omitempty"`
Confirm bool `json:"confirm,omitempty"`
}
StandaloneDomainRequest is POST and PUT's body; nil fields keep the stored value on PUT.
type StaticBuildSuggestion ¶
type StaticBuildSuggestion struct {
PresetID string `json:"preset_id"`
PresetName string `json:"preset_name"`
Command string `json:"command"`
PublishDir string `json:"publish_dir"`
}
StaticBuildSuggestion mirrors internal/repolayout's StaticBuildSuggestion.
type StaticRoutesLintRequest ¶
type StaticRoutesLintRequest struct {
Redirects string `json:"redirects"`
Headers string `json:"headers"`
}
StaticRoutesLintRequest is pasted _redirects and _headers text.
type StaticRoutesLintResource ¶
type StaticRoutesLintResource struct {
staticroutes.Ruleset
Error string `json:"error,omitempty"`
}
StaticRoutesLintResource is the parse result of a lint request.
type StaticRoutesResource ¶
type StaticRoutesResource struct {
staticroutes.Ruleset
Published bool `json:"published"`
}
StaticRoutesResource is a static site's effective routing rules.
type StaticRoutesTestRequest ¶
type StaticRoutesTestRequest struct {
Method string `json:"method,omitempty"`
Path string `json:"path"`
Query string `json:"query,omitempty"`
}
StaticRoutesTestRequest is one request to run through a site's rules.
type StaticSiteResource ¶ added in v0.2.0
StaticSiteResource mirrors internal/api's staticSiteResource (internal/api/static_sites.go): one entry of GET /api/v1/static-sites.
type StatusComponent ¶ added in v0.2.0
type StatusComponent struct {
ID string `json:"id,omitempty"`
Kind string `json:"kind"`
Target string `json:"target"`
DisplayName string `json:"display_name"`
Position int `json:"position"`
}
StatusComponent mirrors internal/api's statusComponentResource.
type StatusIncident ¶ added in v0.2.0
type StatusIncident struct {
ID string `json:"id,omitempty"`
Kind string `json:"kind"`
Title string `json:"title"`
Status string `json:"status"`
Impact string `json:"impact"`
ComponentIDs []string `json:"component_ids"`
StartsAt *time.Time `json:"starts_at,omitempty"`
EndsAt *time.Time `json:"ends_at,omitempty"`
ResolvedAt *time.Time `json:"resolved_at,omitempty"`
Body string `json:"body,omitempty"`
Updates []StatusUpdate `json:"updates,omitempty"`
}
StatusIncident mirrors internal/api's statusIncidentResource.
type StatusPageComponentView ¶ added in v0.2.0
type StatusPageComponentView struct {
Name string `json:"name"`
Status string `json:"status"`
Uptime90 *float64 `json:"uptime_90d"`
}
StatusPageComponentView is one component in the preview endpoint's view.
type StatusPageSettings ¶ added in v0.2.0
type StatusPageSettings struct {
Enabled bool `json:"enabled"`
Title string `json:"title"`
Description string `json:"description"`
CustomDomain string `json:"custom_domain"`
PublicPath string `json:"public_path,omitempty"`
}
StatusPageSettings mirrors internal/api's statusSettingsResource.
type StatusPageView ¶ added in v0.2.0
type StatusPageView struct {
Title string `json:"title"`
Status string `json:"status"`
StatusText string `json:"status_text"`
Components []StatusPageComponentView `json:"components"`
}
StatusPageView is the public payload as the preview endpoint returns it.
type StatusUpdate ¶ added in v0.2.0
type StatusUpdate struct {
Status string `json:"status"`
Body string `json:"body"`
CreatedAt time.Time `json:"created_at,omitempty"`
}
StatusUpdate is one incident timeline entry.
type StepUpProof ¶ added in v0.2.0
type StepUpProof struct {
Password string `json:"password,omitempty"`
Code string `json:"code,omitempty"`
RecoveryCode string `json:"recovery_code,omitempty"`
}
StepUpProof is the account owner's password, plus the authenticator or recovery code when the account has two-factor authentication.
type StorageBucket ¶
type StorageBucket struct {
ID string `json:"id"`
Name string `json:"name"`
TargetID string `json:"target_id"`
Prefix string `json:"prefix"`
Public bool `json:"public"`
PublicURL string `json:"public_url,omitempty"`
QuotaBytes int64 `json:"quota_bytes"`
LifecycleDays int `json:"lifecycle_days"`
LastSweptAt string `json:"last_swept_at,omitempty"`
CreatedAt string `json:"created_at"`
Apps []BucketAppRef `json:"apps"`
EnvKeys []string `json:"env_keys,omitempty"`
}
StorageBucket is a named bucket on a storage destination.
type StorageDefault ¶
type StorageDefault struct {
DataClass string `json:"data_class"`
TargetID string `json:"target_id"`
UpdatedAt string `json:"updated_at"`
}
StorageDefault routes one data class to a destination.
type StorageDefaults ¶
type StorageDefaults struct {
Classes []string `json:"classes"`
Defaults []StorageDefault `json:"defaults"`
}
StorageDefaults is GET /api/v1/storage/defaults.
type StorageDestination ¶ added in v0.2.0
type StorageDestination struct {
ID string `json:"id"`
Name string `json:"name"`
Preset string `json:"preset"`
Provider string `json:"provider"`
Endpoint string `json:"endpoint,omitempty"`
Region string `json:"region,omitempty"`
Bucket string `json:"bucket"`
PathStyle bool `json:"path_style"`
AccountID string `json:"account_id,omitempty"`
CreatedAt string `json:"created_at"`
ArchivePolicies int `json:"archive_policies"`
Kind string `json:"kind"`
NodeID string `json:"node_id,omitempty"`
Directory string `json:"directory,omitempty"`
QuotaBytes int64 `json:"quota_bytes"`
UsedBytes int64 `json:"used_bytes"`
Objects int64 `json:"objects"`
OverQuota bool `json:"over_quota"`
MonthlyCostUSD float64 `json:"monthly_cost_usd"`
DefaultFor []string `json:"default_for"`
}
StorageDestination is a connected S3-compatible bucket. It never carries credentials.
type StorageDestinationRequest ¶ added in v0.2.0
type StorageDestinationRequest struct {
Name string `json:"name"`
Preset string `json:"preset"`
Endpoint string `json:"endpoint,omitempty"`
Region string `json:"region,omitempty"`
Bucket string `json:"bucket"`
AccountID string `json:"account_id,omitempty"`
PathStyle *bool `json:"path_style,omitempty"`
AccessKeyID string `json:"access_key_id,omitempty"`
SecretAccessKey string `json:"secret_access_key,omitempty"`
Verify bool `json:"verify,omitempty"`
Kind string `json:"kind,omitempty"`
NodeID string `json:"node_id,omitempty"`
Directory string `json:"directory,omitempty"`
QuotaBytes *int64 `json:"quota_bytes,omitempty"`
}
StorageDestinationRequest creates or updates a destination.
type StorageOrphanResource ¶ added in v0.2.0
type StorageOrphanResource struct {
ID string `json:"id"`
Name string `json:"name"`
SizeBytes *int64 `json:"size_bytes,omitempty"`
CreatedAt string `json:"created_at,omitempty"`
AgeDays *int `json:"age_days,omitempty"`
BelongedTo struct {
Kind string `json:"kind"`
AppName string `json:"app_name,omitempty"`
Name string `json:"name,omitempty"`
Role string `json:"role"`
} `json:"belonged_to"`
BackupCount int `json:"backup_count"`
LastBackup *struct {
ID string `json:"id"`
At string `json:"at"`
SizeBytes int64 `json:"size_bytes"`
} `json:"last_backup,omitempty"`
}
StorageOrphanResource mirrors internal/api's storageOrphanResource.
type StorageOrphansResponse ¶ added in v0.2.0
type StorageOrphansResponse struct {
Orphans []StorageOrphanResource `json:"orphans"`
TotalBytes int64 `json:"total_bytes"`
ThresholdBytes int64 `json:"threshold_bytes"`
}
StorageOrphansResponse mirrors internal/api's storageOrphansResponse.
type StorageProbeResult ¶ added in v0.2.0
type StorageProbeResult struct {
OK bool `json:"ok"`
Reason string `json:"reason,omitempty"`
Message string `json:"message,omitempty"`
Fix string `json:"fix,omitempty"`
Steps []StorageProbeStep `json:"steps"`
}
StorageProbeResult is the outcome of a put/get/delete probe.
type StorageProbeStep ¶ added in v0.2.0
type StorageProbeStep struct {
Name string `json:"name"`
OK bool `json:"ok"`
Error string `json:"error,omitempty"`
}
StorageProbeStep is one step of a connection probe.
type StorageProvider ¶ added in v0.2.0
type StorageProvider struct {
ID string `json:"id"`
Label string `json:"label"`
EndpointTemplate string `json:"endpoint_template,omitempty"`
DefaultRegion string `json:"default_region,omitempty"`
PathStyle bool `json:"path_style"`
NeedsAccountID bool `json:"needs_account_id"`
NeedsRegion bool `json:"needs_region"`
NeedsEndpoint bool `json:"needs_endpoint"`
}
StorageProvider is one provider preset from GET /api/v1/storage/providers.
type StuckAction ¶
type StuckAction struct {
Type string `json:"type"`
Label string `json:"label"`
FixID string `json:"fix_id,omitempty"`
Href string `json:"href,omitempty"`
}
StuckAction is one typed next step in a StuckReport cause.
type StuckCause ¶
type StuckCause struct {
Code string `json:"code"`
Title string `json:"title"`
Explanation string `json:"explanation"`
Confidence string `json:"confidence"`
Evidence []string `json:"evidence"`
Actions []StuckAction `json:"actions"`
}
StuckCause is one ranked likely reason a resource is not ready.
type StuckCondition ¶
type StuckCondition struct {
Type string `json:"type"`
Status string `json:"status"`
Reason string `json:"reason"`
Message string `json:"message,omitempty"`
Since time.Time `json:"since"`
}
StuckCondition is one entry of the condition timeline.
type StuckReport ¶
type StuckReport struct {
Kind string `json:"kind"`
Name string `json:"name"`
Ready bool `json:"ready"`
Stuck bool `json:"stuck"`
NotReadySeconds int64 `json:"not_ready_seconds"`
ThresholdSecs int64 `json:"threshold_seconds"`
Timeline []StuckCondition `json:"timeline"`
Causes []StuckCause `json:"causes"`
}
StuckReport is GET /api/v1/diagnose/{kind}/{name}.
type SupplyChainSettings ¶ added in v0.2.0
type SupplyChainSettings struct {
App string `json:"app"`
ScanEnabled bool `json:"scan_enabled"`
ScanGate string `json:"scan_gate"`
ServerEnabled bool `json:"server_enabled"`
BuildAttest bool `json:"build_attest"`
Scanner string `json:"scanner"`
ScannerImage string `json:"scanner_image"`
OverrideArmed bool `json:"override_armed"`
OverrideReason string `json:"override_reason,omitempty"`
OverrideExpires *time.Time `json:"override_expires_at,omitempty"`
}
SupplyChainSettings is GET /api/v1/apps/{name}/supply-chain's body.
type SupplyChainSettingsRequest ¶ added in v0.2.0
type SupplyChainSettingsRequest struct {
ScanEnabled *bool `json:"scan_enabled,omitempty"`
ScanGate *string `json:"scan_gate,omitempty"`
}
SupplyChainSettingsRequest is PUT .../supply-chain's body; nil fields stay unchanged.
type SweepPreviewEnvironmentsResult ¶
type SweepPreviewEnvironmentsResult struct {
Swept int `json:"swept"`
}
SweepPreviewEnvironmentsResult mirrors internal/api's sweepPreviewEnvironmentsResponse (preview_environments_sweep.go).
type SystemCacheApp ¶
type SystemCacheApp struct {
App string `json:"app"`
Domains int `json:"domains"`
EnabledDomains int `json:"enabled_domains"`
Requests uint64 `json:"requests"`
CacheNumbers
}
SystemCacheApp is one app's row of the instance cache table.
type SystemCacheResource ¶
type SystemCacheResource struct {
Limits CacheLimits `json:"limits"`
Totals CacheNumbers `json:"totals"`
Series []CacheBucket `json:"series"`
Apps []SystemCacheApp `json:"apps"`
}
SystemCacheResource is GET /api/v1/system/cache.
type SystemDoctorResource ¶
type SystemDoctorResource struct {
OK bool `json:"ok"`
Checks []DoctorCheckResource `json:"checks"`
// Silenced counts muted failing or warning checks; they stay in Checks.
Silenced int `json:"silenced,omitempty"`
}
SystemDoctorResource mirrors internal/api's systemDoctorResponse (internal/api/doctor.go): the "levelrail-cli doctor" preflight bundle, a superset of SystemStatusResource above. OK is false only when at least one check's Status is "fail"; "warn" doesn't affect it.
type SystemNetwork ¶
type SystemNetwork struct {
Name string `json:"name"`
OwnerKind string `json:"owner_kind"`
OwnerName string `json:"owner_name"`
Subnets []string `json:"subnets"`
AttachedContainers int `json:"attached_containers"`
Orphaned bool `json:"orphaned"`
Removable bool `json:"removable"`
Reason string `json:"reason"`
Foreign bool `json:"foreign_instance"`
CreatedAt time.Time `json:"created_at"`
}
SystemNetwork is one product network.
type SystemNetworks ¶
type SystemNetworks struct {
Pool NetworkPool `json:"pool"`
Networks []SystemNetwork `json:"networks"`
OrphanCount int `json:"orphan_count"`
}
SystemNetworks is the GET /api/v1/system/networks resource.
type SystemNetworksPrune ¶
type SystemNetworksPrune struct {
DryRun bool `json:"dry_run"`
Candidates []string `json:"candidates"`
Removed []string `json:"removed"`
}
SystemNetworksPrune is the POST /api/v1/system/networks/prune resource.
type SystemPruneResult ¶ added in v0.2.0
type SystemPruneResult struct {
ContainersRemoved []string `json:"containers_removed"`
ContainersReclaimedBytes uint64 `json:"containers_reclaimed_bytes"`
ImagesRemoved []string `json:"images_removed"`
ImagesReclaimedBytes uint64 `json:"images_reclaimed_bytes"`
VolumesRemoved []string `json:"volumes_removed"`
VolumesReclaimedBytes uint64 `json:"volumes_reclaimed_bytes"`
BuildCacheReclaimedBytes uint64 `json:"build_cache_reclaimed_bytes"`
Errors []string `json:"errors,omitempty"`
}
SystemPruneResult mirrors internal/api's systemPruneResponse (internal/api/system_prune.go): everything POST /system/prune removed and how much space came back, per resource kind, plus any per-stage error that didn't stop the rest.
type SystemRestart ¶ added in v0.2.0
type SystemRestart struct {
BootID string `json:"boot_id"`
Supported bool `json:"supported"`
Pending bool `json:"pending"`
Reason string `json:"reason,omitempty"`
Hint string `json:"hint,omitempty"`
}
SystemRestart is the /api/v1/system/restart resource.
type SystemStatusResource ¶
type SystemStatusResource struct {
SecretsConfigured bool `json:"secrets_configured"`
TelemetryConfigured bool `json:"telemetry_configured"`
AlertsConfigured bool `json:"alerts_configured"`
DataDirTotalBytes int64 `json:"data_dir_total_bytes,omitempty"`
DataDirFreeBytes int64 `json:"data_dir_free_bytes,omitempty"`
DockerConnected bool `json:"docker_connected"`
DockerError string `json:"docker_error,omitempty"`
}
SystemStatusResource mirrors internal/api's systemStatusResponse (internal/api/status.go): DockerConnected/DockerError are this control plane's own local Docker daemon reachability, not a per-node signal (see docker_connected's own doc comment on internal/api/status.go for why: multi-node Docker reachability forwarding isn't wired yet).
type TagAppResource ¶ added in v0.2.0
type TagAppResource struct {
Name string `json:"name"`
}
TagAppResource mirrors internal/api's tagAppResource: GET /api/v1/tags/{id}/apps' wire shape.
type TagResource ¶ added in v0.2.0
type TagResource struct {
ID string `json:"id"`
Name string `json:"name"`
CreatedAt string `json:"created_at,omitempty"`
}
TagResource mirrors internal/api's tagResource (internal/api/tags.go).
type TakeoverCheck ¶
type TakeoverCheck struct {
ID string `json:"id"`
Title string `json:"title"`
Status string `json:"status"`
Detail string `json:"detail,omitempty"`
Items []string `json:"items,omitempty"`
Fix *TakeoverFix `json:"fix,omitempty"`
}
TakeoverCheck is one preflight item.
type TakeoverDomain ¶
type TakeoverDomain struct {
Domain string `json:"domain"`
App string `json:"app"`
Healthy bool `json:"healthy"`
Detail string `json:"detail,omitempty"`
DNS string `json:"dns"`
Cert string `json:"certificate"`
}
TakeoverDomain is one domain the takeover has to keep serving.
type TakeoverDomainCheck ¶
type TakeoverDomainCheck struct {
Domain string `json:"domain"`
OK bool `json:"ok"`
Status int `json:"status,omitempty"`
Delivered bool `json:"delivered"`
Detail string `json:"detail,omitempty"`
}
TakeoverDomainCheck is the outcome of verifying one domain over HTTPS.
type TakeoverFix ¶
type TakeoverFix struct {
Summary string `json:"summary"`
Action *TakeoverFixAction `json:"action,omitempty"`
}
TakeoverFix is the remedy for a warning or blocking check.
type TakeoverFixAction ¶
type TakeoverFixAction struct {
Kind string `json:"kind"`
Label string `json:"label"`
API string `json:"api,omitempty"`
Value string `json:"value,omitempty"`
}
TakeoverFixAction is the one primary thing a fix offers.
type TakeoverPlan ¶
type TakeoverPlan struct {
Verdict string `json:"verdict"`
Checks []TakeoverCheck `json:"checks"`
Steps []TakeoverPlanStep `json:"steps"`
Domains []TakeoverDomain `json:"domains"`
Rollback []string `json:"rollback"`
WindowSeconds int `json:"window_seconds"`
TargetHTTP string `json:"target_http"`
TargetHTTPS string `json:"target_https"`
CurrentHTTP string `json:"current_http"`
CurrentHTTPS string `json:"current_https"`
ProxyKind string `json:"proxy_kind,omitempty"`
ProxyNames []string `json:"proxy_containers"`
CheckedAt string `json:"checked_at"`
}
TakeoverPlan is the preflight result plus the exact steps.
type TakeoverPlanStep ¶
type TakeoverPlanStep struct {
ID string `json:"id"`
Title string `json:"title"`
Detail string `json:"detail"`
Reversible bool `json:"reversible"`
}
TakeoverPlanStep is one step a run would take.
type TakeoverRun ¶
type TakeoverRun struct {
ID string `json:"id"`
State string `json:"state"`
Actor string `json:"actor,omitempty"`
TargetHTTP string `json:"target_http"`
TargetHTTPS string `json:"target_https"`
Steps []TakeoverStep `json:"steps"`
Verify []TakeoverDomainCheck `json:"verify"`
Error string `json:"error,omitempty"`
WindowSeconds int `json:"window_seconds"`
DeadlineAt time.Time `json:"deadline_at"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Rollbackable bool `json:"rollbackable"`
InFlight bool `json:"in_flight"`
}
TakeoverRun is one takeover and, when undone, its rollback.
func (TakeoverRun) Settled ¶
func (r TakeoverRun) Settled() bool
Settled reports whether the run needs nothing more from a poller.
type TakeoverStart ¶
type TakeoverStart struct {
Confirm bool `json:"confirm"`
AcceptUnmanaged bool `json:"accept_unmanaged"`
}
TakeoverStart is the body of POST takeover/runs.
type TakeoverStartResult ¶
type TakeoverStartResult struct {
DryRun bool `json:"dry_run"`
Created bool `json:"created"`
Plan *TakeoverPlan `json:"plan,omitempty"`
Run *TakeoverRun `json:"run,omitempty"`
Error string `json:"error,omitempty"`
}
TakeoverStartResult is the answer to POST takeover/runs.
type TakeoverStatus ¶
type TakeoverStatus struct {
Plan TakeoverPlan `json:"plan"`
Run *TakeoverRun `json:"run"`
}
TakeoverStatus is GET takeover/plan: the plan and the latest run.
type TakeoverStep ¶
type TakeoverStep struct {
ID string `json:"id"`
Title string `json:"title"`
State string `json:"state"`
Detail string `json:"detail,omitempty"`
StartedAt time.Time `json:"started_at"`
FinishedAt time.Time `json:"finished_at"`
}
TakeoverStep is one timed entry of a run.
type TargetProtectionResource ¶ added in v0.2.0
type TargetProtectionResource struct {
TargetID string `json:"target_id"`
Level string `json:"level"`
ObjectLock bool `json:"object_lock"`
LockMode string `json:"lock_mode,omitempty"`
Versioning string `json:"versioning,omitempty"`
CanDelete bool `json:"can_delete"`
Warning string `json:"warning,omitempty"`
ProbeError string `json:"probe_error,omitempty"`
CheckedAt string `json:"checked_at"`
}
TargetProtectionResource mirrors internal/api's targetProtectionResource.
type TeamEventResource ¶ added in v0.2.0
type TeamEventResource struct {
ID string `json:"id"`
ActorName string `json:"actor_name"`
Action string `json:"action"`
Subject string `json:"subject"`
Detail string `json:"detail"`
CreatedAt string `json:"created_at"`
}
TeamEventResource mirrors internal/api's teamEventResource.
type TeamInviteResource ¶ added in v0.2.0
type TeamInviteResource struct {
ID string `json:"id"`
TeamID string `json:"team_id"`
Email string `json:"email"`
Role string `json:"role"`
CreatedAt string `json:"created_at"`
ExpiresAt string `json:"expires_at"`
Status string `json:"status"`
Token string `json:"token,omitempty"`
Link string `json:"link,omitempty"`
}
TeamInviteResource mirrors internal/api's teamInviteResource.
type TeamMemberResource ¶ added in v0.2.0
type TeamMemberResource struct {
UserID string `json:"user_id"`
Email string `json:"email"`
DisplayName string `json:"display_name"`
Role string `json:"role"`
CreatedAt string `json:"created_at"`
}
TeamMemberResource mirrors internal/api's teamMemberResource.
type TeamResource ¶ added in v0.2.0
type TeamResource struct {
ID string `json:"id"`
Name string `json:"name"`
Default bool `json:"default"`
Role string `json:"role"`
MemberCount int `json:"member_count"`
CreatedAt string `json:"created_at"`
}
TeamResource mirrors internal/api's teamResource.
type TeamRoleResource ¶ added in v0.2.0
TeamRoleResource mirrors internal/api's teamRoleResource.
type TemplateFinding ¶
type TemplateFinding struct {
Code string `json:"code"`
Severity string `json:"severity"`
Services []string `json:"services,omitempty"`
Detail string `json:"detail,omitempty"`
Message string `json:"message"`
}
TemplateFinding mirrors internal/catalog's Finding.
type TemplateInstallRequest ¶ added in v0.2.0
type TemplateInstallRequest struct {
Name string `json:"name,omitempty"`
Env map[string]string `json:"env,omitempty"`
Domains map[string]string `json:"domains,omitempty"`
}
TemplateInstallRequest is POST /api/v1/service-templates/{id}/install's body.
type TemplateProtection ¶
TemplateProtection mirrors internal/catalog's Protection.
type TemplateRequirements ¶
type TemplateRequirements struct {
Level string `json:"level"`
Findings []TemplateFinding `json:"findings"`
Protections []TemplateProtection `json:"protections"`
}
TemplateRequirements mirrors internal/catalog's Requirements.
type TestEndpointRequest ¶
type TestEndpointRequest struct {
BaseURL string `json:"base_url"`
APIType string `json:"api_type,omitempty"`
Credential string `json:"credential,omitempty"`
}
TestEndpointRequest probes an endpoint before it is registered.
type TestGitConnectionRequest ¶
type TestGitConnectionRequest struct {
Provider string `json:"provider"`
InstanceURL string `json:"instance_url,omitempty"`
Token string `json:"token,omitempty"`
}
TestGitConnectionRequest checks an instance URL and optional token without saving a connection.
type TestGitConnectionResult ¶
type TestGitConnectionResult struct {
OK bool `json:"ok"`
Kind string `json:"kind"`
Message string `json:"message"`
Fix string `json:"fix,omitempty"`
Account string `json:"account,omitempty"`
// Token is set when a token was checked: its scopes and how many repositories it reaches.
Token *GitTokenDetails `json:"token,omitempty"`
}
TestGitConnectionResult is the typed outcome: Kind is ok, bad_url, bad_token, tls or unreachable.
type TestNotificationChannelRequest ¶
type TestNotificationChannelRequest struct {
Kind string `json:"kind"`
NotifyURL string `json:"notify_url"`
}
TestNotificationChannelRequest mirrors internal/api's testNotificationChannelRequest.
type TimelineDeploy ¶
type TimelineDeploy struct {
ID string `json:"id"`
App string `json:"app"`
Status string `json:"status"`
Trigger string `json:"trigger"`
Environment string `json:"environment"`
CommitSHA string `json:"commit_sha"`
CommitMessage string `json:"commit_message"`
Author string `json:"author"`
Strategy string `json:"strategy"`
ProjectID string `json:"project_id"`
NodeID string `json:"node_id"`
StartedAt time.Time `json:"started_at"`
FinishedAt *time.Time `json:"finished_at"`
DurationMS *int64 `json:"duration_ms"`
RollbackOf *string `json:"rollback_of"`
IsLive bool `json:"is_live"`
}
TimelineDeploy is one deploy bar of GET /api/v1/deployments/timeline.
type TimelineItem ¶ added in v0.2.0
type TimelineItem struct {
ID string `json:"id"`
At string `json:"at"`
Kind string `json:"kind"`
Status string `json:"status"`
Actor string `json:"actor"`
Title string `json:"title"`
Detail string `json:"detail,omitempty"`
Ref *TimelineRef `json:"ref,omitempty"`
}
TimelineItem mirrors internal/api's timelineItem.
type TimelinePage ¶
type TimelinePage struct {
Since time.Time `json:"since"`
Until time.Time `json:"until"`
Items []TimelineDeploy `json:"items"`
NextCursor string `json:"next_cursor"`
}
TimelinePage is one page of the fleet deploy timeline.
type TimelineRef ¶ added in v0.2.0
TimelineRef points at the record behind a timeline item.
type TimelineResponse ¶ added in v0.2.0
type TimelineResponse struct {
Items []TimelineItem `json:"items"`
NextCursor string `json:"next_cursor,omitempty"`
}
TimelineResponse mirrors internal/api's timelineResponse.
type TokenCleanupResult ¶
type TokenCleanupResult struct {
Deleted int `json:"deleted"`
}
TokenCleanupResult is the body of POST /api/v1/auth/tokens/cleanup.
type TraceListOptions ¶
TraceListOptions are the filters of ListTraces.
type TraceSpan ¶
type TraceSpan struct {
TraceID string `json:"trace_id"`
SpanID string `json:"span_id"`
ParentID string `json:"parent_id,omitempty"`
Name string `json:"name"`
Kind int `json:"kind"`
StartNs int64 `json:"start_ns"`
DurationNs int64 `json:"duration_ns"`
StatusCode int `json:"status_code"`
StatusMessage string `json:"status_message,omitempty"`
Attributes json.RawMessage `json:"attributes,omitempty"`
}
TraceSpan mirrors internal/api's spanResource.
type TraceSummary ¶
type TraceSummary struct {
TraceID string `json:"trace_id"`
RootName string `json:"root_name"`
StartNs int64 `json:"start_ns"`
DurationNs int64 `json:"duration_ns"`
Spans int `json:"spans"`
Errors int `json:"errors"`
}
TraceSummary mirrors internal/telemetry's TraceSummary.
type TracingResource ¶
type TracingResource struct {
Enabled bool `json:"enabled"`
Endpoint string `json:"endpoint"`
Header string `json:"header"`
Key string `json:"key,omitempty"`
Env map[string]string `json:"env,omitempty"`
}
TracingResource mirrors internal/api's tracingResource.
type TrafficCertCounts ¶ added in v0.2.0
type TrafficCertCounts struct {
WindowDays int `json:"window_days"`
Expiring int `json:"expiring"`
Expired int `json:"expired"`
RenewalFailing int `json:"renewal_failing"`
}
TrafficCertCounts mirrors internal/api's trafficCertCounts.
type TrafficDomainCounts ¶ added in v0.2.0
type TrafficDomainCounts struct {
Total int `json:"total"`
Live int `json:"live"`
Waiting int `json:"waiting"`
Propagating int `json:"propagating"`
NeedsAttention int `json:"needs_attention"`
NotSetUp int `json:"not_set_up"`
Paused int `json:"paused"`
Unknown int `json:"unknown"`
}
TrafficDomainCounts mirrors internal/api's trafficDomainCounts.
type TrafficErrorSpike ¶
type TrafficErrorSpike struct {
Start time.Time `json:"start"`
End time.Time `json:"end"`
Requests float64 `json:"requests"`
Errors5xx float64 `json:"errors_5xx"`
PeakRate5xx float64 `json:"peak_error_rate_5xx"`
BaselineRate float64 `json:"baseline_error_rate_5xx"`
DeployID string `json:"deploy_id,omitempty"`
DeployAt *time.Time `json:"deploy_at,omitempty"`
DeployStatus string `json:"deploy_status,omitempty"`
DeployImage string `json:"deploy_image,omitempty"`
DeployCommit string `json:"deploy_commit,omitempty"`
}
TrafficErrorSpike is a run of buckets with an unusual 5xx share, tied to the deploy that most plausibly caused it when one started shortly before.
type TrafficExportSink ¶
type TrafficExportSink struct {
ID string `json:"id,omitempty"`
Name string `json:"name"`
Kind string `json:"kind"`
Enabled *bool `json:"enabled,omitempty"`
Host string `json:"host,omitempty"`
TargetHost string `json:"target_host,omitempty"`
Fields []string `json:"fields"`
IPTruncate *bool `json:"ip_truncate,omitempty"`
Sample *float64 `json:"sample,omitempty"`
URL string `json:"url,omitempty"`
URLSet bool `json:"url_set,omitempty"`
Token string `json:"token,omitempty"`
TokenSet bool `json:"token_set,omitempty"`
AuthHeader string `json:"auth_header,omitempty"`
AuthHeaderSet bool `json:"auth_header_set,omitempty"`
IdentityEnabled bool `json:"identity_enabled"`
CreatedAt *time.Time `json:"created_at,omitempty"`
UpdatedAt *time.Time `json:"updated_at,omitempty"`
}
TrafficExportSink mirrors one sink of /api/v1/settings/traffic-export/sinks. URL, Token and AuthHeader are write-only: a response carries only the *Set booleans, and an empty value on a write keeps the stored one.
type TrafficExportSinkList ¶
type TrafficExportSinkList struct {
Sinks []TrafficExportSink `json:"sinks"`
}
TrafficExportSinkList mirrors GET /api/v1/settings/traffic-export/sinks.
type TrafficExportSinkStatus ¶
type TrafficExportSinkStatus struct {
ID string `json:"id"`
Name string `json:"name"`
Kind string `json:"kind"`
Enabled bool `json:"enabled"`
Active bool `json:"active"`
LastSuccess time.Time `json:"last_success"`
LastErrorKind string `json:"last_error_kind,omitempty"`
Queued int `json:"queued"`
Sent uint64 `json:"sent"`
Dropped uint64 `json:"dropped"`
Failed uint64 `json:"failed"`
SampledOut uint64 `json:"sampled_out"`
}
TrafficExportSinkStatus is the live view of one sink.
type TrafficExportStatus ¶
type TrafficExportStatus struct {
Sinks []TrafficExportSinkStatus `json:"sinks"`
}
TrafficExportStatus mirrors GET /api/v1/settings/traffic-export/status.
type TrafficExportTestResult ¶
type TrafficExportTestResult struct {
OK bool `json:"ok"`
ErrorKind string `json:"error_kind,omitempty"`
DurationMS float64 `json:"duration_ms"`
}
TrafficExportTestResult mirrors the test-delivery response.
type TrafficLabel ¶
TrafficLabel is one referrer host or country with its request share.
type TrafficLatency ¶
type TrafficLatency struct {
P50Ms float64 `json:"p50_ms"`
P95Ms float64 `json:"p95_ms"`
P99Ms float64 `json:"p99_ms"`
}
TrafficLatency is a latency percentile triple in milliseconds.
type TrafficReplica ¶
type TrafficReplica struct {
Upstream string `json:"upstream"`
Requests float64 `json:"requests"`
RatePerSec float64 `json:"rate_per_sec"`
ErrorRate4xx float64 `json:"error_rate_4xx"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
UpstreamErrors float64 `json:"upstream_errors"`
TrafficLatency
}
TrafficReplica is one upstream's RED figures.
type TrafficRoute ¶
type TrafficRoute struct {
Route string `json:"route"`
Requests float64 `json:"requests"`
ErrorRate4xx float64 `json:"error_rate_4xx"`
ErrorRate5xx float64 `json:"error_rate_5xx"`
AvgMs float64 `json:"avg_ms"`
}
TrafficRoute is one normalized route template's totals.
type TrafficSLO ¶
type TrafficSLO struct {
Objective string `json:"objective"`
Target float64 `json:"target"`
LatencyMs float64 `json:"latency_ms,omitempty"`
BurnRate float64 `json:"burn_rate"`
BudgetRemaining float64 `json:"budget_remaining"`
}
TrafficSLO is the app's SLO error-budget burn over the window.
type TrafficSample ¶
type TrafficSample struct {
Time time.Time `json:"time"`
Route string `json:"route"`
Method string `json:"method"`
Status int `json:"status"`
DurationMS float64 `json:"duration_ms"`
Upstream string `json:"upstream,omitempty"`
RequestID string `json:"request_id,omitempty"`
}
TrafficSample is one slow or failed request.
type TrafficShield ¶
type TrafficShield struct {
Blocked float64 `json:"blocked"`
ByReason []TrafficShieldReason `json:"by_reason"`
}
TrafficShield is the abuse shield's blocked-request counts over the window.
type TrafficShieldReason ¶
TrafficShieldReason is how many requests the abuse shield turned away for one reason.
type TrafficStatusClasses ¶
type TrafficStatusClasses struct {
Status2xx float64 `json:"2xx"`
Status3xx float64 `json:"3xx"`
Status4xx float64 `json:"4xx"`
Status5xx float64 `json:"5xx"`
}
TrafficStatusClasses counts responses by status class.
type TrafficSummary ¶ added in v0.2.0
type TrafficSummary struct {
GeneratedAt time.Time `json:"generated_at"`
Domains TrafficDomainCounts `json:"domains"`
Certificates TrafficCertCounts `json:"certificates"`
DomainsNotResolving int `json:"domains_not_resolving"`
ZonesNotDelegated *int `json:"zones_not_delegated,omitempty"`
RoutesWithErrors *int `json:"routes_with_errors,omitempty"`
Attention int `json:"attention"`
}
TrafficSummary is GET /api/v1/traffic/summary's body.
type TriggerBackupRequest ¶
type TriggerBackupRequest struct {
TargetID string `json:"target_id"`
}
TriggerBackupRequest mirrors internal/api's triggerBackupRequest.
type TriggerBaseBackupRequest ¶ added in v0.2.0
type TriggerBaseBackupRequest struct {
TargetID string `json:"target_id"`
}
TriggerBaseBackupRequest mirrors internal/api's triggerBaseBackupRequest.
type TriggerCloneRestoreRequest ¶
type TriggerCloneRestoreRequest struct {
BackupID string `json:"backup_id"`
NewName string `json:"new_name"`
Version string `json:"version,omitempty"`
ProjectID string `json:"project_id,omitempty"`
Resources *ServiceResources `json:"resources,omitempty"`
}
TriggerCloneRestoreRequest mirrors internal/api's cloneRestoreRequest.
type TriggerPITRRestoreRequest ¶ added in v0.2.0
type TriggerPITRRestoreRequest struct {
BaseBackupID string `json:"base_backup_id"`
TargetTime string `json:"target_time"`
RestoreAs string `json:"restore_as,omitempty"`
}
TriggerPITRRestoreRequest mirrors internal/api's triggerPITRRestoreRequest.
type TriggerRestoreRequest ¶
type TriggerRestoreRequest struct {
BackupID string `json:"backup_id"`
}
TriggerRestoreRequest mirrors internal/api's triggerRestoreRequest.
type TriggerVolumeCloneRestoreRequest ¶
type TriggerVolumeCloneRestoreRequest struct {
BackupID string `json:"backup_id"`
NewVolumeName string `json:"new_volume_name,omitempty"`
}
TriggerVolumeCloneRestoreRequest mirrors internal/api's volumeCloneRestoreRequest.
type TrustRequest ¶
type TrustRequest struct {
Prog, Profile, URL string
Info InstanceInfo
}
TrustRequest is what a first connect under an unpinned profile asks the operator to confirm.
type TrustedDevice ¶ added in v0.2.0
type TrustedDevice struct {
ID string `json:"id"`
Label string `json:"label"`
IP string `json:"ip"`
CreatedAt time.Time `json:"created_at"`
LastUsedAt time.Time `json:"last_used_at"`
ExpiresAt time.Time `json:"expires_at"`
Current bool `json:"current"`
}
TrustedDevice mirrors internal/api's trustedDeviceResource.
type UnderAttackRequest ¶
type UnderAttackRequest struct {
Minutes int `json:"minutes,omitempty"`
}
UnderAttackRequest is the body of POST .../shield/under-attack.
type UndoResult ¶ added in v0.2.0
type UndoResult struct {
AutomationRun
Reverted []string `json:"reverted"`
Skipped []string `json:"skipped,omitempty"`
}
UndoResult is the response of an undo.
type UnmanagedContainerUse ¶ added in v0.2.0
type UnmanagedContainerUse struct {
Name string `json:"name"`
MemoryBytes float64 `json:"memory_bytes"`
}
UnmanagedContainerUse is one running container the platform does not manage.
type UpdateAIControlRequest ¶ added in v0.2.0
type UpdateAIControlRequest struct {
Mode string `json:"mode"`
AllowedEnvKinds []string `json:"allowed_env_kinds"`
}
UpdateAIControlRequest is the PUT /api/v1/settings/ai-control body.
type UpdateAlertRuleRequest ¶ added in v0.2.0
type UpdateAlertRuleRequest = CreateAlertRuleRequest
UpdateAlertRuleRequest is the same shape as CreateAlertRuleRequest: handleUpdateAlertRule reuses ruleResource.toRule for both, the same "one request type for create and update" shape ScheduledTaskRequest and FeatureFlagRequest already use for their own resources.
type UpdateBackupTargetRequest ¶
type UpdateBackupTargetRequest struct {
Name string `json:"name"`
Provider string `json:"provider"`
Endpoint string `json:"endpoint,omitempty"`
Region string `json:"region,omitempty"`
Bucket string `json:"bucket"`
AccessKeyID string `json:"access_key_id,omitempty"`
SecretAccessKey string `json:"secret_access_key,omitempty"`
}
UpdateBackupTargetRequest mirrors internal/api's updateBackupTargetRequest. Blank AccessKeyID/SecretAccessKey keep the target's existing stored credentials; set together, they rotate them.
type UpdateCloudflareDNSRequest ¶
type UpdateCloudflareDNSRequest struct {
Enabled bool `json:"enabled"`
Token string `json:"token,omitempty"`
}
UpdateCloudflareDNSRequest mirrors internal/api's updateCloudflareDNSRequest. Token empty on an update means "leave the currently stored token unchanged".
type UpdateCloudflareTunnelRequest ¶
type UpdateCloudflareTunnelRequest struct {
Enabled bool `json:"enabled"`
Token string `json:"token,omitempty"`
}
UpdateCloudflareTunnelRequest mirrors internal/api's updateCloudflareTunnelRequest. Token empty on an update means "leave the currently stored token unchanged".
type UpdateDNSRecordRequest ¶ added in v0.2.0
type UpdateDNSRecordRequest struct {
Original DNSRecordResource `json:"original"`
Record DNSRecordResource `json:"record"`
}
UpdateDNSRecordRequest mirrors internal/api's updateDNSRecordRequest: PUT .../dns-records's body. Original must exactly match an existing record (name, type, and value all identical); Record is what it becomes.
type UpdateDockerGuardRequest ¶ added in v0.2.0
type UpdateDockerGuardRequest struct {
Mode string `json:"mode"`
}
UpdateDockerGuardRequest is the PUT /api/v1/system/docker-guard body.
type UpdateEnvironmentRequest ¶
type UpdateEnvironmentRequest struct {
Protected bool `json:"protected"`
}
UpdateEnvironmentRequest mirrors internal/api's updateEnvironmentRequest (PATCH /api/v1/environments/{id}).
type UpdateEventWebhookRequest ¶
type UpdateEventWebhookRequest struct {
Name *string `json:"name,omitempty"`
URL *string `json:"url,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
Events *[]string `json:"events,omitempty"`
}
UpdateEventWebhookRequest is the PATCH body; nil fields stay unchanged.
type UpdateExportDestinationRequest ¶ added in v0.2.0
type UpdateExportDestinationRequest struct {
Name *string `json:"name,omitempty"`
Endpoint *string `json:"endpoint,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
Apps *[]string `json:"apps,omitempty"`
MinLevel *string `json:"min_level,omitempty"`
Options *ExportOptions `json:"options,omitempty"`
Headers *map[string]string `json:"headers,omitempty"`
HMACKey *string `json:"hmac_key,omitempty"`
}
UpdateExportDestinationRequest is a partial update; nil fields are kept.
type UpdateGoogleCloudDNSRequest ¶
type UpdateGoogleCloudDNSRequest struct {
Enabled bool `json:"enabled"`
ServiceAccountJSON string `json:"service_account_json,omitempty"`
}
UpdateGoogleCloudDNSRequest mirrors internal/api's updateGoogleCloudDNSRequest. An empty ServiceAccountJSON keeps the stored key.
type UpdateMeshSettingsRequest ¶ added in v0.2.0
type UpdateMeshSettingsRequest struct {
Enabled bool `json:"enabled"`
Force bool `json:"force,omitempty"`
}
UpdateMeshSettingsRequest is the PUT /api/v1/mesh/settings body.
type UpdateNetworkShareRequest ¶ added in v0.2.0
type UpdateNetworkShareRequest struct {
}
UpdateNetworkShareRequest mirrors internal/api's updateNetworkShareRequest. A blank Password keeps the share's existing stored password; a non-blank one rotates it.
type UpdateNotificationChannelRequest ¶ added in v0.2.0
type UpdateNotificationChannelRequest = CreateNotificationChannelRequest
UpdateNotificationChannelRequest is the same shape as CreateNotificationChannelRequest: handleUpdateNotificationChannel reuses createNotificationChannelRequest.toChannel for both, the same "one request type for create and update" shape ScheduledTaskRequest and FeatureFlagRequest already use for their own resources.
type UpdateOAuthProviderSettingsRequest ¶ added in v0.2.0
type UpdateOAuthProviderSettingsRequest struct {
Enabled bool `json:"enabled"`
ClientID string `json:"client_id"`
ClientSecret string `json:"client_secret,omitempty"`
AllowedEmailDomain string `json:"allowed_email_domain"`
IssuerURL string `json:"issuer_url"`
DisplayName string `json:"display_name"`
}
UpdateOAuthProviderSettingsRequest mirrors internal/api's updateOAuthProviderSettingsRequest: PUT /api/v1/settings/oauth/{provider}'s request body. An empty ClientSecret leaves the currently stored secret unchanged.
type UpdatePreflight ¶ added in v0.2.0
type UpdatePreflight struct {
CurrentVersion string `json:"current_version"`
LatestVersion *string `json:"latest_version"`
UpdateAvailable bool `json:"update_available"`
ReleaseURL *string `json:"release_url"`
ReleaseNotes string `json:"release_notes"`
Checks []UpgradeCheck `json:"checks"`
Blocked bool `json:"blocked"`
Waiting bool `json:"waiting"`
UpgradeCommand string `json:"upgrade_command"`
RollbackCommand string `json:"rollback_command"`
ReleaseKind string `json:"release_kind,omitempty"`
Channel string `json:"channel,omitempty"`
Edge *EdgeGuidance `json:"edge,omitempty"`
State string `json:"state,omitempty"`
StateReason string `json:"state_reason,omitempty"`
DBSchema *int `json:"db_schema,omitempty"`
LatestSchema *int `json:"latest_schema,omitempty"`
MigrationsToApply *int `json:"migrations_to_apply,omitempty"`
VerifyWindowSeconds int `json:"verify_window_seconds,omitempty"`
RollbackVersion string `json:"rollback_version,omitempty"`
}
UpdatePreflight is GET /api/v1/updates/preflight's response.
type UpdateRegistryCredentialRequest ¶
type UpdateRegistryCredentialRequest struct {
Name string `json:"name"`
RegistryHost string `json:"registry_host"`
Username string `json:"username"`
Password string `json:"password,omitempty"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
}
UpdateRegistryCredentialRequest mirrors internal/api's updateRegistryCredentialRequest. A blank Password keeps the credential's existing stored password; a non-blank one rotates it.
type UpdateRegistrySettingsRequest ¶
type UpdateRegistrySettingsRequest struct {
Enabled bool `json:"enabled"`
Host string `json:"host,omitempty"`
}
UpdateRegistrySettingsRequest mirrors internal/api's updateRegistrySettingsRequest.
type UpdateRoute53DNSRequest ¶ added in v0.2.0
type UpdateRoute53DNSRequest struct {
Enabled bool `json:"enabled"`
Region string `json:"region,omitempty"`
HostedZoneID string `json:"hosted_zone_id,omitempty"`
AccessKeyID string `json:"access_key_id,omitempty"`
SecretAccessKey string `json:"secret_access_key,omitempty"`
}
UpdateRoute53DNSRequest mirrors internal/api's updateRoute53DNSRequest. AccessKeyID/SecretAccessKey empty on an update means "leave the currently stored credential unchanged"; the two are set together or not at all.
type UpdateServerProfileRequest ¶
type UpdateServerProfileRequest struct {
Profile string `json:"profile"`
Confirm bool `json:"confirm,omitempty"`
DryRun bool `json:"dry_run,omitempty"`
}
UpdateServerProfileRequest is the PUT /api/v1/settings/server-profile body.
type UpdateSettingsResource ¶ added in v0.2.0
type UpdateSettingsResource struct {
Channel string `json:"channel"`
AutoUpdateEnabled bool `json:"auto_update_enabled"`
}
UpdateSettingsResource mirrors internal/api's updateSettingsResource (GET/PUT /api/v1/updates/settings): which release channel to compare against and whether to check for it in the background.
type UpdateStorageBucketRequest ¶
type UpdateStorageBucketRequest struct {
Public *bool `json:"public,omitempty"`
QuotaBytes *int64 `json:"quota_bytes,omitempty"`
LifecycleDays *int `json:"lifecycle_days,omitempty"`
}
UpdateStorageBucketRequest changes only the fields that are set.
type UpdateUserAbilitiesRequest ¶
type UpdateUserAbilitiesRequest struct {
Abilities []string `json:"abilities,omitempty"`
Role string `json:"role,omitempty"`
}
UpdateUserAbilitiesRequest mirrors internal/api's updateUserAbilitiesRequest, same Role/Abilities precedence as CreateUserRequest.
type UpdateVaultSettingsRequest ¶ added in v0.2.0
type UpdateVaultSettingsRequest struct {
Enabled bool `json:"enabled"`
Address string `json:"address"`
AuthMethod string `json:"auth_method"`
Namespace string `json:"namespace,omitempty"`
RoleID string `json:"role_id,omitempty"`
MountPath string `json:"mount_path,omitempty"`
Credential string `json:"credential,omitempty"`
}
UpdateVaultSettingsRequest mirrors internal/api's updateVaultSettingsRequest. Credential empty on an update means "leave the currently stored credential unchanged".
type UpdatesResource ¶
type UpdatesResource struct {
CurrentVersion string `json:"current_version"`
LatestVersion *string `json:"latest_version"`
UpdateAvailable bool `json:"update_available"`
ReleaseURL *string `json:"release_url"`
PublishedAt *string `json:"published_at"`
ReleaseKind string `json:"release_kind,omitempty"`
Channel string `json:"channel,omitempty"`
Image *string `json:"image,omitempty"`
}
UpdatesResource mirrors internal/api's updateStatusResource (internal/api/updates.go): the running version compared against GitHub's latest published release. LatestVersion/ReleaseURL/PublishedAt are all nil when no release has ever been published.
type UpgradeBackupNowResult ¶ added in v0.2.0
type UpgradeBackupNowResult struct {
Backup struct {
Name string `json:"name"`
SizeBytes int64 `json:"size_bytes"`
CreatedAt string `json:"created_at"`
} `json:"backup"`
Preflight UpdatePreflight `json:"preflight"`
}
UpgradeBackupNowResult is POST /api/v1/updates/backup-now's response.
type UpgradeCheck ¶ added in v0.2.0
type UpgradeCheck struct {
Code string `json:"code"`
Name string `json:"name"`
Status string `json:"status"`
Message string `json:"message"`
Kind string `json:"kind"`
Retryable bool `json:"retryable"`
Protects string `json:"protects"`
Hint string `json:"hint"`
Fix *UpgradeFix `json:"fix"`
}
UpgradeCheck is one preflight result from GET /api/v1/updates/preflight.
type UpgradeFix ¶ added in v0.2.0
type UpgradeFix struct {
Action string `json:"action"`
}
UpgradeFix is the action that can clear a preflight check.
type UpgradeHistory ¶ added in v0.2.0
type UpgradeHistory struct {
CurrentVersion string `json:"current_version"`
Unacknowledged int `json:"unacknowledged"`
Entries []UpgradeHistoryItem `json:"entries"`
AgentChanges []AgentVersionChange `json:"agent_changes"`
}
UpgradeHistory is GET /api/v1/updates/history's response.
type UpgradeHistoryItem ¶ added in v0.2.0
type UpgradeHistoryItem struct {
ID string `json:"id"`
Kind string `json:"kind"`
FromVersion string `json:"from_version"`
ToVersion string `json:"to_version"`
Channel string `json:"channel"`
SchemaBefore *int `json:"schema_before"`
SchemaAfter *int `json:"schema_after"`
SchemaMoved bool `json:"schema_moved"`
OccurredAt string `json:"occurred_at"`
Initiator string `json:"initiator"`
Method string `json:"method"`
BackupName string `json:"backup_name"`
Health string `json:"health"`
Notes string `json:"notes"`
NotesState string `json:"notes_state"`
ReleaseURL string `json:"release_url"`
CompareURL string `json:"compare_url"`
Acknowledged bool `json:"acknowledged"`
AckedBy string `json:"acked_by"`
AckedAt *string `json:"acked_at"`
RollbackAvailable bool `json:"rollback_available"`
}
UpgradeHistoryItem is one recorded control plane version transition.
type UpgradePolicy ¶ added in v0.2.0
type UpgradePolicy struct {
Mode string `json:"mode"`
Effective string `json:"effective"`
WindowCron string `json:"window_cron"`
WindowDurationMinutes int `json:"window_duration_minutes"`
Timezone string `json:"timezone"`
MinReleaseAgeDays int `json:"min_release_age_days"`
NotifyChannelIDs []string `json:"notify_channel_ids"`
Paused bool `json:"paused"`
UpdatedBy string `json:"updated_by"`
UpdatedAt string `json:"updated_at"`
Decision string `json:"decision"`
DecisionTag string `json:"decision_tag"`
DecisionAt string `json:"decision_at"`
ServerTimezone string `json:"server_timezone"`
NextWindow *UpgradeWindow `json:"next_window"`
}
UpgradePolicy is the automatic upgrade policy.
type UpgradePolicyRequest ¶ added in v0.2.0
type UpgradePolicyRequest struct {
Mode string `json:"mode"`
WindowCron string `json:"window_cron"`
WindowDurationMinutes int `json:"window_duration_minutes"`
Timezone string `json:"timezone"`
MinReleaseAgeDays int `json:"min_release_age_days"`
NotifyChannelIDs []string `json:"notify_channel_ids"`
Paused bool `json:"paused"`
}
UpgradePolicyRequest is PUT /api/v1/updates/auto's body.
type UpgradeSchedule ¶ added in v0.2.0
type UpgradeSchedule struct {
ID string `json:"id"`
TargetVersion string `json:"target_version"`
Source string `json:"source"`
Mode string `json:"mode"`
State string `json:"state"`
RunAt string `json:"run_at"`
RetryUntil string `json:"retry_until"`
Timezone string `json:"timezone"`
Acked []string `json:"acked"`
MajorAcked bool `json:"major_acked"`
CreatedBy string `json:"created_by"`
CreatedAt string `json:"created_at"`
CheckCount int `json:"check_count"`
LastCheckAt string `json:"last_check_at"`
LastReason string `json:"last_reason"`
FiredAt string `json:"fired_at"`
FinishedAt string `json:"finished_at"`
}
UpgradeSchedule is one scheduled control plane upgrade.
type UpgradeScheduleRequest ¶ added in v0.2.0
type UpgradeScheduleRequest struct {
Target string `json:"target,omitempty"`
At string `json:"at,omitempty"`
AtLocal string `json:"at_local,omitempty"`
Timezone string `json:"timezone,omitempty"`
Window bool `json:"window,omitempty"`
Ack []string `json:"ack,omitempty"`
AcknowledgeMajor bool `json:"acknowledge_major,omitempty"`
Replace bool `json:"replace,omitempty"`
}
UpgradeScheduleRequest is POST /api/v1/updates/schedule's body.
type UpgradeScheduleStatus ¶ added in v0.2.0
type UpgradeScheduleStatus struct {
Available bool `json:"available"`
ServerTimezone string `json:"server_timezone"`
Now string `json:"now"`
Active *UpgradeSchedule `json:"active"`
Recent []UpgradeSchedule `json:"recent"`
NextWindow *UpgradeWindow `json:"next_window"`
}
UpgradeScheduleStatus is GET /api/v1/updates/schedule's response.
type UpgradeWindow ¶ added in v0.2.0
type UpgradeWindow struct {
Start string `json:"start"`
End string `json:"end"`
Source string `json:"source"`
Active bool `json:"active"`
}
UpgradeWindow is one opening of a maintenance window.
type UsageBudgets ¶ added in v0.2.0
type UsageBudgets struct {
Budgets []usagecost.BudgetStatus `json:"budgets"`
Currency string `json:"currency"`
}
UsageBudgets is GET /api/v1/usage/budgets.
type UsageNodeInfo ¶ added in v0.2.0
type UsageNodeInfo struct {
NodeID string `json:"node_id"`
Name string `json:"name"`
MonthlyPrice float64 `json:"monthly_price"`
VCPUs float64 `json:"vcpus"`
MemoryGiB float64 `json:"memory_gib"`
DetectedVCPUs float64 `json:"detected_vcpus"`
DetectedMemGiB float64 `json:"detected_memory_gib"`
Priced bool `json:"priced"`
}
UsageNodeInfo is one node's bill and capacity in UsageSettings.
type UsageReport ¶ added in v0.2.0
type UsageReport struct {
usagecost.Report
Currency string `json:"currency"`
Mode string `json:"mode"`
Basis string `json:"basis"`
Labels map[string]string `json:"labels"`
UnpricedNodes []string `json:"unpriced_nodes"`
IncludesUnallocated bool `json:"includes_unallocated"`
Configured bool `json:"configured"`
TelemetryAvailable bool `json:"telemetry_available"`
GeneratedAt string `json:"generated_at"`
}
UsageReport is GET /api/v1/usage/report.
type UsageReportQuery ¶ added in v0.2.0
UsageReportQuery selects the period of a report.
type UsageSettings ¶ added in v0.2.0
type UsageSettings struct {
Settings usagecost.Settings `json:"settings"`
Nodes []UsageNodeInfo `json:"nodes"`
Note string `json:"note"`
}
UsageSettings is GET/PUT /api/v1/usage/settings.
type UsageSettingsUpdate ¶ added in v0.2.0
type UsageSettingsUpdate struct {
Settings *usagecost.Settings `json:"settings,omitempty"`
Nodes *[]usagecost.NodePrice `json:"nodes,omitempty"`
RepriceMonth bool `json:"reprice_month,omitempty"`
}
UsageSettingsUpdate is the PUT body; nil fields are left unchanged.
type UseGitHubRepoAsSourceResponse ¶ added in v0.2.0
type UseGitHubRepoAsSourceResponse struct {
GitSourceResource
WebhookRegistered bool `json:"webhook_registered"`
WebhookError string `json:"webhook_error,omitempty"`
}
UseGitHubRepoAsSourceResponse mirrors internal/api's useGitHubRepoAsSourceResponse: GitSourceResource plus whether the push webhook was actually auto-registered.
type UseRepoAsSourceRequest ¶ added in v0.2.0
type UseRepoAsSourceRequest struct {
AppName string `json:"app_name"`
// Repo names the repository on a provider connection: a project id for GitLab, owner/name otherwise.
Repo string `json:"repo,omitempty"`
Branch string `json:"branch,omitempty"`
BuildType string `json:"build_type,omitempty"`
BuildPath string `json:"build_path,omitempty"`
TriggerMode string `json:"trigger_mode,omitempty"`
}
UseRepoAsSourceRequest mirrors internal/api's useRepoAsSourceRequest: the request body every provider's own use-as-source route shares (github-app, gitlab-app, bitbucket-app).
type UserResource ¶
type UserResource struct {
ID string `json:"id"`
Email string `json:"email"`
DisplayName string `json:"display_name"`
HasPassword bool `json:"has_password"`
Providers []string `json:"providers"`
Abilities []string `json:"abilities"`
Role string `json:"role,omitempty"`
RoleID string `json:"role_id,omitempty"`
IsFirstUser bool `json:"is_first_user"`
CreatedAt time.Time `json:"created_at"`
LastLoginAt *time.Time `json:"last_login_at,omitempty"`
Disabled bool `json:"disabled"`
// MustChangePassword: sign-in is refused until a password reset completes.
MustChangePassword bool `json:"must_change_password"`
}
UserResource mirrors internal/api's userResource (internal/api/users.go).
type VaultSettingsResource ¶ added in v0.2.0
type VaultSettingsResource struct {
Enabled bool `json:"enabled"`
Address string `json:"address"`
AuthMethod string `json:"auth_method"`
Namespace string `json:"namespace,omitempty"`
RoleID string `json:"role_id,omitempty"`
MountPath string `json:"mount_path"`
HasCredential bool `json:"has_credential"`
CredentialRotatedAt string `json:"credential_rotated_at,omitempty"`
PreviousExpiresAt string `json:"previous_expires_at,omitempty"`
}
VaultSettingsResource mirrors internal/api's vaultSettingsResource (internal/api/vault_settings.go): GET/PUT/DELETE /api/v1/settings/vault's wire shape. The credential (a Vault token or AppRole secret ID, depending on AuthMethod) never appears here in either direction.
type VolumeBackupPolicyResource ¶ added in v0.2.0
type VolumeBackupPolicyResource struct {
ServiceName string `json:"service_name"`
VolumeName string `json:"volume_name"`
RetainDaily int `json:"retain_daily"`
RetainWeekly int `json:"retain_weekly"`
RetainMonthly int `json:"retain_monthly"`
PreHook string `json:"pre_hook"`
PostHook string `json:"post_hook"`
Quiesce string `json:"quiesce"`
}
VolumeBackupPolicyResource mirrors internal/api's volumeBackupPolicyResource.
type VolumeBackupScheduleResource ¶
type VolumeBackupScheduleResource struct {
ServiceName string `json:"service_name"`
VolumeName string `json:"volume_name"`
TargetID string `json:"target_id,omitempty"`
Schedule string `json:"schedule,omitempty"`
Retain int `json:"retain,omitempty"`
RetainDays int `json:"retain_days,omitempty"`
SqlitePath string `json:"sqlite_path,omitempty"`
}
VolumeBackupScheduleResource mirrors internal/api's volumeBackupScheduleResource (internal/api/app_volume_backups.go).
type VolumeCloneRestoreResource ¶
type VolumeCloneRestoreResource struct {
ID string `json:"id"`
SourceServiceName string `json:"source_service_name"`
SourceVolumeName string `json:"source_volume_name"`
NewVolumeName string `json:"new_volume_name"`
BackupHistoryID string `json:"backup_history_id"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
StartedAt string `json:"started_at"`
FinishedAt string `json:"finished_at,omitempty"`
}
VolumeCloneRestoreResource mirrors internal/api's volumeCloneRestoreResource (internal/api/app_volume_clone_restore.go): one "restore as new volume" attempt.
type VolumeGuide ¶ added in v0.2.0
type VolumeGuide struct {
App string `json:"app"`
Kind string `json:"kind"`
Source string `json:"source"`
Target string `json:"target"`
ContainerPath string `json:"container_path"`
Command string `json:"command"`
}
VolumeGuide is a command to run on the target node to copy one volume.
type VolumeGuideResponse ¶ added in v0.2.0
type VolumeGuideResponse struct {
Source string `json:"source"`
Guides []VolumeGuide `json:"guides"`
Warning string `json:"warning"`
}
VolumeGuideResponse is the volume copy guide.
type VolumeRestoreToRequest ¶ added in v0.2.0
type VolumeRestoreToRequest struct {
BackupID string `json:"backup_id"`
NewVolumeName string `json:"new_volume_name,omitempty"`
TargetApp string `json:"target_app,omitempty"`
NodeID string `json:"node_id,omitempty"`
}
VolumeRestoreToRequest is POST .../volumes/{volume}/restore-to's body.
type VolumeRestoreToResponse ¶ added in v0.2.0
type VolumeRestoreToResponse struct {
ID string `json:"id"`
NewVolumeName string `json:"new_volume_name"`
NodeID string `json:"node_id"`
}
VolumeRestoreToResponse is the 202 body of restore-to.
type VulnCounts ¶ added in v0.2.0
type VulnCounts struct {
Critical int `json:"critical"`
High int `json:"high"`
Medium int `json:"medium"`
Low int `json:"low"`
Unknown int `json:"unknown"`
}
VulnCounts is the number of findings per severity.
type VulnReport ¶ added in v0.2.0
type VulnReport struct {
DeploymentID string `json:"deployment_id"`
Scan VulnScan `json:"scan"`
Gate *VulnGate `json:"gate,omitempty"`
}
VulnReport is GET .../deployments/{id}/vulnerabilities' body.
type VulnScan ¶ added in v0.2.0
type VulnScan struct {
Status string `json:"status"`
Scanner string `json:"scanner,omitempty"`
ScannedAt *time.Time `json:"scanned_at,omitempty"`
Error string `json:"error,omitempty"`
Counts *VulnCounts `json:"counts,omitempty"`
Fixable int `json:"fixable"`
Top []Vulnerability `json:"top"`
}
VulnScan is the scan half of a VulnReport.
type Vulnerability ¶ added in v0.2.0
type Vulnerability struct {
ID string `json:"id"`
Package string `json:"package"`
Version string `json:"version,omitempty"`
FixedVersion string `json:"fixed_version,omitempty"`
Severity string `json:"severity"`
Title string `json:"title,omitempty"`
}
Vulnerability is one scanner finding.
type WALShipResource ¶ added in v0.2.0
type WALShipResource struct {
LastAttemptAt string `json:"last_attempt_at,omitempty"`
LastSuccessAt string `json:"last_success_at,omitempty"`
LastError string `json:"last_error,omitempty"`
Shipped int `json:"shipped"`
TargetID string `json:"target_id,omitempty"`
}
WALShipResource mirrors internal/api's walShipResource.
type WaitOptions ¶ added in v0.2.0
type WaitOptions struct {
// Interval is the poll period.
Interval time.Duration
// Window caps how long this call blocks; zero means until ctx ends.
Window time.Duration
}
WaitOptions bounds one WaitForDeploy call.
type WaitResult ¶ added in v0.2.0
type WaitResult struct {
Deploy DeployAttemptResource
// Done is false when the window elapsed before the deploy finished.
Done bool
}
WaitResult is the last state WaitForDeploy observed.
type WakeTiming ¶
type WakeTiming struct {
Samples int `json:"samples"`
ReadyLastMs *int64 `json:"ready_last_ms,omitempty"`
ReadyP50Ms *int64 `json:"ready_p50_ms,omitempty"`
ReadyP95Ms *int64 `json:"ready_p95_ms,omitempty"`
ReleasedLastMs *int64 `json:"released_last_ms,omitempty"`
ReleasedP50Ms *int64 `json:"released_p50_ms,omitempty"`
ReleasedP95Ms *int64 `json:"released_p95_ms,omitempty"`
}
WakeTiming mirrors internal/api's wakeTimingResource. Ready is start to the first ready signal, Released is start to the moment held requests were let go. Every figure is nil, and Samples 0, until the app has a timed wake.
type WatchStatusResource ¶
type WatchStatusResource struct {
State string `json:"state"`
Mode string `json:"mode"`
StartedAt *time.Time `json:"started_at,omitempty"`
EndsAt *time.Time `json:"ends_at,omitempty"`
RemainingSeconds int `json:"remaining_seconds"`
WindowSeconds int `json:"window_seconds"`
Reason string `json:"reason,omitempty"`
Message string `json:"message,omitempty"`
Notice string `json:"notice,omitempty"`
}
WatchStatusResource is one release's post-deploy watch state.
type WebhookDeliveryResource ¶
type WebhookDeliveryResource struct {
ID string `json:"id"`
ServiceName string `json:"service_name"`
Provider string `json:"provider"`
EventType string `json:"event_type"`
SignatureValid bool `json:"signature_valid"`
Matched bool `json:"matched"`
StatusCode int `json:"status_code"`
Payload string `json:"payload"`
PayloadTruncated bool `json:"payload_truncated"`
Error string `json:"error,omitempty"`
Note string `json:"note,omitempty"`
ReceivedAt time.Time `json:"received_at"`
}
WebhookDeliveryResource mirrors internal/api's webhookDeliveryResource (internal/api/webhook_deliveries.go): one recorded inbound git-provider webhook request.
type WhoamiResource ¶ added in v0.2.0
type WhoamiResource struct {
Kind string `json:"kind"`
Name string `json:"name"`
Abilities []string `json:"abilities"`
ExpiresAt string `json:"expires_at"`
}
WhoamiResource mirrors internal/api's whoamiResponse (internal/api/whoami.go).
type WorkspacePackage ¶
type WorkspacePackage struct {
Name string `json:"name"`
Dir string `json:"dir"`
Tool string `json:"tool"`
Dockerfile string `json:"dockerfile,omitempty"`
DependsOn []string `json:"depends_on"`
WatchPaths []string `json:"watch_paths"`
}
WorkspacePackage mirrors internal/repolayout's Package.
type ZoneNode ¶
type ZoneNode struct {
NodeID string `json:"node_id"`
Name string `json:"name"`
Zone string `json:"zone,omitempty"`
Region string `json:"region,omitempty"`
Provider string `json:"provider,omitempty"`
Online bool `json:"online"`
Workloads int `json:"workloads"`
}
ZoneNode is one node with its failure-domain labels.
type ZoneSummary ¶
type ZoneSummary struct {
Zone string `json:"zone"`
Region string `json:"region,omitempty"`
Providers []string `json:"providers,omitempty"`
NodeIDs []string `json:"node_ids"`
Online int `json:"online_nodes"`
Workloads int `json:"workloads"`
}
ZoneSummary is one failure domain and what it carries.
type Zones ¶
type Zones struct {
Zones []ZoneSummary `json:"zones"`
Nodes []ZoneNode `json:"nodes"`
Labeled bool `json:"labeled"`
}
Zones is the body of GET /api/v1/nodes/zones.
Source Files
¶
- access.go
- account_self.go
- agent_client.go
- ai_control.go
- alert_defaults.go
- alert_noise.go
- alert_templates.go
- app_abuse.go
- app_exposure.go
- app_health.go
- app_health_discover.go
- app_health_score.go
- app_import.go
- app_import_cutover.go
- app_import_images.go
- app_import_sessions.go
- app_import_ssh.go
- app_insights.go
- app_keep.go
- app_sleep.go
- app_sleep_wake_timing.go
- app_update.go
- app_urls.go
- apps_bulk.go
- apps_list_entries.go
- apps_metrics_batch.go
- archives.go
- attention_feed.go
- auth_engine.go
- autoscale.go
- backup_coverage.go
- backup_protection.go
- benchmarks.go
- branch_deploys.go
- build_cache.go
- build_hooks.go
- build_performance.go
- builds.go
- cache_cdn.go
- canary.go
- cdn.go
- cert_flow.go
- changes.go
- chaos.go
- ci_oidc.go
- cli_pairing.go
- client.go
- clone_restores.go
- compliance.go
- compose.go
- config.go
- control_plane_dr.go
- coolify_exit.go
- cost_explorer.go
- cp_health.go
- dashboards.go
- data_export.go
- database_access.go
- database_credentials_reveal.go
- database_password_rotation.go
- database_provision.go
- database_tunnel.go
- database_upgrades.go
- database_versions.go
- database_viewer.go
- debug.go
- deploy_contexts.go
- deploy_events.go
- deploy_from_cache.go
- deploy_gate.go
- deploy_policy.go
- deploy_spec.go
- deploy_timeline.go
- deployments.go
- device_auth.go
- diagnosis_fix.go
- disk_resilience.go
- dns_provider.go
- dns_zones.go
- docker_guard.go
- docker_integration.go
- domain_policies.go
- domain_policies_shield.go
- domain_search_visibility.go
- email.go
- email_branding.go
- email_providers.go
- email_secret_reveal.go
- encryption_keys.go
- env_links.go
- env_protection.go
- environments_global.go
- errors.go
- event_webhooks.go
- exposure.go
- external_databases.go
- failed_deploys.go
- firewall_edge.go
- fixes.go
- forms.go
- frameworks.go
- function_triggers.go
- functions.go
- functions_controls.go
- functions_invoke.go
- functions_kv.go
- git_access.go
- git_remote.go
- git_repos.go
- git_source_commits.go
- github_actions.go
- go_live.go
- go_live_checklist.go
- google_cloud_dns.go
- iac.go
- iam_access.go
- iam_policies.go
- iam_suggestions.go
- iam_templates.go
- image_auto_update.go
- images.go
- import_analyze.go
- import_repo_plan.go
- imports.go
- inbox.go
- ingress_edge.go
- integrity.go
- invites.go
- janitor.go
- jobs.go
- loadbalancer.go
- loadbalancer_list.go
- log_budget.go
- log_explorer.go
- log_pipeline.go
- log_query.go
- mail.go
- maintenance_schedule.go
- mesh_settings.go
- migration.go
- migration_agent.go
- migration_hub.go
- migration_job.go
- migration_wizard.go
- mobile.go
- models.go
- models_cpu.go
- models_endpoints.go
- models_engine_metrics.go
- models_fit.go
- models_keys.go
- models_preflight.go
- multinode.go
- node_capacity.go
- node_cert.go
- node_failure.go
- node_join_tokens.go
- node_onboarding.go
- node_provision.go
- node_ssh_provision.go
- node_trust.go
- nodes_list.go
- observability.go
- outage_resilience.go
- package_registries.go
- pipelines.go
- pipelines_overview.go
- pipelines_sync.go
- pipelines_ux.go
- pipelines_v2.go
- placement_decision.go
- placement_sim.go
- platform_import.go
- plugin_panels.go
- plugins.go
- plugins_dns.go
- plugins_marketplace.go
- port_takeover.go
- preview.go
- preview_policy.go
- private_networks.go
- proxy_install.go
- proxy_integration.go
- publish_lock.go
- quota.go
- requests.go
- resource_advisor.go
- resources.go
- restores_build.go
- retry.go
- reverse_proxy.go
- roles.go
- scim.go
- scope.go
- search.go
- secret_rotation.go
- secretscan.go
- security.go
- security_reachability.go
- self_upgrade.go
- server_pin.go
- server_profile.go
- server_readiness.go
- session_policy.go
- setup_guide.go
- sign_in.go
- silences.go
- slo.go
- spend_caps.go
- split_testing.go
- sso.go
- sso_oidc.go
- standalone_domains.go
- static_routes.go
- storage.go
- storage_buckets.go
- supplychain.go
- system_networks.go
- system_restart.go
- teams.go
- timeline.go
- token_cleanup.go
- traces.go
- traffic.go
- traffic_app.go
- traffic_export.go
- traffic_shield.go
- types.go
- upgrade.go
- upgrade_history.go
- upgrade_schedule.go
- uploads.go
- usage_cost.go
- users.go
- wait.go
- zones.go