Documentation
¶
Overview ¶
Package infrawrench is a client for the Infrawrench API.
Construct a client, then call through the namespaces that mirror the URL structure:
client := infrawrench.NewAPIV1Client(
infrawrench.WithAPIKey(os.Getenv("INFRAWRENCH_API_KEY")),
infrawrench.WithOrgID(os.Getenv("INFRAWRENCH_ORG_ID")),
)
accounts, err := client.Accounts.List(ctx, nil)
Every call takes a context.Context first and a variadic list of RequestOption last. Non-2xx responses come back as *APIError.
Index ¶
- Constants
- Variables
- type APIError
- type APIKey
- type APIKeysCreateParams
- type APIKeysListParams
- type APIKeysNamespace
- func (n *APIKeysNamespace) Create(ctx context.Context, params APIKeysCreateParams, opts ...RequestOption) (*CreatedAPIKey, error)
- func (n *APIKeysNamespace) List(ctx context.Context, params *APIKeysListParams, opts ...RequestOption) ([]APIKey, error)
- func (n *APIKeysNamespace) Revoke(ctx context.Context, params APIKeysRevokeParams, opts ...RequestOption) (*OK, error)
- func (n *APIKeysNamespace) Rotate(ctx context.Context, params APIKeysRotateParams, opts ...RequestOption) (*CreatedAPIKey, error)
- type APIKeysRevokeParams
- type APIKeysRotateParams
- type APIV1Client
- type AcceptInvitationRequest
- type AcceptInvitationResponse
- type AcceptInvitationResponseOrganization
- type Account
- type AccountDeleted
- type AccountDeletionPreview
- type AccountDetail
- type AccountDetailAccount
- type AccountsCreateParams
- type AccountsCreateRequest
- type AccountsCredentialsGetParams
- type AccountsCredentialsNamespace
- type AccountsCredentialsUpdateParams
- type AccountsCredentialsUpdateRequest
- type AccountsCredentialsUpdateResponse
- type AccountsDeleteParams
- type AccountsDetailParams
- type AccountsListParams
- type AccountsNamespace
- func (n *AccountsNamespace) Create(ctx context.Context, params AccountsCreateParams, opts ...RequestOption) (*CreateAccountResponse, error)
- func (n *AccountsNamespace) Delete(ctx context.Context, params AccountsDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *AccountsNamespace) Detail(ctx context.Context, params AccountsDetailParams, opts ...RequestOption) (*AccountDetail, error)
- func (n *AccountsNamespace) List(ctx context.Context, params *AccountsListParams, opts ...RequestOption) ([]Account, error)
- func (n *AccountsNamespace) Plugins(ctx context.Context, params *AccountsPluginsParams, opts ...RequestOption) ([]PluginSummary, error)
- func (n *AccountsNamespace) Resources(ctx context.Context, params AccountsResourcesParams, opts ...RequestOption) ([]Resource, error)
- func (n *AccountsNamespace) Sync(ctx context.Context, params AccountsSyncParams, opts ...RequestOption) (*SyncResponse, error)
- func (n *AccountsNamespace) Update(ctx context.Context, params AccountsUpdateParams, opts ...RequestOption) (*UpdatedAccount, error)
- type AccountsPluginsParams
- type AccountsResourcesParams
- type AccountsSyncParams
- type AccountsSyncTypeCreateParams
- type AccountsSyncTypeNamespace
- type AccountsUpdateParams
- type ActiveTunnel
- type AgentSession
- type AgentSettings
- type AgentVMAccount
- type AgentsAccountsParams
- type AgentsNamespace
- type AgentsSessionsCreateParams
- type AgentsSessionsDeleteParams
- type AgentsSessionsDeleteResponse
- type AgentsSessionsListParams
- type AgentsSessionsNamespace
- func (n *AgentsSessionsNamespace) Create(ctx context.Context, params AgentsSessionsCreateParams, opts ...RequestOption) (*AgentSession, error)
- func (n *AgentsSessionsNamespace) Delete(ctx context.Context, params AgentsSessionsDeleteParams, opts ...RequestOption) (*AgentsSessionsDeleteResponse, error)
- func (n *AgentsSessionsNamespace) List(ctx context.Context, params *AgentsSessionsListParams, opts ...RequestOption) ([]AgentSession, error)
- func (n *AgentsSessionsNamespace) Open(ctx context.Context, params AgentsSessionsOpenParams, opts ...RequestOption) (*AgentsSessionsOpenResponse, error)
- func (n *AgentsSessionsNamespace) Reconcile(ctx context.Context, params AgentsSessionsReconcileParams, ...) (*AgentsSessionsReconcileResponse, error)
- type AgentsSessionsOpenParams
- type AgentsSessionsOpenResponse
- type AgentsSessionsReconcileParams
- type AgentsSessionsReconcileResponse
- type AgentsSettingsGetParams
- type AgentsSettingsNamespace
- type AgentsSettingsUpdateParams
- type ApplyManifestRequest
- type ArtifactsListParams
- type ArtifactsListRequest
- type ArtifactsNamespace
- type AssociationRequest
- type AssociationsCreateParams
- type AssociationsLiteralParams
- type AssociationsNamespace
- type AttachRequest
- type AuditEntry
- type AuditLogsGetParams
- type AuditLogsNamespace
- type AuditResponse
- type AuthFactor
- type AuthNamespace
- type Bastion
- type BastionStatus
- type BastionsCreateParams
- type BastionsDeleteParams
- type BastionsListParams
- type BastionsNamespace
- func (n *BastionsNamespace) Create(ctx context.Context, params BastionsCreateParams, opts ...RequestOption) (*CreateBastionResponse, error)
- func (n *BastionsNamespace) Delete(ctx context.Context, params BastionsDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *BastionsNamespace) List(ctx context.Context, params *BastionsListParams, opts ...RequestOption) ([]Bastion, error)
- type BillingCheckoutParams
- type BillingNamespace
- func (n *BillingNamespace) Checkout(ctx context.Context, params *BillingCheckoutParams, opts ...RequestOption) (*StripeRedirectURL, error)
- func (n *BillingNamespace) Portal(ctx context.Context, params *BillingPortalParams, opts ...RequestOption) (*StripeRedirectURL, error)
- func (n *BillingNamespace) Status(ctx context.Context, params *BillingStatusParams, opts ...RequestOption) (*BillingStatus, error)
- type BillingPortalParams
- type BillingStatus
- type BillingStatusParams
- type BudgetAlertEvent
- type BudgetCostFilter
- type BudgetFull
- type BudgetInput
- type BudgetThreshold
- type BudgetWithStatus
- type BudgetWithStatusCurrentMonthEvents
- type BudgetWithStatusPlacements
- type BudgetsCreateParams
- type BudgetsDeleteParams
- type BudgetsEventsParams
- type BudgetsGetParams
- type BudgetsListParams
- type BudgetsNamespace
- func (n *BudgetsNamespace) Create(ctx context.Context, params BudgetsCreateParams, opts ...RequestOption) (*BudgetFull, error)
- func (n *BudgetsNamespace) Delete(ctx context.Context, params BudgetsDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *BudgetsNamespace) Events(ctx context.Context, params BudgetsEventsParams, opts ...RequestOption) ([]BudgetAlertEvent, error)
- func (n *BudgetsNamespace) Get(ctx context.Context, params BudgetsGetParams, opts ...RequestOption) (*BudgetFull, error)
- func (n *BudgetsNamespace) List(ctx context.Context, params *BudgetsListParams, opts ...RequestOption) ([]BudgetWithStatus, error)
- func (n *BudgetsNamespace) Update(ctx context.Context, params BudgetsUpdateParams, opts ...RequestOption) (*BudgetFull, error)
- type BudgetsUpdateParams
- type ChildResourceRef
- type ChildTypeRef
- type ClientOption
- type ConnectEnvDeployParams
- type ConnectEnvDeployRequest
- type ConnectNamespace
- func (n *ConnectNamespace) EnvDeploy(ctx context.Context, params ConnectEnvDeployParams, opts ...RequestOption) (*OK, error)
- func (n *ConnectNamespace) SecretExport(ctx context.Context, params ConnectSecretExportParams, opts ...RequestOption) (*OK, error)
- func (n *ConnectNamespace) Templates(ctx context.Context, params ConnectTemplatesParams, opts ...RequestOption) (*ConnectTemplatesResponse, error)
- type ConnectSecretExportParams
- type ConnectSecretExportRequest
- type ConnectTemplatesParams
- type ConnectTemplatesRequest
- type ConnectTemplatesResponse
- type CostAccountStatus
- type CostAccountStatusCostPollError
- type CostAccountStatusCostPollErrorHelpLink
- type CostAccountStatusCoverage
- type CostDimension
- type CostDimensionValues
- type CostFilter
- type CostPushRequest
- type CostPushResponse
- type CostQueryRequest
- type CostQueryResponse
- type CostQuerySeries
- type CostSeriesPoint
- type CostsDimensionsParams
- type CostsNamespace
- func (n *CostsNamespace) Dimensions(ctx context.Context, params CostsDimensionsParams, opts ...RequestOption) (*CostDimensionValues, error)
- func (n *CostsNamespace) Query(ctx context.Context, params CostsQueryParams, opts ...RequestOption) (*CostQueryResponse, error)
- func (n *CostsNamespace) Rows(ctx context.Context, params CostsRowsParams, opts ...RequestOption) (*CostPushResponse, error)
- func (n *CostsNamespace) Status(ctx context.Context, params *CostsStatusParams, opts ...RequestOption) (*CostsStatusResponse, error)
- type CostsQueryParams
- type CostsRowsParams
- type CostsStatusParams
- type CostsStatusResponse
- type CreateAPIKeyRequest
- type CreateAccountRequest
- type CreateAccountResponse
- type CreateAccountResponseSyncError
- type CreateAgentSession
- type CreateBastionRequest
- type CreateBastionResponse
- type CreateConfigRequest
- type CreateCostEstimateRequest
- type CreateOrgRequest
- type CreatePricingRequest
- type CreatePricingRequestSizes
- type CreateResourceRequest
- type CreateResourceResponse
- type CreateWidgetRequest
- type CreatedAPIKey
- type CredentialExport
- type CredentialExportFields
- type CredentialField
- type CredentialFieldHelpLink
- type CredentialFieldRegion
- type CredentialFormat
- type CustomGraphCheckRequest
- type CustomGraphCheckResult
- type CustomGraphCheckResultDiagnostics
- type CustomGraphFull
- type CustomGraphInput
- type CustomGraphRenderRequest
- type CustomGraphRenderResult
- type CustomGraphRenderResultLogs
- type CustomGraphSummary
- type CustomGraphUpdate
- type CustomGraphsCheckParams
- type CustomGraphsCreateParams
- type CustomGraphsDeleteParams
- type CustomGraphsGetParams
- type CustomGraphsListParams
- type CustomGraphsNamespace
- func (n *CustomGraphsNamespace) Check(ctx context.Context, params CustomGraphsCheckParams, opts ...RequestOption) (*CustomGraphCheckResult, error)
- func (n *CustomGraphsNamespace) Create(ctx context.Context, params CustomGraphsCreateParams, opts ...RequestOption) (*CustomGraphFull, error)
- func (n *CustomGraphsNamespace) Delete(ctx context.Context, params CustomGraphsDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *CustomGraphsNamespace) Get(ctx context.Context, params CustomGraphsGetParams, opts ...RequestOption) (*CustomGraphFull, error)
- func (n *CustomGraphsNamespace) List(ctx context.Context, params *CustomGraphsListParams, opts ...RequestOption) ([]CustomGraphSummary, error)
- func (n *CustomGraphsNamespace) Render(ctx context.Context, params CustomGraphsRenderParams, opts ...RequestOption) (*CustomGraphRenderResult, error)
- func (n *CustomGraphsNamespace) Typings(ctx context.Context, params *CustomGraphsTypingsParams, opts ...RequestOption) (io.ReadCloser, error)
- func (n *CustomGraphsNamespace) Update(ctx context.Context, params CustomGraphsUpdateParams, opts ...RequestOption) (*CustomGraphFull, error)
- type CustomGraphsRenderParams
- type CustomGraphsTypingsParams
- type CustomGraphsUpdateParams
- type Dashboard
- type DashboardFull
- type DashboardPin
- type DashboardWidget
- type DashboardWidgetFull
- type DashboardWidgetKind
- type DashboardWithPins
- type DashboardWorkflowPin
- type DashboardWorkflowPinMetrics
- type DashboardsCreateParams
- type DashboardsCreateRequest
- type DashboardsDefaultFullParams
- type DashboardsDefaultNamespace
- type DashboardsDeleteParams
- type DashboardsGetParams
- type DashboardsListParams
- type DashboardsNamespace
- func (n *DashboardsNamespace) Create(ctx context.Context, params DashboardsCreateParams, opts ...RequestOption) (*DashboardFull, error)
- func (n *DashboardsNamespace) Delete(ctx context.Context, params DashboardsDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *DashboardsNamespace) Get(ctx context.Context, params DashboardsGetParams, opts ...RequestOption) (*DashboardWithPins, error)
- func (n *DashboardsNamespace) List(ctx context.Context, params *DashboardsListParams, opts ...RequestOption) ([]Dashboard, error)
- func (n *DashboardsNamespace) Probe(ctx context.Context, params DashboardsProbeParams, opts ...RequestOption) (map[string]ProbeStatus, error)
- func (n *DashboardsNamespace) Rename(ctx context.Context, params DashboardsRenameParams, opts ...RequestOption) (*OK, error)
- func (n *DashboardsNamespace) Reorder(ctx context.Context, params DashboardsReorderParams, opts ...RequestOption) (*OK, error)
- func (n *DashboardsNamespace) Unpin(ctx context.Context, params DashboardsUnpinParams, opts ...RequestOption) (*OK, error)
- func (n *DashboardsNamespace) ValidateTabs(ctx context.Context, params DashboardsValidateTabsParams, ...) (*ValidateTabsResponse, error)
- func (n *DashboardsNamespace) WorkflowPin(ctx context.Context, params DashboardsWorkflowPinParams, opts ...RequestOption) (*OK, error)
- func (n *DashboardsNamespace) WorkflowUnpin(ctx context.Context, params DashboardsWorkflowUnpinParams, ...) (*OK, error)
- type DashboardsPinCreateParams
- type DashboardsPinGetParams
- type DashboardsPinNamespace
- func (n *DashboardsPinNamespace) Create(ctx context.Context, params DashboardsPinCreateParams, opts ...RequestOption) (*OK, error)
- func (n *DashboardsPinNamespace) Get(ctx context.Context, params DashboardsPinGetParams, opts ...RequestOption) (*PinFull, error)
- func (n *DashboardsPinNamespace) Range(ctx context.Context, params DashboardsPinRangeParams, opts ...RequestOption) (*PinRangeResponse, error)
- type DashboardsPinRangeParams
- type DashboardsProbeParams
- type DashboardsRenameParams
- type DashboardsRenameRequest
- type DashboardsReorderParams
- type DashboardsUnpinParams
- type DashboardsValidateTabsParams
- type DashboardsWidgetsCreateParams
- type DashboardsWidgetsDeleteParams
- type DashboardsWidgetsNamespace
- func (n *DashboardsWidgetsNamespace) Create(ctx context.Context, params DashboardsWidgetsCreateParams, ...) (*DashboardWidgetFull, error)
- func (n *DashboardsWidgetsNamespace) Delete(ctx context.Context, params DashboardsWidgetsDeleteParams, ...) (*OK, error)
- func (n *DashboardsWidgetsNamespace) Update(ctx context.Context, params DashboardsWidgetsUpdateParams, ...) (*DashboardWidgetFull, error)
- type DashboardsWidgetsUpdateParams
- type DashboardsWorkflowPinParams
- type DashboardsWorkflowUnpinParams
- type DeployCreatedResource
- type DeployCreatedResourceSidecar
- type DeployEnvs
- type DeployEnvsInput
- type DeployPlanInput
- type DeployPlanResult
- type DeployPlanResultResult
- type DeployPlanResultResultError
- type DeployPlannedChange
- type DeployPlannedChangeSidecar
- type DeployRepo
- type DeployRollbackInput
- type DeployRunLog
- type DeployStage
- type DeployStatus
- type DeployTrigger
- type DeployTriggerInput
- type DeploymentRun
- type DeploymentRunInput
- type DeploymentRunInputError
- type DeploymentsEnvsParams
- type DeploymentsNamespace
- func (n *DeploymentsNamespace) Envs(ctx context.Context, params *DeploymentsEnvsParams, opts ...RequestOption) (*DeployEnvs, error)
- func (n *DeploymentsNamespace) Plan(ctx context.Context, params *DeploymentsPlanParams, opts ...RequestOption) (*DeployPlanResult, error)
- func (n *DeploymentsNamespace) Repos(ctx context.Context, params *DeploymentsReposParams, opts ...RequestOption) ([]DeployRepo, error)
- type DeploymentsPlanParams
- type DeploymentsReposParams
- type DeploymentsRunsCreateParams
- type DeploymentsRunsCreateResponse
- type DeploymentsRunsGetParams
- type DeploymentsRunsListParams
- type DeploymentsRunsNamespace
- func (n *DeploymentsRunsNamespace) Create(ctx context.Context, params *DeploymentsRunsCreateParams, ...) (*DeploymentsRunsCreateResponse, error)
- func (n *DeploymentsRunsNamespace) Get(ctx context.Context, params DeploymentsRunsGetParams, opts ...RequestOption) (*DeploymentRun, error)
- func (n *DeploymentsRunsNamespace) List(ctx context.Context, params *DeploymentsRunsListParams, opts ...RequestOption) ([]DeploymentRun, error)
- func (n *DeploymentsRunsNamespace) Rollback(ctx context.Context, params DeploymentsRunsRollbackParams, ...) (*DeployPlanResult, error)
- type DeploymentsRunsRollbackParams
- type DeploymentsTriggersCreateParams
- type DeploymentsTriggersDeleteParams
- type DeploymentsTriggersListParams
- type DeploymentsTriggersNamespace
- func (n *DeploymentsTriggersNamespace) Create(ctx context.Context, params *DeploymentsTriggersCreateParams, ...) (*DeployTrigger, error)
- func (n *DeploymentsTriggersNamespace) Delete(ctx context.Context, params DeploymentsTriggersDeleteParams, ...) (*OK, error)
- func (n *DeploymentsTriggersNamespace) List(ctx context.Context, params *DeploymentsTriggersListParams, ...) ([]DeployTrigger, error)
- func (n *DeploymentsTriggersNamespace) Update(ctx context.Context, params DeploymentsTriggersUpdateParams, ...) (*DeployTrigger, error)
- type DeploymentsTriggersUpdateParams
- type DeploymentsTriggersUpdateRequest
- type DescribeRequest
- type DescribeResponse
- type DockerCommandParams
- type DockerCommandRequest
- type DockerCommandResponse
- type DockerNamespace
- type EditableField
- type Error
- type ExportCredentialRequest
- type FieldActionRequest
- type FieldActionResponse
- type FieldActionResponseOption
- type GenerateSSHKeyRequest
- type GeneratedSSHKey
- type ImportSSHKeyRequest
- type ImportYAMLRequest
- type ImportedSSHKey
- type Invitation
- type InvitationDetail
- type InvitationsAcceptParams
- type InvitationsByTokenGetParams
- type InvitationsByTokenNamespace
- type InvitationsNamespace
- type InviteRequest
- type InviteResponse
- type InvokeActionRequest
- type JSONObject
- type KVCommandParams
- type KVCommandRequest
- type KVCommandResponse
- type KVNamespace
- type LiteralAssociationRequest
- type LogsRequest
- type LogsResponse
- type Manifest
- type MeResponse
- type MetricSeries
- type MetricSeriesPoints
- type MetricsRequest
- type MetricsResponse
- type MsTeamsStatus
- type MsTeamsWebhook
- type MsTeamsWebhookCreate
- type MsTeamsWebhookUpdate
- type MsteamsNamespace
- type MsteamsStatusParams
- type MsteamsTestParams
- type MsteamsTestResponse
- type MsteamsWebhooksCreateParams
- type MsteamsWebhooksDeleteParams
- type MsteamsWebhooksNamespace
- func (n *MsteamsWebhooksNamespace) Create(ctx context.Context, params *MsteamsWebhooksCreateParams, ...) (*MsTeamsWebhook, error)
- func (n *MsteamsWebhooksNamespace) Delete(ctx context.Context, params MsteamsWebhooksDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *MsteamsWebhooksNamespace) Update(ctx context.Context, params MsteamsWebhooksUpdateParams, opts ...RequestOption) (*MsTeamsWebhook, error)
- type MsteamsWebhooksUpdateParams
- type NoSQLCommandRequest
- type OK
- type OrgMember
- type OrgMembership
- type Organization
- type OrganizationRef
- type OrganizationRole
- type OrgsCreateParams
- type OrgsNamespace
- type OwnershipBlocker
- type OwnershipTransferRequired
- type PageClearResponse
- type PageRequest
- type PageResponse
- type PagesCreateParams
- type PagesDeleteParams
- type PagesNamespace
- type PeerPane
- type PeerPaneStub
- type PeerPanesRequest
- type Permission
- type PermissionCatalog
- type PickerResource
- type PickerResourcesRequest
- type PickerResourcesRequestSources
- type PinFull
- type PinRangeMetricSeries
- type PinRangeMetricSeriesPoints
- type PinRangeResponse
- type PinRequest
- type PluginID
- type PluginSummary
- type ProbeRequest
- type ProbeRequestItems
- type ProbeStatus
- type ProbeStatusResourceCounts
- type ProbeStatusSparkline
- type Profile
- type ProfileEmailChangeConfirmParams
- type ProfileEmailChangeConfirmRequest
- type ProfileEmailChangeConfirmResponse
- type ProfileEmailChangeCreateParams
- type ProfileEmailChangeCreateRequest
- type ProfileEmailChangeCreateResponse
- type ProfileEmailChangeNamespace
- func (n *ProfileEmailChangeNamespace) Confirm(ctx context.Context, params *ProfileEmailChangeConfirmParams, ...) (*ProfileEmailChangeConfirmResponse, error)
- func (n *ProfileEmailChangeNamespace) Create(ctx context.Context, params *ProfileEmailChangeCreateParams, ...) (*ProfileEmailChangeCreateResponse, error)
- type ProfileIdentities
- type ProfileMFAChallengeParams
- type ProfileMFADeleteParams
- type ProfileMFANamespace
- func (n *ProfileMFANamespace) Challenge(ctx context.Context, params ProfileMFAChallengeParams, opts ...RequestOption) (*ProfileMfachallengeResponse, error)
- func (n *ProfileMFANamespace) Create(ctx context.Context, opts ...RequestOption) (*TOTPEnrollment, error)
- func (n *ProfileMFANamespace) Delete(ctx context.Context, params ProfileMFADeleteParams, opts ...RequestOption) (*OK, error)
- func (n *ProfileMFANamespace) List(ctx context.Context, opts ...RequestOption) ([]AuthFactor, error)
- func (n *ProfileMFANamespace) Verify(ctx context.Context, params ProfileMFAVerifyParams, opts ...RequestOption) (*ProfileMfaverifyResponse, error)
- type ProfileMFAVerifyParams
- type ProfileMfachallengeResponse
- type ProfileMfaverifyRequest
- type ProfileMfaverifyResponse
- type ProfileNamespace
- func (n *ProfileNamespace) Delete(ctx context.Context, opts ...RequestOption) (*AccountDeleted, error)
- func (n *ProfileNamespace) DeletionPreview(ctx context.Context, opts ...RequestOption) (*AccountDeletionPreview, error)
- func (n *ProfileNamespace) Get(ctx context.Context, opts ...RequestOption) (*Profile, error)
- func (n *ProfileNamespace) PasswordReset(ctx context.Context, opts ...RequestOption) (*ProfilePasswordResetResponse, error)
- func (n *ProfileNamespace) SendVerificationEmail(ctx context.Context, opts ...RequestOption) (*OK, error)
- func (n *ProfileNamespace) Update(ctx context.Context, params *ProfileUpdateParams, opts ...RequestOption) (*ProfileSummary, error)
- type ProfilePasswordResetResponse
- type ProfileSessionsDeleteParams
- type ProfileSessionsNamespace
- func (n *ProfileSessionsNamespace) Delete(ctx context.Context, params ProfileSessionsDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *ProfileSessionsNamespace) List(ctx context.Context, opts ...RequestOption) ([]UserSession, error)
- func (n *ProfileSessionsNamespace) RevokeOthers(ctx context.Context, opts ...RequestOption) (*ProfileSessionsRevokeOthersResponse, error)
- type ProfileSessionsRevokeOthersResponse
- type ProfileSummary
- type ProfileUpdateParams
- type ProfileUpdateRequest
- type PushedCostRow
- type ReauthenticationRequired
- type ReorderRequest
- type ReorderRequestCards
- type RequestOption
- type Resource
- type ResourceDetail
- type ResourceID
- type ResourceStatus
- type ResourceTypeID
- type ResourceTypeSummary
- type ResourceTypeSummaryAttachTargets
- type ResourcesAttachParams
- type ResourcesCreateConfigParams
- type ResourcesCreateCostEstimateParams
- type ResourcesCreateCostEstimateResponse
- type ResourcesCreateParams
- type ResourcesCreatePricingParams
- type ResourcesDeleteParams
- type ResourcesDescribeParams
- type ResourcesDetailParams
- type ResourcesExportCredentialParams
- type ResourcesFieldActionParams
- type ResourcesImportYAMLParams
- type ResourcesInvokeActionParams
- type ResourcesLogsParams
- type ResourcesManifestCreateParams
- type ResourcesManifestGetParams
- type ResourcesManifestNamespace
- type ResourcesMetricsParams
- type ResourcesNamespace
- func (n *ResourcesNamespace) Attach(ctx context.Context, params ResourcesAttachParams, opts ...RequestOption) (*OK, error)
- func (n *ResourcesNamespace) Create(ctx context.Context, params ResourcesCreateParams, opts ...RequestOption) (*CreateResourceResponse, error)
- func (n *ResourcesNamespace) CreateConfig(ctx context.Context, params ResourcesCreateConfigParams, opts ...RequestOption) (JSONObject, error)
- func (n *ResourcesNamespace) CreateCostEstimate(ctx context.Context, params ResourcesCreateCostEstimateParams, ...) (*ResourcesCreateCostEstimateResponse, error)
- func (n *ResourcesNamespace) CreatePricing(ctx context.Context, params ResourcesCreatePricingParams, ...) (map[string]JSONObject, error)
- func (n *ResourcesNamespace) Delete(ctx context.Context, params ResourcesDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *ResourcesNamespace) Describe(ctx context.Context, params ResourcesDescribeParams, opts ...RequestOption) (*DescribeResponse, error)
- func (n *ResourcesNamespace) Detail(ctx context.Context, params ResourcesDetailParams, opts ...RequestOption) (*ResourceDetail, error)
- func (n *ResourcesNamespace) ExportCredential(ctx context.Context, params ResourcesExportCredentialParams, ...) (*CredentialExport, error)
- func (n *ResourcesNamespace) FieldAction(ctx context.Context, params ResourcesFieldActionParams, opts ...RequestOption) (*FieldActionResponse, error)
- func (n *ResourcesNamespace) ImportYAML(ctx context.Context, params ResourcesImportYAMLParams, opts ...RequestOption) (JSONObject, error)
- func (n *ResourcesNamespace) InvokeAction(ctx context.Context, params ResourcesInvokeActionParams, opts ...RequestOption) (*OK, error)
- func (n *ResourcesNamespace) Logs(ctx context.Context, params ResourcesLogsParams, opts ...RequestOption) (*LogsResponse, error)
- func (n *ResourcesNamespace) Metrics(ctx context.Context, params ResourcesMetricsParams, opts ...RequestOption) (*MetricsResponse, error)
- func (n *ResourcesNamespace) NoSQLCommand(ctx context.Context, params ResourcesNoSQLCommandParams, opts ...RequestOption) (*ResourcesNoSqlcommandResponse, error)
- func (n *ResourcesNamespace) PeerPanes(ctx context.Context, params ResourcesPeerPanesParams, opts ...RequestOption) ([]PeerPane, error)
- func (n *ResourcesNamespace) PickerResources(ctx context.Context, params ResourcesPickerResourcesParams, ...) ([]PickerResource, error)
- func (n *ResourcesNamespace) Update(ctx context.Context, params ResourcesUpdateParams, opts ...RequestOption) (*UpdateResourceResponse, error)
- type ResourcesNoSQLCommandParams
- type ResourcesNoSqlcommandResponse
- type ResourcesPeerPanesParams
- type ResourcesPickerResourcesParams
- type ResourcesSecretVersionsAccessParams
- type ResourcesSecretVersionsAddParams
- type ResourcesSecretVersionsGetParams
- type ResourcesSecretVersionsModifyParams
- type ResourcesSecretVersionsNamespace
- func (n *ResourcesSecretVersionsNamespace) Access(ctx context.Context, params ResourcesSecretVersionsAccessParams, ...) (*SecretAccessResponse, error)
- func (n *ResourcesSecretVersionsNamespace) Add(ctx context.Context, params ResourcesSecretVersionsAddParams, ...) (*SecretVersionResponse, error)
- func (n *ResourcesSecretVersionsNamespace) Get(ctx context.Context, params ResourcesSecretVersionsGetParams, ...) (*SecretVersionsResponse, error)
- func (n *ResourcesSecretVersionsNamespace) Modify(ctx context.Context, params ResourcesSecretVersionsModifyParams, ...) (*SecretVersionResponse, error)
- type ResourcesUpdateParams
- type Role
- type RoleChangeRequest
- type RoleCreateRequest
- type RoleSummary
- type RoleUpdateRequest
- type SFTPDeleteParams
- type SFTPDeleteRequest
- type SFTPDownloadParams
- type SFTPEntry
- type SFTPListParams
- type SFTPListRequest
- type SFTPMkdirParams
- type SFTPNamespace
- func (n *SFTPNamespace) Delete(ctx context.Context, params SFTPDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *SFTPNamespace) Download(ctx context.Context, params SFTPDownloadParams, opts ...RequestOption) (io.ReadCloser, error)
- func (n *SFTPNamespace) List(ctx context.Context, params SFTPListParams, opts ...RequestOption) ([]SFTPEntry, error)
- func (n *SFTPNamespace) Mkdir(ctx context.Context, params SFTPMkdirParams, opts ...RequestOption) (*OK, error)
- func (n *SFTPNamespace) Upload(ctx context.Context, params SFTPUploadParams, opts ...RequestOption) (*OK, error)
- type SFTPPathRequest
- type SFTPUploadForm
- type SFTPUploadParams
- type SQLEstimateParams
- type SQLEstimateRequest
- type SQLExecuteParams
- type SQLExecuteRequest
- type SQLExecuteResponse
- type SQLNamespace
- func (n *SQLNamespace) Estimate(ctx context.Context, params SQLEstimateParams, opts ...RequestOption) (JSONObject, error)
- func (n *SQLNamespace) Execute(ctx context.Context, params SQLExecuteParams, opts ...RequestOption) (*SQLExecuteResponse, error)
- func (n *SQLNamespace) Query(ctx context.Context, params SQLQueryParams, opts ...RequestOption) (any, error)
- type SQLQueryParams
- type SQLQueryRequest
- type SQLQueryResponse
- type SSHExecRequest
- type SSHExecResponse
- type SSHKey
- type SSHKeyType
- type SSHKeysCreateParams
- type SSHKeysDeleteParams
- type SSHKeysImportParams
- type SSHKeysListParams
- type SSHKeysNamespace
- func (n *SSHKeysNamespace) Create(ctx context.Context, params SSHKeysCreateParams, opts ...RequestOption) (*GeneratedSSHKey, error)
- func (n *SSHKeysNamespace) Delete(ctx context.Context, params SSHKeysDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *SSHKeysNamespace) Import(ctx context.Context, params SSHKeysImportParams, opts ...RequestOption) (*ImportedSSHKey, error)
- func (n *SSHKeysNamespace) List(ctx context.Context, params *SSHKeysListParams, opts ...RequestOption) ([]SSHKey, error)
- type SSHTunnelCreateAccountRequest
- type SSHTunnelCreateAccountResponse
- type SSHTunnelsActiveParams
- type SSHTunnelsCloseParams
- type SSHTunnelsCreateAccountParams
- type SSHTunnelsExecParams
- type SSHTunnelsNamespace
- func (n *SSHTunnelsNamespace) Active(ctx context.Context, params *SSHTunnelsActiveParams, opts ...RequestOption) (map[string]ActiveTunnel, error)
- func (n *SSHTunnelsNamespace) Close(ctx context.Context, params SSHTunnelsCloseParams, opts ...RequestOption) (*OK, error)
- func (n *SSHTunnelsNamespace) CreateAccount(ctx context.Context, params SSHTunnelsCreateAccountParams, ...) (*SSHTunnelCreateAccountResponse, error)
- func (n *SSHTunnelsNamespace) Exec(ctx context.Context, params SSHTunnelsExecParams, opts ...RequestOption) (*SSHExecResponse, error)
- func (n *SSHTunnelsNamespace) Open(ctx context.Context, params SSHTunnelsOpenParams, opts ...RequestOption) (*SshtunnelsOpenResponse, error)
- type SSHTunnelsOpenParams
- type SearchHit
- type SearchListParams
- type SearchNamespace
- type SeatLimitResponse
- type SecretAccessRequest
- type SecretAccessResponse
- type SecretAddRequest
- type SecretExportTemplate
- type SecretExportTemplateEntries
- type SecretModifyRequest
- type SecretVersion
- type SecretVersionResponse
- type SecretVersionsResponse
- type Session
- type SlackAvailableChannel
- type SlackChannel
- type SlackChannelCreate
- type SlackChannelUpdate
- type SlackChannelsCreateParams
- type SlackChannelsDeleteParams
- type SlackChannelsNamespace
- func (n *SlackChannelsNamespace) Create(ctx context.Context, params *SlackChannelsCreateParams, opts ...RequestOption) (*SlackChannel, error)
- func (n *SlackChannelsNamespace) Delete(ctx context.Context, params SlackChannelsDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *SlackChannelsNamespace) Update(ctx context.Context, params SlackChannelsUpdateParams, opts ...RequestOption) (*SlackChannel, error)
- type SlackChannelsUpdateParams
- type SlackInstallURLParams
- type SlackInstallUrlresponse
- type SlackInstallation
- type SlackInstallationsAvailableChannelsParams
- type SlackInstallationsAvailableChannelsResponse
- type SlackInstallationsDeleteParams
- type SlackInstallationsNamespace
- func (n *SlackInstallationsNamespace) AvailableChannels(ctx context.Context, params SlackInstallationsAvailableChannelsParams, ...) (*SlackInstallationsAvailableChannelsResponse, error)
- func (n *SlackInstallationsNamespace) Delete(ctx context.Context, params SlackInstallationsDeleteParams, ...) (*OK, error)
- type SlackNamespace
- func (n *SlackNamespace) InstallURL(ctx context.Context, params *SlackInstallURLParams, opts ...RequestOption) (*SlackInstallUrlresponse, error)
- func (n *SlackNamespace) Status(ctx context.Context, params *SlackStatusParams, opts ...RequestOption) (*SlackStatus, error)
- func (n *SlackNamespace) Test(ctx context.Context, params *SlackTestParams, opts ...RequestOption) (*SlackTestResponse, error)
- type SlackStatus
- type SlackStatusParams
- type SlackTestParams
- type SlackTestResponse
- type SshtunnelsCloseRequest
- type SshtunnelsOpenRequest
- type SshtunnelsOpenResponse
- type StatusDot
- type StorageDeleteParams
- type StorageDownloadParams
- type StorageListParams
- type StorageListRequest
- type StorageMkdirParams
- type StorageNamespace
- func (n *StorageNamespace) Delete(ctx context.Context, params StorageDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *StorageNamespace) Download(ctx context.Context, params StorageDownloadParams, opts ...RequestOption) (io.ReadCloser, error)
- func (n *StorageNamespace) List(ctx context.Context, params StorageListParams, opts ...RequestOption) ([]StorageObject, error)
- func (n *StorageNamespace) Mkdir(ctx context.Context, params StorageMkdirParams, opts ...RequestOption) (*OK, error)
- func (n *StorageNamespace) Upload(ctx context.Context, params StorageUploadParams, opts ...RequestOption) (*OK, error)
- type StorageObject
- type StoragePathRequest
- type StorageUploadForm
- type StorageUploadParams
- type StripeRedirectURL
- type Subscription
- type SyncResponse
- type SyncedResource
- type TOTPEnrollment
- type TabTarget
- type TeamInvitationsCreateParams
- type TeamInvitationsDeleteParams
- type TeamInvitationsListParams
- type TeamInvitationsNamespace
- func (n *TeamInvitationsNamespace) Create(ctx context.Context, params TeamInvitationsCreateParams, opts ...RequestOption) (*InviteResponse, error)
- func (n *TeamInvitationsNamespace) Delete(ctx context.Context, params TeamInvitationsDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *TeamInvitationsNamespace) List(ctx context.Context, params *TeamInvitationsListParams, opts ...RequestOption) ([]Invitation, error)
- type TeamMeParams
- type TeamMembersDeleteParams
- type TeamMembersListParams
- type TeamMembersNamespace
- func (n *TeamMembersNamespace) Delete(ctx context.Context, params TeamMembersDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *TeamMembersNamespace) List(ctx context.Context, params *TeamMembersListParams, opts ...RequestOption) ([]OrgMember, error)
- func (n *TeamMembersNamespace) Role(ctx context.Context, params TeamMembersRoleParams, opts ...RequestOption) (*OK, error)
- type TeamMembersRoleParams
- type TeamNamespace
- type TeamPermissionsParams
- type TeamRolesCreateParams
- type TeamRolesDeleteParams
- type TeamRolesListParams
- type TeamRolesNamespace
- func (n *TeamRolesNamespace) Create(ctx context.Context, params TeamRolesCreateParams, opts ...RequestOption) (*Role, error)
- func (n *TeamRolesNamespace) Delete(ctx context.Context, params TeamRolesDeleteParams, opts ...RequestOption) (*OK, error)
- func (n *TeamRolesNamespace) List(ctx context.Context, params *TeamRolesListParams, opts ...RequestOption) ([]Role, error)
- func (n *TeamRolesNamespace) Update(ctx context.Context, params TeamRolesUpdateParams, opts ...RequestOption) (*Role, error)
- type TeamRolesUpdateParams
- type UnpinRequest
- type UpdateAccountRequest
- type UpdateResourceRequest
- type UpdateResourceResponse
- type UpdateWidgetRequest
- type UpdatedAccount
- type UserSession
- type ValidateTabsRequest
- type ValidateTabsRequestTabs
- type ValidateTabsResponse
- type WorkflowPinRequest
Constants ¶
const APIVersion = "0.18.0"
APIVersion is info.version from the spec this package was generated from.
A Go module takes its version from a VCS tag rather than from a manifest field, so there is nowhere else for the API version to live — this constant is what you compare against when you need to know which API shape you have.
const DefaultBaseURL = "https://app.infrawrench.com"
DefaultBaseURL is the deployment a client talks to unless WithBaseURL says otherwise. It is the first server the OpenAPI document advertises.
Variables ¶
var ErrMissingPathParam = errors.New("infrawrench: missing path parameter")
ErrMissingPathParam is returned when a path parameter was supplied by neither the call nor the client configuration. Match it with errors.Is.
Functions ¶
This section is empty.
Types ¶
type APIError ¶
type APIError struct {
// StatusCode is the HTTP status code, for example 403.
StatusCode int
// Status is the full HTTP status line, for example "403 Forbidden".
Status string
// Code is the value of the body's "code" field, or "" when absent.
Code string
// Message is the body's "error" or "message" field, falling back to the
// status line.
Message string
// Body is the raw response body. Always populated, even when it is not
// JSON, so nothing is lost when an intermediary answers instead of the API.
Body []byte
// Data is Body decoded as JSON, or nil when the body was not valid JSON.
Data any
// Method is the HTTP method of the request that failed.
Method string
// URL is the fully resolved URL of the request that failed.
URL string
}
APIError is returned for every non-2xx response.
Branch on Code, not on Message: Code is the machine-readable discriminator the API sends (for example "reauthentication_required" on a step-up 403), while Message is prose that may change.
func AsAPIError ¶
AsAPIError reports whether err is, or wraps, an *APIError. It is a shorthand for errors.As with the right variable already declared.
type APIKey ¶
type APIKey struct {
ID string `json:"id"`
Name string `json:"name"`
Prefix string `json:"prefix"`
Scopes []Permission `json:"scopes"`
LastUsedAt *string `json:"lastUsedAt"`
ExpiresAt *string `json:"expiresAt"`
RevokedAt *string `json:"revokedAt"`
// LegacyHashSunsetAt: Cutover date past which a key still on the legacy
// SHA-256 hash will be refused. Null once rehashed to HMAC.
LegacyHashSunsetAt *string `json:"legacyHashSunsetAt"`
// NeedsRotation: True when this key is still hashed with the legacy SHA-256
// scheme and should be rotated before `legacyHashSunsetAt`.
NeedsRotation bool `json:"needsRotation"`
CreatedAt string `json:"createdAt"`
}
APIKey is the `ApiKey` schema.
Spec schema: `ApiKey`.
type APIKeysCreateParams ¶
type APIKeysCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CreateAPIKeyRequest
}
APIKeysCreateParams holds the parameters for `client.apiKeys.create`.
type APIKeysListParams ¶
type APIKeysListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
APIKeysListParams holds the parameters for `client.apiKeys.list`.
Every field is optional; pass nil to take the defaults.
type APIKeysNamespace ¶
type APIKeysNamespace struct {
// contains filtered or unexported fields
}
APIKeysNamespace is `client.apiKeys`.
func (*APIKeysNamespace) Create ¶
func (n *APIKeysNamespace) Create(ctx context.Context, params APIKeysCreateParams, opts ...RequestOption) (*CreatedAPIKey, error)
Create: Create an API key (plaintext returned once)
POST /api/org/{orgId}/api-keys
func (*APIKeysNamespace) List ¶
func (n *APIKeysNamespace) List(ctx context.Context, params *APIKeysListParams, opts ...RequestOption) ([]APIKey, error)
List: List API keys (no plaintext)
GET /api/org/{orgId}/api-keys
func (*APIKeysNamespace) Revoke ¶
func (n *APIKeysNamespace) Revoke(ctx context.Context, params APIKeysRevokeParams, opts ...RequestOption) (*OK, error)
Revoke: Revoke an API key
POST /api/org/{orgId}/api-keys/{id}/revoke
func (*APIKeysNamespace) Rotate ¶
func (n *APIKeysNamespace) Rotate(ctx context.Context, params APIKeysRotateParams, opts ...RequestOption) (*CreatedAPIKey, error)
Rotate: Rotate an API key (revokes old, returns new)
POST /api/org/{orgId}/api-keys/{id}/rotate
Raises on 404: Not found
type APIKeysRevokeParams ¶
type APIKeysRevokeParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
APIKeysRevokeParams holds the parameters for `client.apiKeys.revoke`.
type APIKeysRotateParams ¶
type APIKeysRotateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
APIKeysRotateParams holds the parameters for `client.apiKeys.rotate`.
type APIV1Client ¶
type APIV1Client struct {
// Accounts: `client.accounts`.
Accounts *AccountsNamespace
// Agents: `client.agents`.
Agents *AgentsNamespace
// APIKeys: `client.apiKeys`.
APIKeys *APIKeysNamespace
// Artifacts: `client.artifacts`.
Artifacts *ArtifactsNamespace
// Associations: `client.associations`.
Associations *AssociationsNamespace
// AuditLogs: `client.auditLogs`.
AuditLogs *AuditLogsNamespace
// Auth: `client.auth`.
Auth *AuthNamespace
// Bastions: `client.bastions`.
Bastions *BastionsNamespace
// Billing: `client.billing`.
Billing *BillingNamespace
// Budgets: `client.budgets`.
Budgets *BudgetsNamespace
// Connect: `client.connect`.
Connect *ConnectNamespace
// Costs: `client.costs`.
Costs *CostsNamespace
// CustomGraphs: `client.customGraphs`.
CustomGraphs *CustomGraphsNamespace
// Dashboards: `client.dashboards`.
Dashboards *DashboardsNamespace
// Deployments: `client.deployments`.
Deployments *DeploymentsNamespace
// Docker: `client.docker`.
Docker *DockerNamespace
// Invitations: `client.invitations`.
Invitations *InvitationsNamespace
// KV: `client.kv`.
KV *KVNamespace
// Msteams: `client.msteams`.
Msteams *MsteamsNamespace
// Orgs: `client.orgs`.
Orgs *OrgsNamespace
// Pages: `client.pages`.
Pages *PagesNamespace
// Profile: `client.profile`.
Profile *ProfileNamespace
// Resources: `client.resources`.
Resources *ResourcesNamespace
// Search: `client.search`.
Search *SearchNamespace
// SFTP: `client.sftp`.
SFTP *SFTPNamespace
// Slack: `client.slack`.
Slack *SlackNamespace
// SQL: `client.sql`.
SQL *SQLNamespace
// SSHKeys: `client.sshKeys`.
SSHKeys *SSHKeysNamespace
// SSHTunnels: `client.sshTunnels`.
SSHTunnels *SSHTunnelsNamespace
// Storage: `client.storage`.
Storage *StorageNamespace
// Team: `client.team`.
Team *TeamNamespace
// contains filtered or unexported fields
}
APIV1Client is a client for the Infrawrench API.
Calls hang off the namespace fields below, which mirror the URL structure — `client.Accounts.Credentials.Get(ctx, …)`. The zero value is not usable; build one with NewAPIV1Client.
func NewAPIV1Client ¶
func NewAPIV1Client(opts ...ClientOption) *APIV1Client
NewAPIV1Client builds a client. With no options it talks to https://app.infrawrench.com anonymously, which is rarely what you want: pass WithAPIKey, and WithOrgID if you would rather not repeat the organization id on every call.
func (*APIV1Client) BaseURL ¶
func (c *APIV1Client) BaseURL() string
BaseURL reports the normalized base URL every call is sent to.
type AcceptInvitationRequest ¶
type AcceptInvitationRequest struct {
Token string `json:"token"`
}
AcceptInvitationRequest is the `AcceptInvitationRequest` schema.
type AcceptInvitationResponse ¶
type AcceptInvitationResponse struct {
Organization AcceptInvitationResponseOrganization `json:"organization"`
}
AcceptInvitationResponse is the `AcceptInvitationResponse` schema.
type AcceptInvitationResponseOrganization ¶
type AcceptInvitationResponseOrganization struct {
ID string `json:"id"`
DisplayName string `json:"displayName"`
}
AcceptInvitationResponseOrganization is an object the spec declares inline.
type Account ¶
type Account struct {
ID string `json:"id"`
PluginID string `json:"pluginId"`
DisplayName string `json:"displayName"`
// BastionID: Bastion this account's cloud-API egress is routed through.
// `null` ⇒ direct egress.
BastionID *string `json:"bastionId"`
CreatedAt string `json:"createdAt"`
}
Account is the `Account` schema.
type AccountDeleted ¶ added in v0.8.0
type AccountDeleted struct {
OK bool `json:"ok"`
OrganizationsDeleted int64 `json:"organizationsDeleted"`
}
AccountDeleted is the `AccountDeleted` schema.
type AccountDeletionPreview ¶ added in v0.8.0
type AccountDeletionPreview struct {
// OrganizationsToDelete: Deleted with the account — the caller is their only
// member.
OrganizationsToDelete []OrganizationRef `json:"organizationsToDelete"`
// OrganizationsToLeave: Survive; the caller's membership is removed.
OrganizationsToLeave []OrganizationRef `json:"organizationsToLeave"`
// Blockers: Non-empty means DELETE /api/profile will refuse until another
// owner is promoted.
Blockers []OwnershipBlocker `json:"blockers"`
}
AccountDeletionPreview is the `AccountDeletionPreview` schema.
type AccountDetail ¶
type AccountDetail struct {
Account AccountDetailAccount `json:"account"`
ResourceTypes []ResourceTypeSummary `json:"resourceTypes"`
PluginDisplayName string `json:"pluginDisplayName"`
PluginLogoSvg string `json:"pluginLogoSvg"`
}
AccountDetail is the `AccountDetail` schema.
type AccountDetailAccount ¶
type AccountDetailAccount struct {
ID string `json:"id"`
PluginID string `json:"pluginId"`
DisplayName string `json:"displayName"`
}
AccountDetailAccount is an object the spec declares inline.
type AccountsCreateParams ¶
type AccountsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body AccountsCreateRequest
}
AccountsCreateParams holds the parameters for `client.accounts.create`.
type AccountsCreateRequest ¶
type AccountsCreateRequest struct {
PluginID *PluginID `json:"pluginId,omitempty"`
DisplayName string `json:"displayName"`
Credentials map[string]string `json:"credentials"`
// BastionID: Optional bastion id to route this account's cloud API traffic
// through.
BastionID *string `json:"bastionId,omitempty"`
}
AccountsCreateRequest is an object the spec declares inline.
type AccountsCredentialsGetParams ¶
type AccountsCredentialsGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
AccountsCredentialsGetParams holds the parameters for `client.accounts.credentials.get`.
type AccountsCredentialsNamespace ¶
type AccountsCredentialsNamespace struct {
// contains filtered or unexported fields
}
AccountsCredentialsNamespace is `client.accounts.credentials`.
func (*AccountsCredentialsNamespace) Get ¶
func (n *AccountsCredentialsNamespace) Get(ctx context.Context, params AccountsCredentialsGetParams, opts ...RequestOption) (map[string]string, error)
Get: Fetch the decrypted credentials for an account
Returns the credentials map as it was originally submitted. Sensitive — gate access carefully.
_Requires permission: `secrets:read`._
GET /api/org/{orgId}/accounts/{id}/credentials
Raises on 404: Not found
func (*AccountsCredentialsNamespace) Update ¶
func (n *AccountsCredentialsNamespace) Update(ctx context.Context, params AccountsCredentialsUpdateParams, opts ...RequestOption) (*AccountsCredentialsUpdateResponse, error)
Update: Rotate the credentials an account uses to talk to the upstream provider
Replaces the encrypted credentials blob in place. Used to swap a stale or narrowly-scoped token for a freshly-minted one without recreating the account (preserves existing resources, pins, dashboards, sync history).
_Requires permission: `secrets:write`._
PUT /api/org/{orgId}/accounts/{id}/credentials
Raises on 400: Bad request
Raises on 404: Not found
type AccountsCredentialsUpdateParams ¶
type AccountsCredentialsUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body AccountsCredentialsUpdateRequest
}
AccountsCredentialsUpdateParams holds the parameters for `client.accounts.credentials.update`.
type AccountsCredentialsUpdateRequest ¶
type AccountsCredentialsUpdateRequest struct {
// Credentials: Complete credentials map. Sensitive fields the caller doesn't
// want to change should be re-sent with their previous value (the server
// doesn't merge with the existing blob).
Credentials map[string]string `json:"credentials"`
}
AccountsCredentialsUpdateRequest is an object the spec declares inline.
type AccountsCredentialsUpdateResponse ¶
type AccountsCredentialsUpdateResponse struct {
OK bool `json:"ok"`
}
AccountsCredentialsUpdateResponse is an object the spec declares inline.
type AccountsDeleteParams ¶
type AccountsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
AccountsDeleteParams holds the parameters for `client.accounts.delete`.
type AccountsDetailParams ¶
type AccountsDetailParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
AccountsDetailParams holds the parameters for `client.accounts.detail`.
type AccountsListParams ¶
type AccountsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
AccountsListParams holds the parameters for `client.accounts.list`.
Every field is optional; pass nil to take the defaults.
type AccountsNamespace ¶
type AccountsNamespace struct {
// Credentials: `client.accounts.credentials`.
Credentials *AccountsCredentialsNamespace
// SyncType: `client.accounts.syncType`.
SyncType *AccountsSyncTypeNamespace
// contains filtered or unexported fields
}
AccountsNamespace is `client.accounts`.
func (*AccountsNamespace) Create ¶
func (n *AccountsNamespace) Create(ctx context.Context, params AccountsCreateParams, opts ...RequestOption) (*CreateAccountResponse, error)
Create: Create an account
Stores encrypted credentials and triggers a first sync. `syncError` is set if the initial sync failed (the account row is still created).
_Requires permission: `accounts:write`._
POST /api/org/{orgId}/accounts
Raises on 400: Bad request
Raises on 402: Payment required — the organization's plan does not include this
func (*AccountsNamespace) Delete ¶
func (n *AccountsNamespace) Delete(ctx context.Context, params AccountsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete an account
_Requires permission: `accounts:delete`._
DELETE /api/org/{orgId}/accounts/{id}
func (*AccountsNamespace) Detail ¶
func (n *AccountsNamespace) Detail(ctx context.Context, params AccountsDetailParams, opts ...RequestOption) (*AccountDetail, error)
Detail: Account metadata + resource type list
_Requires permission: `accounts:read`._
GET /api/org/{orgId}/accounts/{id}/detail
Raises on 404: Not found
func (*AccountsNamespace) List ¶
func (n *AccountsNamespace) List(ctx context.Context, params *AccountsListParams, opts ...RequestOption) ([]Account, error)
List: List accounts in this organization
_Requires permission: `accounts:read`._
GET /api/org/{orgId}/accounts
func (*AccountsNamespace) Plugins ¶
func (n *AccountsNamespace) Plugins(ctx context.Context, params *AccountsPluginsParams, opts ...RequestOption) ([]PluginSummary, error)
Plugins: List installed plugins and their credential fields
_Requires permission: `accounts:read`._
GET /api/org/{orgId}/accounts/plugins
func (*AccountsNamespace) Resources ¶
func (n *AccountsNamespace) Resources(ctx context.Context, params AccountsResourcesParams, opts ...RequestOption) ([]Resource, error)
Resources: List cached resources for an account
_Requires permission: `resources:read`._
GET /api/org/{orgId}/accounts/{id}/resources
func (*AccountsNamespace) Sync ¶
func (n *AccountsNamespace) Sync(ctx context.Context, params AccountsSyncParams, opts ...RequestOption) (*SyncResponse, error)
Sync: Sync all resource types for an account
_Requires permission: `resources:read`._
POST /api/org/{orgId}/accounts/{id}/sync
func (*AccountsNamespace) Update ¶
func (n *AccountsNamespace) Update(ctx context.Context, params AccountsUpdateParams, opts ...RequestOption) (*UpdatedAccount, error)
Update: Update an account (rename and/or change bastion binding)
_Requires permission: `accounts:write`._
PATCH /api/org/{orgId}/accounts/{id}
Raises on 400: Bad request
Raises on 404: Not found
type AccountsPluginsParams ¶
type AccountsPluginsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
AccountsPluginsParams holds the parameters for `client.accounts.plugins`.
Every field is optional; pass nil to take the defaults.
type AccountsResourcesParams ¶
type AccountsResourcesParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// TopLevelOnly: If `true`, only resources with no `parentResourceId` are
// returned.
//
// One of "true", "false".
TopLevelOnly *string
}
AccountsResourcesParams holds the parameters for `client.accounts.resources`.
type AccountsSyncParams ¶
type AccountsSyncParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
AccountsSyncParams holds the parameters for `client.accounts.sync`.
type AccountsSyncTypeCreateParams ¶
type AccountsSyncTypeCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
TypeID ResourceTypeID
}
AccountsSyncTypeCreateParams holds the parameters for `client.accounts.syncType.create`.
type AccountsSyncTypeNamespace ¶
type AccountsSyncTypeNamespace struct {
// contains filtered or unexported fields
}
AccountsSyncTypeNamespace is `client.accounts.syncType`.
func (*AccountsSyncTypeNamespace) Create ¶
func (n *AccountsSyncTypeNamespace) Create(ctx context.Context, params AccountsSyncTypeCreateParams, opts ...RequestOption) ([]SyncedResource, error)
Create: Sync a single resource type and return its resources
_Requires permission: `resources:read`._
POST /api/org/{orgId}/accounts/{id}/sync-type/{typeId}
Raises on 404: Not found
Raises on 500: Server error
type AccountsUpdateParams ¶
type AccountsUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body UpdateAccountRequest
}
AccountsUpdateParams holds the parameters for `client.accounts.update`.
type ActiveTunnel ¶
type ActiveTunnel struct {
LocalPort int64 `json:"localPort"`
SSHHost string `json:"sshHost"`
RemotePort int64 `json:"remotePort"`
}
ActiveTunnel is the `ActiveTunnel` schema.
type AgentSession ¶
type AgentSession struct {
ID string `json:"id"`
Repo string `json:"repo"`
ProjectName string `json:"projectName"`
WorkspaceName string `json:"workspaceName"`
AccountID string `json:"accountId"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
// Tool: One of "codex", "claude-code".
Tool string `json:"tool"`
BranchName string `json:"branchName"`
// Status: One of "pending", "provisioning", "setting-up", "up", "failed",
// "stopped".
Status string `json:"status"`
VMResourceID *string `json:"vmResourceId"`
Logs []string `json:"logs"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
AgentSession is the `AgentSession` schema.
type AgentSettings ¶
type AgentSettings struct {
AccountID string `json:"accountId"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
// Tool: One of "codex", "claude-code".
Tool string `json:"tool"`
Fields map[string]string `json:"fields"`
}
AgentSettings is the `AgentSettings` schema.
The API may send null in its place.
type AgentVMAccount ¶
type AgentVMAccount struct {
AccountID string `json:"accountId"`
AccountName string `json:"accountName"`
PluginID string `json:"pluginId"`
PluginName string `json:"pluginName"`
PluginLogoSvg *string `json:"pluginLogoSvg,omitempty"`
ResourceTypeID string `json:"resourceTypeId"`
ResourceTypeName string `json:"resourceTypeName"`
DefaultUsername string `json:"defaultUsername"`
DefaultFields map[string]string `json:"defaultFields"`
DefaultFieldLabels map[string]string `json:"defaultFieldLabels,omitempty"`
CreateFields []JSONObject `json:"createFields,omitempty"`
HiddenFieldKeys []string `json:"hiddenFieldKeys"`
}
AgentVMAccount is the `AgentVmAccount` schema.
Spec schema: `AgentVmAccount`.
type AgentsAccountsParams ¶
type AgentsAccountsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
AgentsAccountsParams holds the parameters for `client.agents.accounts`.
Every field is optional; pass nil to take the defaults.
type AgentsNamespace ¶
type AgentsNamespace struct {
// Sessions: `client.agents.sessions`.
Sessions *AgentsSessionsNamespace
// Settings: `client.agents.settings`.
Settings *AgentsSettingsNamespace
// contains filtered or unexported fields
}
AgentsNamespace is `client.agents`.
func (*AgentsNamespace) Accounts ¶
func (n *AgentsNamespace) Accounts(ctx context.Context, params *AgentsAccountsParams, opts ...RequestOption) ([]AgentVMAccount, error)
Accounts: List accounts whose plugins can create agent VMs
_Requires permission: `accounts:read`._
GET /api/org/{orgId}/agents/accounts
type AgentsSessionsCreateParams ¶
type AgentsSessionsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CreateAgentSession
}
AgentsSessionsCreateParams holds the parameters for `client.agents.sessions.create`.
type AgentsSessionsDeleteParams ¶
type AgentsSessionsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
AgentsSessionsDeleteParams holds the parameters for `client.agents.sessions.delete`.
type AgentsSessionsDeleteResponse ¶
type AgentsSessionsDeleteResponse struct {
OK bool `json:"ok"`
}
AgentsSessionsDeleteResponse is an object the spec declares inline.
type AgentsSessionsListParams ¶
type AgentsSessionsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
AgentsSessionsListParams holds the parameters for `client.agents.sessions.list`.
Every field is optional; pass nil to take the defaults.
type AgentsSessionsNamespace ¶
type AgentsSessionsNamespace struct {
// contains filtered or unexported fields
}
AgentsSessionsNamespace is `client.agents.sessions`.
func (*AgentsSessionsNamespace) Create ¶
func (n *AgentsSessionsNamespace) Create(ctx context.Context, params AgentsSessionsCreateParams, opts ...RequestOption) (*AgentSession, error)
Create: Create an agent session
_Requires permission: `resources:write`._
POST /api/org/{orgId}/agents/sessions
Raises on 400: Bad request
func (*AgentsSessionsNamespace) Delete ¶
func (n *AgentsSessionsNamespace) Delete(ctx context.Context, params AgentsSessionsDeleteParams, opts ...RequestOption) (*AgentsSessionsDeleteResponse, error)
Delete: Delete an agent session and destroy its VM
_Requires permission: `resources:delete`._
DELETE /api/org/{orgId}/agents/sessions/{id}
Raises on 404: Not found
Raises on 502: The provider refused to delete the VM
func (*AgentsSessionsNamespace) List ¶
func (n *AgentsSessionsNamespace) List(ctx context.Context, params *AgentsSessionsListParams, opts ...RequestOption) ([]AgentSession, error)
List: List agent sessions
_Requires permission: `resources:read`._
GET /api/org/{orgId}/agents/sessions
func (*AgentsSessionsNamespace) Open ¶
func (n *AgentsSessionsNamespace) Open(ctx context.Context, params AgentsSessionsOpenParams, opts ...RequestOption) (*AgentsSessionsOpenResponse, error)
Open: Return the command and working directory for an agent session
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/agents/sessions/{id}/open
Raises on 404: Not found
func (*AgentsSessionsNamespace) Reconcile ¶
func (n *AgentsSessionsNamespace) Reconcile(ctx context.Context, params AgentsSessionsReconcileParams, opts ...RequestOption) (*AgentsSessionsReconcileResponse, error)
Reconcile: Return reconciliation branch metadata
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/agents/sessions/{id}/reconcile
Raises on 404: Not found
type AgentsSessionsOpenParams ¶
type AgentsSessionsOpenParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
AgentsSessionsOpenParams holds the parameters for `client.agents.sessions.open`.
type AgentsSessionsOpenResponse ¶
type AgentsSessionsOpenResponse struct {
Command string `json:"command"`
Cwd string `json:"cwd"`
SSHKeyID *string `json:"sshKeyId,omitempty"`
SSHKeyName *string `json:"sshKeyName,omitempty"`
}
AgentsSessionsOpenResponse is an object the spec declares inline.
type AgentsSessionsReconcileParams ¶
type AgentsSessionsReconcileParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
AgentsSessionsReconcileParams holds the parameters for `client.agents.sessions.reconcile`.
type AgentsSessionsReconcileResponse ¶
type AgentsSessionsReconcileResponse struct {
BranchName string `json:"branchName"`
Message string `json:"message"`
}
AgentsSessionsReconcileResponse is an object the spec declares inline.
type AgentsSettingsGetParams ¶
type AgentsSettingsGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
AgentsSettingsGetParams holds the parameters for `client.agents.settings.get`.
Every field is optional; pass nil to take the defaults.
type AgentsSettingsNamespace ¶
type AgentsSettingsNamespace struct {
// contains filtered or unexported fields
}
AgentsSettingsNamespace is `client.agents.settings`.
func (*AgentsSettingsNamespace) Get ¶
func (n *AgentsSettingsNamespace) Get(ctx context.Context, params *AgentsSettingsGetParams, opts ...RequestOption) (*AgentSettings, error)
Get: Get saved Agents defaults
_Requires permission: `accounts:read`._
GET /api/org/{orgId}/agents/settings
func (*AgentsSettingsNamespace) Update ¶
func (n *AgentsSettingsNamespace) Update(ctx context.Context, params AgentsSettingsUpdateParams, opts ...RequestOption) (*AgentSettings, error)
Update: Save Agents defaults
_Requires permission: `accounts:write`._
PUT /api/org/{orgId}/agents/settings
type AgentsSettingsUpdateParams ¶
type AgentsSettingsUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body *AgentSettings
}
AgentsSettingsUpdateParams holds the parameters for `client.agents.settings.update`.
type ApplyManifestRequest ¶
type ApplyManifestRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
Manifest string `json:"manifest"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
ApplyManifestRequest is the `ApplyManifestRequest` schema.
type ArtifactsListParams ¶
type ArtifactsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body ArtifactsListRequest
}
ArtifactsListParams holds the parameters for `client.artifacts.list`.
type ArtifactsListRequest ¶
type ArtifactsListRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
ResourceTypeID string `json:"resourceTypeId"`
PageToken *string `json:"pageToken,omitempty"`
Prefix *string `json:"prefix,omitempty"`
}
ArtifactsListRequest is the `ArtifactsListRequest` schema.
type ArtifactsNamespace ¶
type ArtifactsNamespace struct {
// contains filtered or unexported fields
}
ArtifactsNamespace is `client.artifacts`.
func (*ArtifactsNamespace) List ¶
func (n *ArtifactsNamespace) List(ctx context.Context, params ArtifactsListParams, opts ...RequestOption) (JSONObject, error)
List: List artifact-registry items for a resource
_Requires permission: `storage:read`._
POST /api/org/{orgId}/artifacts/list
Raises on 400: Bad request
Raises on 404: Not found
Raises on 500: Server error
type AssociationRequest ¶
type AssociationRequest struct {
ConsumerResourceID ResourceID `json:"consumerResourceId"`
ConsumerFieldKey string `json:"consumerFieldKey"`
ProviderResourceID ResourceID `json:"providerResourceId"`
ProviderOutputKey string `json:"providerOutputKey"`
ProviderPluginID string `json:"providerPluginId"`
ProviderResourceTypeID string `json:"providerResourceTypeId"`
ProviderAccountID string `json:"providerAccountId"`
}
AssociationRequest is the `AssociationRequest` schema.
type AssociationsCreateParams ¶
type AssociationsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body AssociationRequest
}
AssociationsCreateParams holds the parameters for `client.associations.create`.
type AssociationsLiteralParams ¶
type AssociationsLiteralParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body LiteralAssociationRequest
}
AssociationsLiteralParams holds the parameters for `client.associations.literal`.
type AssociationsNamespace ¶
type AssociationsNamespace struct {
// contains filtered or unexported fields
}
AssociationsNamespace is `client.associations`.
func (*AssociationsNamespace) Create ¶
func (n *AssociationsNamespace) Create(ctx context.Context, params AssociationsCreateParams, opts ...RequestOption) (*OK, error)
Create: Wire one resource's output into another resource's secret field
_Requires permission: `secrets:write`._
POST /api/org/{orgId}/associations
Raises on 404: Not found
func (*AssociationsNamespace) Literal ¶
func (n *AssociationsNamespace) Literal(ctx context.Context, params AssociationsLiteralParams, opts ...RequestOption) (*OK, error)
Literal: Set a secret field to a literal plaintext value
_Requires permission: `secrets:write`._
POST /api/org/{orgId}/associations/literal
Raises on 404: Not found
type AttachRequest ¶
type AttachRequest struct {
PluginID string `json:"pluginId"`
AccountID string `json:"accountId"`
SourceTypeID string `json:"sourceTypeId"`
SourceResourceID ResourceID `json:"sourceResourceId"`
TargetTypeID string `json:"targetTypeId"`
TargetResourceID ResourceID `json:"targetResourceId"`
}
AttachRequest is the `AttachRequest` schema.
type AuditEntry ¶
type AuditEntry struct {
ID string `json:"id"`
UserID *string `json:"userId"`
APIKeyID *string `json:"apiKeyId"`
Action string `json:"action"`
EntityType string `json:"entityType"`
EntityID string `json:"entityId"`
Metadata JSONObject `json:"metadata"`
IPAddress *string `json:"ipAddress"`
CreatedAt string `json:"createdAt"`
UserName *string `json:"userName"`
UserEmail *string `json:"userEmail"`
}
AuditEntry is the `AuditEntry` schema.
type AuditLogsGetParams ¶
type AuditLogsGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
Page *int64
PageSize *int64
Action *string
EntityType *string
UserID *string
From *string
To *string
}
AuditLogsGetParams holds the parameters for `client.auditLogs.get`.
Every field is optional; pass nil to take the defaults.
type AuditLogsNamespace ¶
type AuditLogsNamespace struct {
// contains filtered or unexported fields
}
AuditLogsNamespace is `client.auditLogs`.
func (*AuditLogsNamespace) Get ¶
func (n *AuditLogsNamespace) Get(ctx context.Context, params *AuditLogsGetParams, opts ...RequestOption) (*AuditResponse, error)
Get: List audit log entries (paginated, filterable)
_Requires permission: `audit:read`._
GET /api/org/{orgId}/audit-logs
type AuditResponse ¶
type AuditResponse struct {
Entries []AuditEntry `json:"entries"`
Total int64 `json:"total"`
}
AuditResponse is the `AuditResponse` schema.
type AuthFactor ¶
type AuthFactor struct {
ID string `json:"id"`
// Type: One of "totp", "sms", "generic_otp".
Type string `json:"type"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
TOTPIssuer *string `json:"totpIssuer"`
TOTPUser *string `json:"totpUser"`
}
AuthFactor is the `AuthFactor` schema.
type AuthNamespace ¶
type AuthNamespace struct {
// contains filtered or unexported fields
}
AuthNamespace is `client.auth`.
func (*AuthNamespace) Me ¶
func (n *AuthNamespace) Me(ctx context.Context, opts ...RequestOption) (*Session, error)
Me: Current session + onboarding status
GET /api/auth/me
Raises on 401: Unauthenticated
func (*AuthNamespace) Orgs ¶
func (n *AuthNamespace) Orgs(ctx context.Context, opts ...RequestOption) ([]OrgMembership, error)
Orgs: Organizations the current user belongs to
GET /api/auth/orgs
Raises on 401: Unauthenticated
type Bastion ¶
type Bastion struct {
ID string `json:"id"`
Name string `json:"name"`
TokenPrefix string `json:"tokenPrefix"`
AgentVersion *string `json:"agentVersion"`
LastSeenAt *string `json:"lastSeenAt"`
Status BastionStatus `json:"status"`
RevokedAt *string `json:"revokedAt"`
CreatedAt string `json:"createdAt"`
CreatedByUserID string `json:"createdByUserId"`
Connected bool `json:"connected"`
AccountCount int64 `json:"accountCount"`
}
Bastion is the `Bastion` schema.
type BastionStatus ¶
type BastionStatus = string
BastionStatus is the `BastionStatus` schema.
const ( BastionStatusPending BastionStatus = "pending" BastionStatusActive BastionStatus = "active" BastionStatusRevoked BastionStatus = "revoked" )
The values BastionStatus takes.
type BastionsCreateParams ¶
type BastionsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CreateBastionRequest
}
BastionsCreateParams holds the parameters for `client.bastions.create`.
type BastionsDeleteParams ¶
type BastionsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
BastionsDeleteParams holds the parameters for `client.bastions.delete`.
type BastionsListParams ¶
type BastionsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
BastionsListParams holds the parameters for `client.bastions.list`.
Every field is optional; pass nil to take the defaults.
type BastionsNamespace ¶
type BastionsNamespace struct {
// contains filtered or unexported fields
}
BastionsNamespace is `client.bastions`.
func (*BastionsNamespace) Create ¶
func (n *BastionsNamespace) Create(ctx context.Context, params BastionsCreateParams, opts ...RequestOption) (*CreateBastionResponse, error)
Create: Register a new bastion (returns the enrollment token once)
_Requires permission: `bastions:write`._
POST /api/org/{orgId}/bastions
Raises on 400: Bad request
func (*BastionsNamespace) Delete ¶
func (n *BastionsNamespace) Delete(ctx context.Context, params BastionsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Revoke a bastion — accounts referencing it have their bastion binding cleared
_Requires permission: `bastions:write`._
DELETE /api/org/{orgId}/bastions/{id}
Raises on 404: Not found
func (*BastionsNamespace) List ¶
func (n *BastionsNamespace) List(ctx context.Context, params *BastionsListParams, opts ...RequestOption) ([]Bastion, error)
List: List bastion agents registered to this org
_Requires permission: `bastions:read`._
GET /api/org/{orgId}/bastions
type BillingCheckoutParams ¶
type BillingCheckoutParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
BillingCheckoutParams holds the parameters for `client.billing.checkout`.
Every field is optional; pass nil to take the defaults.
type BillingNamespace ¶
type BillingNamespace struct {
// contains filtered or unexported fields
}
BillingNamespace is `client.billing`.
func (*BillingNamespace) Checkout ¶
func (n *BillingNamespace) Checkout(ctx context.Context, params *BillingCheckoutParams, opts ...RequestOption) (*StripeRedirectURL, error)
Checkout: Start a Stripe Checkout session
Rejected with 400 for complimentary organizations — they are never billed.
_Requires permission: `billing:write`._
POST /api/org/{orgId}/billing/checkout
Raises on 400: Bad request
Raises on 500: Server error
func (*BillingNamespace) Portal ¶
func (n *BillingNamespace) Portal(ctx context.Context, params *BillingPortalParams, opts ...RequestOption) (*StripeRedirectURL, error)
Portal: Get a Stripe customer portal URL
_Requires permission: `billing:write`._
POST /api/org/{orgId}/billing/portal
Raises on 404: Not found
func (*BillingNamespace) Status ¶
func (n *BillingNamespace) Status(ctx context.Context, params *BillingStatusParams, opts ...RequestOption) (*BillingStatus, error)
Status: Get the org's billing status (complimentary flag + subscription or `null`)
_Requires permission: `billing:read`._
GET /api/org/{orgId}/billing/status
type BillingPortalParams ¶
type BillingPortalParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
BillingPortalParams holds the parameters for `client.billing.portal`.
Every field is optional; pass nil to take the defaults.
type BillingStatus ¶
type BillingStatus struct {
// Complimentary: Platform-granted complimentary access: all paid perks,
// uncapped AI chat, never billed.
Complimentary bool `json:"complimentary"`
Subscription *Subscription `json:"subscription"`
}
BillingStatus is the `BillingStatus` schema.
type BillingStatusParams ¶
type BillingStatusParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
BillingStatusParams holds the parameters for `client.billing.status`.
Every field is optional; pass nil to take the defaults.
type BudgetAlertEvent ¶
type BudgetAlertEvent struct {
ID string `json:"id"`
Month string `json:"month"`
// ThresholdType: One of "actual", "forecast".
ThresholdType string `json:"thresholdType"`
ThresholdPercent int64 `json:"thresholdPercent"`
ActualAmountCents int64 `json:"actualAmountCents"`
ForecastAmountCents *int64 `json:"forecastAmountCents"`
TriggeredAt string `json:"triggeredAt"`
}
BudgetAlertEvent is the `BudgetAlertEvent` schema.
type BudgetCostFilter ¶
type BudgetCostFilter struct {
// Dimension: One of "provider", "account", "service", "region", "resource",
// "tag".
Dimension string `json:"dimension"`
// Op: One of "in", "not_in".
Op string `json:"op"`
Values []string `json:"values"`
TagKey *string `json:"tagKey,omitempty"`
}
BudgetCostFilter is the `BudgetCostFilter` schema.
type BudgetFull ¶
type BudgetFull struct {
ID string `json:"id"`
OrganizationID string `json:"organizationId"`
Name string `json:"name"`
AmountCents int64 `json:"amountCents"`
Currency string `json:"currency"`
Filters []BudgetCostFilter `json:"filters"`
Thresholds []BudgetThreshold `json:"thresholds"`
CreatedByUserID *string `json:"createdByUserId"`
DeletedAt *string `json:"deletedAt"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
BudgetFull is the `BudgetFull` schema.
type BudgetInput ¶
type BudgetInput struct {
Name string `json:"name"`
AmountCents int64 `json:"amountCents"`
Currency *string `json:"currency,omitempty"`
Filters []BudgetCostFilter `json:"filters,omitempty"`
Thresholds []BudgetThreshold `json:"thresholds"`
}
BudgetInput is the `BudgetInput` schema.
type BudgetThreshold ¶
type BudgetThreshold struct {
// Type: One of "actual", "forecast".
Type string `json:"type"`
Percent int64 `json:"percent"`
}
BudgetThreshold is the `BudgetThreshold` schema.
type BudgetWithStatus ¶
type BudgetWithStatus struct {
ID string `json:"id"`
Name string `json:"name"`
AmountCents int64 `json:"amountCents"`
Currency string `json:"currency"`
Filters []BudgetCostFilter `json:"filters"`
Thresholds []BudgetThreshold `json:"thresholds"`
Month string `json:"month"`
ActualCents int64 `json:"actualCents"`
ForecastCents *int64 `json:"forecastCents"`
CurrentMonthEvents []BudgetWithStatusCurrentMonthEvents `json:"currentMonthEvents"`
Placements []BudgetWithStatusPlacements `json:"placements"`
}
BudgetWithStatus is the `BudgetWithStatus` schema.
type BudgetWithStatusCurrentMonthEvents ¶
type BudgetWithStatusCurrentMonthEvents struct {
ID string `json:"id"`
// ThresholdType: One of "actual", "forecast".
ThresholdType string `json:"thresholdType"`
ThresholdPercent int64 `json:"thresholdPercent"`
TriggeredAt string `json:"triggeredAt"`
}
BudgetWithStatusCurrentMonthEvents is an object the spec declares inline.
type BudgetWithStatusPlacements ¶ added in v0.5.0
type BudgetWithStatusPlacements struct {
WidgetID string `json:"widgetId"`
DashboardID string `json:"dashboardId"`
DashboardName string `json:"dashboardName"`
}
BudgetWithStatusPlacements is an object the spec declares inline.
type BudgetsCreateParams ¶
type BudgetsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body BudgetInput
}
BudgetsCreateParams holds the parameters for `client.budgets.create`.
type BudgetsDeleteParams ¶
type BudgetsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
BudgetsDeleteParams holds the parameters for `client.budgets.delete`.
type BudgetsEventsParams ¶
type BudgetsEventsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
BudgetsEventsParams holds the parameters for `client.budgets.events`.
type BudgetsGetParams ¶
type BudgetsGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
BudgetsGetParams holds the parameters for `client.budgets.get`.
type BudgetsListParams ¶
type BudgetsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
BudgetsListParams holds the parameters for `client.budgets.list`.
Every field is optional; pass nil to take the defaults.
type BudgetsNamespace ¶
type BudgetsNamespace struct {
// contains filtered or unexported fields
}
BudgetsNamespace is `client.budgets`.
func (*BudgetsNamespace) Create ¶
func (n *BudgetsNamespace) Create(ctx context.Context, params BudgetsCreateParams, opts ...RequestOption) (*BudgetFull, error)
Create: Create a budget
POST /api/org/{orgId}/budgets
Raises on 400: Bad request
func (*BudgetsNamespace) Delete ¶
func (n *BudgetsNamespace) Delete(ctx context.Context, params BudgetsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete a budget
DELETE /api/org/{orgId}/budgets/{id}
Raises on 404: Not found
func (*BudgetsNamespace) Events ¶
func (n *BudgetsNamespace) Events(ctx context.Context, params BudgetsEventsParams, opts ...RequestOption) ([]BudgetAlertEvent, error)
Events: Alert event history for a budget
GET /api/org/{orgId}/budgets/{id}/events
Raises on 404: Not found
func (*BudgetsNamespace) Get ¶
func (n *BudgetsNamespace) Get(ctx context.Context, params BudgetsGetParams, opts ...RequestOption) (*BudgetFull, error)
Get: Get a budget with current-month status
GET /api/org/{orgId}/budgets/{id}
Raises on 404: Not found
func (*BudgetsNamespace) List ¶
func (n *BudgetsNamespace) List(ctx context.Context, params *BudgetsListParams, opts ...RequestOption) ([]BudgetWithStatus, error)
List: List budgets with current-month actuals and forecasts
GET /api/org/{orgId}/budgets
func (*BudgetsNamespace) Update ¶
func (n *BudgetsNamespace) Update(ctx context.Context, params BudgetsUpdateParams, opts ...RequestOption) (*BudgetFull, error)
Update: Update a budget
PUT /api/org/{orgId}/budgets/{id}
Raises on 400: Bad request
Raises on 404: Not found
type BudgetsUpdateParams ¶
type BudgetsUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body BudgetInput
}
BudgetsUpdateParams holds the parameters for `client.budgets.update`.
type ChildResourceRef ¶
type ChildResourceRef struct {
ID ResourceID `json:"id"`
DisplayName string `json:"displayName"`
ResourceTypeID string `json:"resourceTypeId"`
PluginID string `json:"pluginId"`
AccountID string `json:"accountId"`
Status *StatusDot `json:"status,omitempty"`
Fields JSONObject `json:"fields,omitempty"`
}
ChildResourceRef is the `ChildResourceRef` schema.
type ChildTypeRef ¶
type ChildTypeRef struct {
ID string `json:"id"`
DisplayName string `json:"displayName"`
PluralDisplayName *string `json:"pluralDisplayName,omitempty"`
SupportsCreate bool `json:"supportsCreate"`
Fields []JSONObject `json:"fields,omitempty"`
}
ChildTypeRef is the `ChildTypeRef` schema.
type ClientOption ¶
type ClientOption func(*clientConfig)
ClientOption configures a client at construction time.
func WithAPIKey ¶
func WithAPIKey(apiKey string) ClientOption
WithAPIKey sets the API key or access token sent as "Authorization: Bearer". Leave it unset only if you are supplying that header yourself with WithHeader.
func WithBaseURL ¶
func WithBaseURL(baseURL string) ClientOption
WithBaseURL points the client at a different deployment. Trailing slashes are trimmed, so both "https://host" and "https://host/" behave the same.
func WithHTTPClient ¶
func WithHTTPClient(httpClient *http.Client) ClientOption
WithHTTPClient swaps the *http.Client used for every request — for proxies, custom transports, or a client with a timeout. Defaults to http.DefaultClient.
func WithHeader ¶
func WithHeader(name, value string) ClientOption
WithHeader sets a header on every request. Call it more than once for more than one header; a per-call WithRequestHeader wins over it.
func WithOrgID ¶
func WithOrgID(orgID string) ClientOption
WithOrgID sets the orgId every scoped call falls back to, so it can be left out of the parameters. A call that passes its own wins; a call that has neither returns ErrMissingPathParam.
func WithUserAgent ¶
func WithUserAgent(userAgent string) ClientOption
WithUserAgent overrides the default "infrawrench-go/<version>" User-Agent.
type ConnectEnvDeployParams ¶
type ConnectEnvDeployParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body ConnectEnvDeployRequest
}
ConnectEnvDeployParams holds the parameters for `client.connect.envDeploy`.
type ConnectEnvDeployRequest ¶
type ConnectEnvDeployRequest struct {
SourceAccountID string `json:"sourceAccountId"`
SourceResourceID ResourceID `json:"sourceResourceId"`
SourcePluginID string `json:"sourcePluginId"`
SourceResourceTypeID string `json:"sourceResourceTypeId"`
SourceExternalID *string `json:"sourceExternalId,omitempty"`
TargetSSHHost string `json:"targetSshHost"`
SSHKeyID string `json:"sshKeyId"`
SSHUsername string `json:"sshUsername"`
TemplateID string `json:"templateId"`
KeyOverrides map[string]string `json:"keyOverrides"`
// Format: One of "dotenv", "profile".
Format string `json:"format"`
FilePath string `json:"filePath"`
Append bool `json:"append"`
}
ConnectEnvDeployRequest is the `ConnectEnvDeployRequest` schema.
type ConnectNamespace ¶
type ConnectNamespace struct {
// contains filtered or unexported fields
}
ConnectNamespace is `client.connect`.
func (*ConnectNamespace) EnvDeploy ¶
func (n *ConnectNamespace) EnvDeploy(ctx context.Context, params ConnectEnvDeployParams, opts ...RequestOption) (*OK, error)
EnvDeploy: Deploy env vars from a source resource to an SSH target
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/connect/env-deploy
Raises on 400: Bad request
Raises on 404: Not found
func (*ConnectNamespace) SecretExport ¶
func (n *ConnectNamespace) SecretExport(ctx context.Context, params ConnectSecretExportParams, opts ...RequestOption) (*OK, error)
SecretExport: Materialize source outputs as a secret in the target (e.g. K8s)
_Requires permission: `resources:write`._
POST /api/org/{orgId}/connect/secret-export
Raises on 400: Bad request
Raises on 404: Not found
func (*ConnectNamespace) Templates ¶
func (n *ConnectNamespace) Templates(ctx context.Context, params ConnectTemplatesParams, opts ...RequestOption) (*ConnectTemplatesResponse, error)
Templates: List secret-export templates and target capabilities
_Requires permission: `resources:read`._
POST /api/org/{orgId}/connect/templates
Raises on 404: Not found
type ConnectSecretExportParams ¶
type ConnectSecretExportParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body ConnectSecretExportRequest
}
ConnectSecretExportParams holds the parameters for `client.connect.secretExport`.
type ConnectSecretExportRequest ¶
type ConnectSecretExportRequest struct {
SourceAccountID string `json:"sourceAccountId"`
SourceResourceID ResourceID `json:"sourceResourceId"`
SourcePluginID string `json:"sourcePluginId"`
SourceResourceTypeID string `json:"sourceResourceTypeId"`
SourceExternalID *string `json:"sourceExternalId,omitempty"`
TargetAccountID string `json:"targetAccountId"`
TargetPluginID string `json:"targetPluginId"`
TemplateID string `json:"templateId"`
Namespace string `json:"namespace"`
SecretName string `json:"secretName"`
KeyOverrides map[string]string `json:"keyOverrides"`
}
ConnectSecretExportRequest is the `ConnectSecretExportRequest` schema.
type ConnectTemplatesParams ¶
type ConnectTemplatesParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body ConnectTemplatesRequest
}
ConnectTemplatesParams holds the parameters for `client.connect.templates`.
type ConnectTemplatesRequest ¶
type ConnectTemplatesRequest struct {
SourcePluginID string `json:"sourcePluginId"`
SourceResourceTypeID string `json:"sourceResourceTypeId"`
TargetAccountID string `json:"targetAccountId"`
TargetPluginID string `json:"targetPluginId"`
}
ConnectTemplatesRequest is the `ConnectTemplatesRequest` schema.
type ConnectTemplatesResponse ¶
type ConnectTemplatesResponse struct {
Templates []SecretExportTemplate `json:"templates"`
EffectiveResourceTypeID string `json:"effectiveResourceTypeId"`
SupportsSecretImport bool `json:"supportsSecretImport"`
Namespaces []string `json:"namespaces"`
}
ConnectTemplatesResponse is the `ConnectTemplatesResponse` schema.
type CostAccountStatus ¶
type CostAccountStatus struct {
AccountID string `json:"accountId"`
PluginID string `json:"pluginId"`
DisplayName string `json:"displayName"`
SupportsCosts bool `json:"supportsCosts"`
PeriodNative bool `json:"periodNative"`
Dimensions []string `json:"dimensions"`
CostLastPolledAt *string `json:"costLastPolledAt"`
CostBackfilledAt *string `json:"costBackfilledAt"`
CostPollFailureCount int64 `json:"costPollFailureCount"`
// CostPollError: Last cost-collection failure for this account, cleared on
// the next success. `helpLink` points at the provider page that fixes a
// setup problem when the plugin can identify one (e.g. GCP's billing export
// console).
CostPollError *CostAccountStatusCostPollError `json:"costPollError"`
Coverage *CostAccountStatusCoverage `json:"coverage"`
}
CostAccountStatus is the `CostAccountStatus` schema.
type CostAccountStatusCostPollError ¶
type CostAccountStatusCostPollError struct {
Message string `json:"message"`
HelpLink *CostAccountStatusCostPollErrorHelpLink `json:"helpLink"`
}
CostAccountStatusCostPollError is an object the spec declares inline.
type CostAccountStatusCostPollErrorHelpLink ¶
type CostAccountStatusCostPollErrorHelpLink struct {
Label string `json:"label"`
URL string `json:"url"`
}
CostAccountStatusCostPollErrorHelpLink is an object the spec declares inline.
type CostAccountStatusCoverage ¶
type CostAccountStatusCoverage struct {
FirstDay string `json:"firstDay"`
LastDay string `json:"lastDay"`
}
CostAccountStatusCoverage is an object the spec declares inline.
type CostDimension ¶
type CostDimension = string
CostDimension is the `CostDimension` schema.
const ( CostDimensionProvider CostDimension = "provider" CostDimensionAccount CostDimension = "account" CostDimensionService CostDimension = "service" CostDimensionRegion CostDimension = "region" CostDimensionResource CostDimension = "resource" CostDimensionTag CostDimension = "tag" )
The values CostDimension takes.
type CostDimensionValues ¶
type CostDimensionValues struct {
Values []any `json:"values"`
}
CostDimensionValues is the `CostDimensionValues` schema.
type CostFilter ¶
type CostFilter struct {
Dimension CostDimension `json:"dimension"`
// Op: One of "in", "not_in".
Op string `json:"op"`
Values []string `json:"values"`
TagKey *string `json:"tagKey,omitempty"`
}
CostFilter is the `CostFilter` schema.
type CostPushRequest ¶ added in v0.6.0
type CostPushRequest struct {
// Source: Stable slug naming the system that owns these rows: letters,
// digits, `.`, `_` and `-`. It groups the rows under an `External` provider
// and an `external:<source>` account, and re-pushing the same source over
// the same days restates only its own rows.
Source string `json:"source"`
Rows []PushedCostRow `json:"rows"`
}
CostPushRequest is the `CostPushRequest` schema.
type CostPushResponse ¶ added in v0.6.0
type CostPushResponse struct {
Written int64 `json:"written"`
}
CostPushResponse is the `CostPushResponse` schema.
type CostQueryRequest ¶
type CostQueryRequest struct {
From string `json:"from"`
To string `json:"to"`
// Binning: One of "daily", "weekly", "monthly", "cumulative".
Binning string `json:"binning"`
// GroupBy: One of "none", "provider", "account", "service", "region",
// "resource", "tag".
GroupBy string `json:"groupBy"`
GroupByTagKey *string `json:"groupByTagKey,omitempty"`
Filters []CostFilter `json:"filters,omitempty"`
TopN *int64 `json:"topN,omitempty"`
ComparePreviousPeriod *bool `json:"comparePreviousPeriod,omitempty"`
Forecast *bool `json:"forecast,omitempty"`
}
CostQueryRequest is the `CostQueryRequest` schema.
type CostQueryResponse ¶
type CostQueryResponse struct {
Series []CostQuerySeries `json:"series"`
Comparison []CostQuerySeries `json:"comparison,omitempty"`
Forecast []CostSeriesPoint `json:"forecast,omitempty"`
Currencies []string `json:"currencies"`
Totals map[string]float64 `json:"totals"`
PreviousTotals map[string]float64 `json:"previousTotals,omitempty"`
}
CostQueryResponse is the `CostQueryResponse` schema.
type CostQuerySeries ¶
type CostQuerySeries struct {
Key string `json:"key"`
Label string `json:"label"`
Currency string `json:"currency"`
Points []CostSeriesPoint `json:"points"`
}
CostQuerySeries is the `CostQuerySeries` schema.
type CostSeriesPoint ¶
CostSeriesPoint is the `CostSeriesPoint` schema.
type CostsDimensionsParams ¶
type CostsDimensionsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Dimension: One of "provider", "account", "service", "region", "resource",
// "tag", "tag-keys".
Dimension string
TagKey *string
}
CostsDimensionsParams holds the parameters for `client.costs.dimensions`.
type CostsNamespace ¶
type CostsNamespace struct {
// contains filtered or unexported fields
}
CostsNamespace is `client.costs`.
func (*CostsNamespace) Dimensions ¶
func (n *CostsNamespace) Dimensions(ctx context.Context, params CostsDimensionsParams, opts ...RequestOption) (*CostDimensionValues, error)
Dimensions: List distinct values for a cost dimension
Feeds the filter and group-by pickers. Pass dimension=tag-keys for tag keys; dimension=tag requires tagKey.
_Requires permission: `costs:read`._
GET /api/org/{orgId}/costs/dimensions
Raises on 400: Bad request
func (*CostsNamespace) Query ¶
func (n *CostsNamespace) Query(ctx context.Context, params CostsQueryParams, opts ...RequestOption) (*CostQueryResponse, error)
Query: Query aggregated cost series
Aggregates collected provider spend into per-bucket, per-group series for cost graphs. Currencies are never merged; mixed-currency orgs get one series per currency. Optionally returns a previous-period comparison and a trend forecast.
_Requires permission: `costs:read`._
POST /api/org/{orgId}/costs/query
Raises on 400: Bad request
func (*CostsNamespace) Rows ¶ added in v0.6.0
func (n *CostsNamespace) Rows(ctx context.Context, params CostsRowsParams, opts ...RequestOption) (*CostPushResponse, error)
Rows: Push cost rows from your own systems
Reports spend Infrawrench has no provider plugin for — a parsed SaaS invoice, an internal chargeback, a colo bill — into the same store the provider collectors write to, so it appears in cost graphs, dimension filters, and budgets alongside everything else.
Rows are grouped under a caller-chosen `source`. Writes are idempotent per `(source, day, service, region, resourceId, tags, currency)`: pushing the same day again restates that day rather than adding to it, so a nightly job can safely re-push a trailing window. Rows pushed under a source can never overwrite rows a provider collector wrote.
The whole batch is validated before anything is stored, so a 400 means nothing was written.
_Requires permission: `costs:write`._
POST /api/org/{orgId}/costs/rows
Raises on 400: Bad request
func (*CostsNamespace) Status ¶
func (n *CostsNamespace) Status(ctx context.Context, params *CostsStatusParams, opts ...RequestOption) (*CostsStatusResponse, error)
Status: Per-account cost collection status
Which accounts support cost collection, whether their history backfill has completed, and the ingested date coverage.
_Requires permission: `costs:read`._
GET /api/org/{orgId}/costs/status
type CostsQueryParams ¶
type CostsQueryParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CostQueryRequest
}
CostsQueryParams holds the parameters for `client.costs.query`.
type CostsRowsParams ¶ added in v0.6.0
type CostsRowsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CostPushRequest
}
CostsRowsParams holds the parameters for `client.costs.rows`.
type CostsStatusParams ¶
type CostsStatusParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
CostsStatusParams holds the parameters for `client.costs.status`.
Every field is optional; pass nil to take the defaults.
type CostsStatusResponse ¶
type CostsStatusResponse struct {
Accounts []CostAccountStatus `json:"accounts"`
}
CostsStatusResponse is an object the spec declares inline.
type CreateAPIKeyRequest ¶
type CreateAPIKeyRequest struct {
Name string `json:"name"`
Scopes []Permission `json:"scopes"`
ExpiresAt *string `json:"expiresAt,omitempty"`
}
CreateAPIKeyRequest is the `CreateApiKeyRequest` schema.
Spec schema: `CreateApiKeyRequest`.
type CreateAccountRequest ¶
type CreateAccountRequest struct {
PluginID string `json:"pluginId"`
DisplayName string `json:"displayName"`
Credentials map[string]string `json:"credentials"`
// BastionID: Optional bastion id to route this account's cloud API traffic
// through.
BastionID *string `json:"bastionId,omitempty"`
}
CreateAccountRequest is the `CreateAccountRequest` schema.
type CreateAccountResponse ¶
type CreateAccountResponse struct {
ID string `json:"id"`
SyncError *CreateAccountResponseSyncError `json:"syncError,omitempty"`
}
CreateAccountResponse is the `CreateAccountResponse` schema.
type CreateAccountResponseSyncError ¶
type CreateAccountResponseSyncError struct {
Message string `json:"message"`
}
CreateAccountResponseSyncError is an object the spec declares inline.
type CreateAgentSession ¶
type CreateAgentSession struct {
Repo string `json:"repo"`
ProjectName *string `json:"projectName,omitempty"`
WorkspaceName *string `json:"workspaceName,omitempty"`
Settings *AgentSettings `json:"settings"`
}
CreateAgentSession is the `CreateAgentSession` schema.
type CreateBastionRequest ¶
type CreateBastionRequest struct {
Name string `json:"name"`
}
CreateBastionRequest is the `CreateBastionRequest` schema.
type CreateBastionResponse ¶
type CreateBastionResponse struct {
ID string `json:"id"`
Name string `json:"name"`
TokenPrefix string `json:"tokenPrefix"`
// Token: Enrollment token in the form `iwb_<random>`. Pass to the agent
// container as `BASTION_TOKEN`. Returned once — not recoverable later.
Token string `json:"token"`
}
CreateBastionResponse is the `CreateBastionResponse` schema.
type CreateConfigRequest ¶
type CreateConfigRequest struct {
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
PluginID *string `json:"pluginId,omitempty"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
CreateConfigRequest is the `CreateConfigRequest` schema.
type CreateCostEstimateRequest ¶
type CreateCostEstimateRequest struct {
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
Fields map[string]string `json:"fields"`
PluginID *string `json:"pluginId,omitempty"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
CreateCostEstimateRequest is the `CreateCostEstimateRequest` schema.
type CreateOrgRequest ¶
type CreateOrgRequest struct {
DisplayName string `json:"displayName"`
}
CreateOrgRequest is the `CreateOrgRequest` schema.
type CreatePricingRequest ¶
type CreatePricingRequest struct {
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
RegionID *string `json:"regionId,omitempty"`
Sizes []CreatePricingRequestSizes `json:"sizes"`
PluginID *string `json:"pluginId,omitempty"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
CreatePricingRequest is the `CreatePricingRequest` schema.
type CreatePricingRequestSizes ¶
type CreatePricingRequestSizes struct {
ID string `json:"id"`
Vcpus float64 `json:"vcpus"`
MemoryMb float64 `json:"memoryMb"`
}
CreatePricingRequestSizes is an object the spec declares inline.
type CreateResourceRequest ¶
type CreateResourceRequest struct {
AccountID string `json:"accountId"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
Fields map[string]string `json:"fields"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
CreateResourceRequest is the `CreateResourceRequest` schema.
type CreateResourceResponse ¶
type CreateResourceResponse struct {
ID ResourceID `json:"id"`
DisplayName string `json:"displayName"`
Warnings []string `json:"warnings,omitempty"`
}
CreateResourceResponse is the `CreateResourceResponse` schema.
type CreateWidgetRequest ¶
type CreateWidgetRequest struct {
DashboardID string `json:"dashboardId"`
Kind DashboardWidgetKind `json:"kind"`
Title *string `json:"title,omitempty"`
Config JSONObject `json:"config"`
}
CreateWidgetRequest is the `CreateWidgetRequest` schema.
type CreatedAPIKey ¶
type CreatedAPIKey struct {
ID string `json:"id"`
// Key: Plaintext key. Returned once. Format: `iwk_<base64url>`.
Key string `json:"key"`
}
CreatedAPIKey is the `CreatedApiKey` schema.
Spec schema: `CreatedApiKey`.
type CredentialExport ¶
type CredentialExport struct {
Content string `json:"content"`
Filename string `json:"filename"`
MimeType string `json:"mimeType"`
Fields []CredentialExportFields `json:"fields,omitempty"`
Warning *string `json:"warning,omitempty"`
}
CredentialExport is the `CredentialExport` schema.
type CredentialExportFields ¶ added in v0.7.0
type CredentialExportFields struct {
Label string `json:"label"`
Value string `json:"value"`
Sensitive *bool `json:"sensitive,omitempty"`
Hint *string `json:"hint,omitempty"`
}
CredentialExportFields is an object the spec declares inline.
type CredentialField ¶
type CredentialField struct {
Key string `json:"key"`
Label string `json:"label"`
Description *string `json:"description,omitempty"`
Placeholder *string `json:"placeholder,omitempty"`
Sensitive *bool `json:"sensitive,omitempty"`
Multiline *bool `json:"multiline,omitempty"`
DefaultValue *string `json:"defaultValue,omitempty"`
Regions []CredentialFieldRegion `json:"regions,omitempty"`
HelpLink *CredentialFieldHelpLink `json:"helpLink,omitempty"`
}
CredentialField is the `CredentialField` schema.
type CredentialFieldHelpLink ¶
CredentialFieldHelpLink is an object the spec declares inline.
type CredentialFieldRegion ¶
type CredentialFieldRegion struct {
ID string `json:"id"`
Label string `json:"label"`
Location *string `json:"location,omitempty"`
Flag *string `json:"flag,omitempty"`
}
CredentialFieldRegion is the `CredentialFieldRegion` schema.
type CredentialFormat ¶
type CredentialFormat struct {
// ID: Passed back as `formatId` on export.
ID string `json:"id"`
Label string `json:"label"`
Description *string `json:"description,omitempty"`
// MediaType: How the credential body should be presented. `binary-base64`
// means `content` is base64.
//
// One of "json", "text", "ini", "binary-base64".
MediaType string `json:"mediaType"`
// FilenameTemplate: Suggested filename; `{resource}` is replaced with the
// resource's external id.
FilenameTemplate *string `json:"filenameTemplate,omitempty"`
}
CredentialFormat is the `CredentialFormat` schema.
type CustomGraphCheckRequest ¶ added in v0.16.0
type CustomGraphCheckRequest struct {
Source string `json:"source"`
}
CustomGraphCheckRequest is the `CustomGraphCheckRequest` schema.
type CustomGraphCheckResult ¶ added in v0.16.0
type CustomGraphCheckResult struct {
Diagnostics []CustomGraphCheckResultDiagnostics `json:"diagnostics"`
HasErrors bool `json:"hasErrors"`
Degraded bool `json:"degraded"`
}
CustomGraphCheckResult is the `CustomGraphCheckResult` schema.
type CustomGraphCheckResultDiagnostics ¶ added in v0.16.0
type CustomGraphCheckResultDiagnostics struct {
Line int64 `json:"line"`
Column int64 `json:"column"`
Code int64 `json:"code"`
Category string `json:"category"`
Message string `json:"message"`
}
CustomGraphCheckResultDiagnostics is an object the spec declares inline.
type CustomGraphFull ¶ added in v0.16.0
type CustomGraphFull struct {
ID string `json:"id"`
OrganizationID string `json:"organizationId"`
Name string `json:"name"`
Description *string `json:"description"`
Source string `json:"source"`
CreatedByUserID *string `json:"createdByUserId"`
SourceAuthorUserID *string `json:"sourceAuthorUserId"`
DeletedAt *string `json:"deletedAt"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
CustomGraphFull is the `CustomGraphFull` schema.
type CustomGraphInput ¶ added in v0.16.0
type CustomGraphInput struct {
Name string `json:"name"`
Description *string `json:"description,omitempty"`
Source *string `json:"source,omitempty"`
}
CustomGraphInput is the `CustomGraphInput` schema.
type CustomGraphRenderRequest ¶ added in v0.16.0
type CustomGraphRenderRequest struct {
Controls map[string]any `json:"controls,omitempty"`
Button *string `json:"button,omitempty"`
// Trigger: One of "manual", "refresh", "interaction".
Trigger *string `json:"trigger,omitempty"`
}
CustomGraphRenderRequest is the `CustomGraphRenderRequest` schema.
type CustomGraphRenderResult ¶ added in v0.16.0
type CustomGraphRenderResult struct {
OK bool `json:"ok"`
Spec JSONObject `json:"spec"`
Error *string `json:"error"`
Logs []CustomGraphRenderResultLogs `json:"logs"`
RenderedAt string `json:"renderedAt"`
DurationMs int64 `json:"durationMs"`
}
CustomGraphRenderResult is the `CustomGraphRenderResult` schema.
type CustomGraphRenderResultLogs ¶ added in v0.16.0
type CustomGraphRenderResultLogs struct {
// Level: One of "info", "warn", "error".
Level string `json:"level"`
Message string `json:"message"`
}
CustomGraphRenderResultLogs is an object the spec declares inline.
type CustomGraphSummary ¶ added in v0.16.0
type CustomGraphSummary struct {
ID string `json:"id"`
Name string `json:"name"`
Description *string `json:"description"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
CustomGraphSummary is the `CustomGraphSummary` schema.
type CustomGraphUpdate ¶ added in v0.16.0
type CustomGraphUpdate struct {
Name *string `json:"name,omitempty"`
Description *string `json:"description,omitempty"`
Source *string `json:"source,omitempty"`
}
CustomGraphUpdate is the `CustomGraphUpdate` schema.
type CustomGraphsCheckParams ¶ added in v0.16.0
type CustomGraphsCheckParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CustomGraphCheckRequest
}
CustomGraphsCheckParams holds the parameters for `client.customGraphs.check`.
type CustomGraphsCreateParams ¶ added in v0.16.0
type CustomGraphsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CustomGraphInput
}
CustomGraphsCreateParams holds the parameters for `client.customGraphs.create`.
type CustomGraphsDeleteParams ¶ added in v0.16.0
type CustomGraphsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
CustomGraphsDeleteParams holds the parameters for `client.customGraphs.delete`.
type CustomGraphsGetParams ¶ added in v0.16.0
type CustomGraphsGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
CustomGraphsGetParams holds the parameters for `client.customGraphs.get`.
type CustomGraphsListParams ¶ added in v0.16.0
type CustomGraphsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
CustomGraphsListParams holds the parameters for `client.customGraphs.list`.
Every field is optional; pass nil to take the defaults.
type CustomGraphsNamespace ¶ added in v0.16.0
type CustomGraphsNamespace struct {
// contains filtered or unexported fields
}
CustomGraphsNamespace is `client.customGraphs`.
func (*CustomGraphsNamespace) Check ¶ added in v0.16.0
func (n *CustomGraphsNamespace) Check(ctx context.Context, params CustomGraphsCheckParams, opts ...RequestOption) (*CustomGraphCheckResult, error)
Check: Type-check custom-graph source without saving it
_Requires permission: `dashboards:read`._
POST /api/org/{orgId}/custom-graphs/check
Raises on 400: Bad request
func (*CustomGraphsNamespace) Create ¶ added in v0.16.0
func (n *CustomGraphsNamespace) Create(ctx context.Context, params CustomGraphsCreateParams, opts ...RequestOption) (*CustomGraphFull, error)
Create: Create a custom graph (paid plan required)
_Requires permission: `dashboards:write`._
POST /api/org/{orgId}/custom-graphs
Raises on 400: Bad request
Raises on 402: Payment required — the organization's plan does not include this
func (*CustomGraphsNamespace) Delete ¶ added in v0.16.0
func (n *CustomGraphsNamespace) Delete(ctx context.Context, params CustomGraphsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete a custom graph (and its dashboard cards)
_Requires permission: `dashboards:write`._
DELETE /api/org/{orgId}/custom-graphs/{id}
Raises on 404: Not found
func (*CustomGraphsNamespace) Get ¶ added in v0.16.0
func (n *CustomGraphsNamespace) Get(ctx context.Context, params CustomGraphsGetParams, opts ...RequestOption) (*CustomGraphFull, error)
Get: Get a custom graph (including source)
_Requires permission: `dashboards:read`._
GET /api/org/{orgId}/custom-graphs/{id}
Raises on 404: Not found
func (*CustomGraphsNamespace) List ¶ added in v0.16.0
func (n *CustomGraphsNamespace) List(ctx context.Context, params *CustomGraphsListParams, opts ...RequestOption) ([]CustomGraphSummary, error)
List: List custom graphs
_Requires permission: `dashboards:read`._
GET /api/org/{orgId}/custom-graphs
func (*CustomGraphsNamespace) Render ¶ added in v0.16.0
func (n *CustomGraphsNamespace) Render(ctx context.Context, params CustomGraphsRenderParams, opts ...RequestOption) (*CustomGraphRenderResult, error)
Render: Run the graph's script and return its render spec (paid plan required)
_Requires permission: `dashboards:read`._
POST /api/org/{orgId}/custom-graphs/{id}/render
Raises on 400: Bad request
Raises on 402: Payment required — the organization's plan does not include this
Raises on 404: Not found
func (*CustomGraphsNamespace) Typings ¶ added in v0.16.0
func (n *CustomGraphsNamespace) Typings(ctx context.Context, params *CustomGraphsTypingsParams, opts ...RequestOption) (io.ReadCloser, error)
Typings: The ambient graph.d.ts for custom-graph source
_Requires permission: `dashboards:read`._
GET /api/org/{orgId}/custom-graphs/typings
func (*CustomGraphsNamespace) Update ¶ added in v0.16.0
func (n *CustomGraphsNamespace) Update(ctx context.Context, params CustomGraphsUpdateParams, opts ...RequestOption) (*CustomGraphFull, error)
Update: Update a custom graph (paid plan required)
_Requires permission: `dashboards:write`._
PUT /api/org/{orgId}/custom-graphs/{id}
Raises on 400: Bad request
Raises on 402: Payment required — the organization's plan does not include this
Raises on 404: Not found
type CustomGraphsRenderParams ¶ added in v0.16.0
type CustomGraphsRenderParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body *CustomGraphRenderRequest
}
CustomGraphsRenderParams holds the parameters for `client.customGraphs.render`.
type CustomGraphsTypingsParams ¶ added in v0.16.0
type CustomGraphsTypingsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
CustomGraphsTypingsParams holds the parameters for `client.customGraphs.typings`.
Every field is optional; pass nil to take the defaults.
type CustomGraphsUpdateParams ¶ added in v0.16.0
type CustomGraphsUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body CustomGraphUpdate
}
CustomGraphsUpdateParams holds the parameters for `client.customGraphs.update`.
type Dashboard ¶
type Dashboard struct {
ID string `json:"id"`
Name string `json:"name"`
IsDefault bool `json:"isDefault"`
}
Dashboard is the `Dashboard` schema.
type DashboardFull ¶
type DashboardFull struct {
ID string `json:"id"`
OrganizationID string `json:"organizationId"`
Name string `json:"name"`
IsDefault bool `json:"isDefault"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
DeletedAt *string `json:"deletedAt"`
SyncVersion int64 `json:"syncVersion"`
}
DashboardFull is the `DashboardFull` schema.
type DashboardPin ¶
type DashboardPin struct {
PinID string `json:"pinId"`
ResourceID ResourceID `json:"resourceId"`
GridX int64 `json:"gridX"`
GridY int64 `json:"gridY"`
GridW int64 `json:"gridW"`
GridH int64 `json:"gridH"`
}
DashboardPin is the `DashboardPin` schema.
type DashboardWidget ¶
type DashboardWidget struct {
ID string `json:"id"`
DashboardID string `json:"dashboardId"`
Kind DashboardWidgetKind `json:"kind"`
Title string `json:"title"`
Config JSONObject `json:"config"`
GridX int64 `json:"gridX"`
GridY int64 `json:"gridY"`
GridW int64 `json:"gridW"`
GridH int64 `json:"gridH"`
}
DashboardWidget is the `DashboardWidget` schema.
type DashboardWidgetFull ¶
type DashboardWidgetFull struct {
ID string `json:"id"`
OrganizationID string `json:"organizationId"`
DashboardID string `json:"dashboardId"`
Kind DashboardWidgetKind `json:"kind"`
Title string `json:"title"`
Config JSONObject `json:"config"`
GridX int64 `json:"gridX"`
GridY int64 `json:"gridY"`
GridW int64 `json:"gridW"`
GridH int64 `json:"gridH"`
SyncVersion int64 `json:"syncVersion"`
DeletedAt *string `json:"deletedAt"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
DashboardWidgetFull is the `DashboardWidgetFull` schema.
type DashboardWidgetKind ¶
type DashboardWidgetKind = string
DashboardWidgetKind is the `DashboardWidgetKind` schema.
const ( DashboardWidgetKindCostGraph DashboardWidgetKind = "cost_graph" DashboardWidgetKindBudget DashboardWidgetKind = "budget" DashboardWidgetKindCustomGraph DashboardWidgetKind = "custom_graph" )
The values DashboardWidgetKind takes.
type DashboardWithPins ¶
type DashboardWithPins struct {
Dashboard DashboardFull `json:"dashboard"`
Pins []DashboardPin `json:"pins"`
WorkflowPins []DashboardWorkflowPin `json:"workflowPins"`
Widgets []DashboardWidget `json:"widgets"`
}
DashboardWithPins is the `DashboardWithPins` schema.
type DashboardWorkflowPin ¶
type DashboardWorkflowPin struct {
PinID string `json:"pinId"`
WorkflowID string `json:"workflowId"`
GridX int64 `json:"gridX"`
Name string `json:"name"`
LastRunAt *string `json:"lastRunAt"`
LastStatus *string `json:"lastStatus"`
Metrics []DashboardWorkflowPinMetrics `json:"metrics"`
}
DashboardWorkflowPin is the `DashboardWorkflowPin` schema.
type DashboardWorkflowPinMetrics ¶
type DashboardWorkflowPinMetrics struct {
Key string `json:"key"`
Label string `json:"label"`
Unit *string `json:"unit"`
Value any `json:"value,omitempty"`
}
DashboardWorkflowPinMetrics is an object the spec declares inline.
type DashboardsCreateParams ¶
type DashboardsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body DashboardsCreateRequest
}
DashboardsCreateParams holds the parameters for `client.dashboards.create`.
type DashboardsCreateRequest ¶
type DashboardsCreateRequest struct {
Name string `json:"name"`
}
DashboardsCreateRequest is an object the spec declares inline.
type DashboardsDefaultFullParams ¶
type DashboardsDefaultFullParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
DashboardsDefaultFullParams holds the parameters for `client.dashboards.default.full`.
Every field is optional; pass nil to take the defaults.
type DashboardsDefaultNamespace ¶
type DashboardsDefaultNamespace struct {
// contains filtered or unexported fields
}
DashboardsDefaultNamespace is `client.dashboards.default`.
func (*DashboardsDefaultNamespace) Full ¶
func (n *DashboardsDefaultNamespace) Full(ctx context.Context, params *DashboardsDefaultFullParams, opts ...RequestOption) (*DashboardWithPins, error)
Full: Get-or-create the default dashboard with its pins
_Requires permission: `dashboards:read`._
GET /api/org/{orgId}/dashboards/default/full
type DashboardsDeleteParams ¶
type DashboardsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
DashboardsDeleteParams holds the parameters for `client.dashboards.delete`.
type DashboardsGetParams ¶
type DashboardsGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
DashboardsGetParams holds the parameters for `client.dashboards.get`.
type DashboardsListParams ¶
type DashboardsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
DashboardsListParams holds the parameters for `client.dashboards.list`.
Every field is optional; pass nil to take the defaults.
type DashboardsNamespace ¶
type DashboardsNamespace struct {
// Default: `client.dashboards.default`.
Default *DashboardsDefaultNamespace
// Pin: `client.dashboards.pin`.
Pin *DashboardsPinNamespace
// Widgets: `client.dashboards.widgets`.
Widgets *DashboardsWidgetsNamespace
// contains filtered or unexported fields
}
DashboardsNamespace is `client.dashboards`.
func (*DashboardsNamespace) Create ¶
func (n *DashboardsNamespace) Create(ctx context.Context, params DashboardsCreateParams, opts ...RequestOption) (*DashboardFull, error)
Create: Create a dashboard
_Requires permission: `dashboards:write`._
POST /api/org/{orgId}/dashboards
func (*DashboardsNamespace) Delete ¶
func (n *DashboardsNamespace) Delete(ctx context.Context, params DashboardsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete a dashboard
Cannot delete the default dashboard.
_Requires permission: `dashboards:write`._
DELETE /api/org/{orgId}/dashboards/{id}
Raises on 400: Bad request
Raises on 404: Not found
func (*DashboardsNamespace) Get ¶
func (n *DashboardsNamespace) Get(ctx context.Context, params DashboardsGetParams, opts ...RequestOption) (*DashboardWithPins, error)
Get: Get a dashboard with its pins
_Requires permission: `dashboards:read`._
GET /api/org/{orgId}/dashboards/{id}
Raises on 404: Not found
func (*DashboardsNamespace) List ¶
func (n *DashboardsNamespace) List(ctx context.Context, params *DashboardsListParams, opts ...RequestOption) ([]Dashboard, error)
List: List dashboards
_Requires permission: `dashboards:read`._
GET /api/org/{orgId}/dashboards
func (*DashboardsNamespace) Probe ¶
func (n *DashboardsNamespace) Probe(ctx context.Context, params DashboardsProbeParams, opts ...RequestOption) (map[string]ProbeStatus, error)
Probe: Read cached stats/metrics for dashboard cards
_Requires permission: `dashboards:read`._
POST /api/org/{orgId}/dashboards/probe
func (*DashboardsNamespace) Rename ¶
func (n *DashboardsNamespace) Rename(ctx context.Context, params DashboardsRenameParams, opts ...RequestOption) (*OK, error)
Rename: Rename a dashboard
_Requires permission: `dashboards:write`._
POST /api/org/{orgId}/dashboards/{id}/rename
func (*DashboardsNamespace) Reorder ¶
func (n *DashboardsNamespace) Reorder(ctx context.Context, params DashboardsReorderParams, opts ...RequestOption) (*OK, error)
Reorder: Reorder dashboard cards
Persists the order of a dashboard's grid. Pass `cards` to order resource pins, workflow pins, and widgets as one sequence; `resourceIds` orders resource pins alone.
_Requires permission: `dashboards:write`._
POST /api/org/{orgId}/dashboards/{id}/reorder
Raises on 404: Not found
func (*DashboardsNamespace) Unpin ¶
func (n *DashboardsNamespace) Unpin(ctx context.Context, params DashboardsUnpinParams, opts ...RequestOption) (*OK, error)
Unpin: Unpin a resource
_Requires permission: `dashboards:write`._
POST /api/org/{orgId}/dashboards/unpin
Raises on 404: Not found
func (*DashboardsNamespace) ValidateTabs ¶
func (n *DashboardsNamespace) ValidateTabs(ctx context.Context, params DashboardsValidateTabsParams, opts ...RequestOption) (*ValidateTabsResponse, error)
ValidateTabs: Validate workspace tab targets still exist
_Requires permission: `dashboards:read`._
POST /api/org/{orgId}/dashboards/validate-tabs
func (*DashboardsNamespace) WorkflowPin ¶
func (n *DashboardsNamespace) WorkflowPin(ctx context.Context, params DashboardsWorkflowPinParams, opts ...RequestOption) (*OK, error)
WorkflowPin: Pin a workflow's metrics to a dashboard
POST /api/org/{orgId}/dashboards/workflow-pin
Raises on 404: Not found
func (*DashboardsNamespace) WorkflowUnpin ¶
func (n *DashboardsNamespace) WorkflowUnpin(ctx context.Context, params DashboardsWorkflowUnpinParams, opts ...RequestOption) (*OK, error)
WorkflowUnpin: Unpin a workflow from a dashboard
POST /api/org/{orgId}/dashboards/workflow-unpin
Raises on 404: Not found
type DashboardsPinCreateParams ¶
type DashboardsPinCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body PinRequest
}
DashboardsPinCreateParams holds the parameters for `client.dashboards.pin.create`.
type DashboardsPinGetParams ¶
type DashboardsPinGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PinID string
}
DashboardsPinGetParams holds the parameters for `client.dashboards.pin.get`.
type DashboardsPinNamespace ¶
type DashboardsPinNamespace struct {
// contains filtered or unexported fields
}
DashboardsPinNamespace is `client.dashboards.pin`.
func (*DashboardsPinNamespace) Create ¶
func (n *DashboardsPinNamespace) Create(ctx context.Context, params DashboardsPinCreateParams, opts ...RequestOption) (*OK, error)
Create: Pin a resource to a dashboard
_Requires permission: `dashboards:write`._
POST /api/org/{orgId}/dashboards/pin
Raises on 404: Not found
func (*DashboardsPinNamespace) Get ¶
func (n *DashboardsPinNamespace) Get(ctx context.Context, params DashboardsPinGetParams, opts ...RequestOption) (*PinFull, error)
Get: Full enriched pin data + cached probe status
_Requires permission: `dashboards:read`._
GET /api/org/{orgId}/dashboards/pin/{pinId}
Raises on 404: Not found
func (*DashboardsPinNamespace) Range ¶
func (n *DashboardsPinNamespace) Range(ctx context.Context, params DashboardsPinRangeParams, opts ...RequestOption) (*PinRangeResponse, error)
Range: Historical metric series for a pinned resource
Returns per-series metric points between fromMs and toMs. The backend auto-routes between raw, 1-minute, and 1-hour rollups based on span: ≤2h raw, ≤7d 1m, >7d 1h.
GET /api/org/{orgId}/dashboards/pin/{pinId}/range
Raises on 400: Bad request
Raises on 404: Not found
type DashboardsPinRangeParams ¶
type DashboardsPinRangeParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PinID string
FromMs *int64
ToMs *int64
}
DashboardsPinRangeParams holds the parameters for `client.dashboards.pin.range`.
type DashboardsProbeParams ¶
type DashboardsProbeParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body ProbeRequest
}
DashboardsProbeParams holds the parameters for `client.dashboards.probe`.
type DashboardsRenameParams ¶
type DashboardsRenameParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body DashboardsRenameRequest
}
DashboardsRenameParams holds the parameters for `client.dashboards.rename`.
type DashboardsRenameRequest ¶
type DashboardsRenameRequest struct {
Name string `json:"name"`
}
DashboardsRenameRequest is an object the spec declares inline.
type DashboardsReorderParams ¶
type DashboardsReorderParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body ReorderRequest
}
DashboardsReorderParams holds the parameters for `client.dashboards.reorder`.
type DashboardsUnpinParams ¶
type DashboardsUnpinParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body UnpinRequest
}
DashboardsUnpinParams holds the parameters for `client.dashboards.unpin`.
type DashboardsValidateTabsParams ¶
type DashboardsValidateTabsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body ValidateTabsRequest
}
DashboardsValidateTabsParams holds the parameters for `client.dashboards.validateTabs`.
type DashboardsWidgetsCreateParams ¶
type DashboardsWidgetsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CreateWidgetRequest
}
DashboardsWidgetsCreateParams holds the parameters for `client.dashboards.widgets.create`.
type DashboardsWidgetsDeleteParams ¶
type DashboardsWidgetsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
WidgetID string
}
DashboardsWidgetsDeleteParams holds the parameters for `client.dashboards.widgets.delete`.
type DashboardsWidgetsNamespace ¶
type DashboardsWidgetsNamespace struct {
// contains filtered or unexported fields
}
DashboardsWidgetsNamespace is `client.dashboards.widgets`.
func (*DashboardsWidgetsNamespace) Create ¶
func (n *DashboardsWidgetsNamespace) Create(ctx context.Context, params DashboardsWidgetsCreateParams, opts ...RequestOption) (*DashboardWidgetFull, error)
Create: Add a cost-graph or budget widget to a dashboard
POST /api/org/{orgId}/dashboards/widgets
Raises on 400: Bad request
Raises on 404: Not found
func (*DashboardsWidgetsNamespace) Delete ¶
func (n *DashboardsWidgetsNamespace) Delete(ctx context.Context, params DashboardsWidgetsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Remove a widget from a dashboard
DELETE /api/org/{orgId}/dashboards/widgets/{widgetId}
Raises on 404: Not found
func (*DashboardsWidgetsNamespace) Update ¶
func (n *DashboardsWidgetsNamespace) Update(ctx context.Context, params DashboardsWidgetsUpdateParams, opts ...RequestOption) (*DashboardWidgetFull, error)
Update: Update a widget's title, config, or layout
PATCH /api/org/{orgId}/dashboards/widgets/{widgetId}
Raises on 400: Bad request
Raises on 404: Not found
type DashboardsWidgetsUpdateParams ¶
type DashboardsWidgetsUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
WidgetID string
// Body: the JSON request body.
Body UpdateWidgetRequest
}
DashboardsWidgetsUpdateParams holds the parameters for `client.dashboards.widgets.update`.
type DashboardsWorkflowPinParams ¶
type DashboardsWorkflowPinParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body WorkflowPinRequest
}
DashboardsWorkflowPinParams holds the parameters for `client.dashboards.workflowPin`.
type DashboardsWorkflowUnpinParams ¶
type DashboardsWorkflowUnpinParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body WorkflowPinRequest
}
DashboardsWorkflowUnpinParams holds the parameters for `client.dashboards.workflowUnpin`.
type DeployCreatedResource ¶ added in v0.15.0
type DeployCreatedResource struct {
PluginID string `json:"pluginId"`
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
ResourceID string `json:"resourceId"`
ExternalID *string `json:"externalId,omitempty"`
DisplayName string `json:"displayName"`
Sidecar *DeployCreatedResourceSidecar `json:"sidecar,omitempty"`
}
DeployCreatedResource is the `DeployCreatedResource` schema.
type DeployCreatedResourceSidecar ¶ added in v0.15.0
type DeployCreatedResourceSidecar struct {
PluginID string `json:"pluginId"`
ParentResourceID string `json:"parentResourceId"`
}
DeployCreatedResourceSidecar is an object the spec declares inline.
type DeployEnvs ¶ added in v0.11.0
type DeployEnvs struct {
Envs []string `json:"envs"`
Sha string `json:"sha"`
Repo string `json:"repo"`
Branch string `json:"branch"`
}
DeployEnvs is the `DeployEnvs` schema.
type DeployEnvsInput ¶ added in v0.11.0
DeployEnvsInput is the `DeployEnvsInput` schema.
type DeployPlanInput ¶ added in v0.11.0
type DeployPlanInput struct {
Repo string `json:"repo"`
Branch *string `json:"branch,omitempty"`
Env *string `json:"env,omitempty"`
Answers map[string]string `json:"answers,omitempty"`
}
DeployPlanInput is the `DeployPlanInput` schema.
type DeployPlanResult ¶ added in v0.11.0
type DeployPlanResult struct {
RunID string `json:"runId"`
Result DeployPlanResultResult `json:"result"`
}
DeployPlanResult is the `DeployPlanResult` schema.
type DeployPlanResultResult ¶ added in v0.11.0
type DeployPlanResultResult struct {
Status DeployStatus `json:"status"`
Env string `json:"env"`
Plan any `json:"plan,omitempty"`
Dockerfile *string `json:"dockerfile,omitempty"`
Image *string `json:"image,omitempty"`
Notes []string `json:"notes"`
CreatedResources []DeployCreatedResource `json:"createdResources"`
PlannedChanges []DeployPlannedChange `json:"plannedChanges"`
Logs []DeployRunLog `json:"logs"`
ReachedStage *DeployStage `json:"reachedStage,omitempty"`
Error *DeployPlanResultResultError `json:"error,omitempty"`
DurationMs int64 `json:"durationMs"`
}
DeployPlanResultResult is an object the spec declares inline.
type DeployPlanResultResultError ¶ added in v0.11.0
type DeployPlanResultResultError struct {
Message string `json:"message"`
Stack *string `json:"stack,omitempty"`
}
DeployPlanResultResultError is an object the spec declares inline.
type DeployPlannedChange ¶ added in v0.15.0
type DeployPlannedChange struct {
// Action: One of "create", "update", "delete".
Action string `json:"action"`
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
ResourceID *string `json:"resourceId,omitempty"`
DisplayName string `json:"displayName"`
Fields map[string]string `json:"fields,omitempty"`
Sidecar *DeployPlannedChangeSidecar `json:"sidecar,omitempty"`
}
DeployPlannedChange is the `DeployPlannedChange` schema.
type DeployPlannedChangeSidecar ¶ added in v0.15.0
type DeployPlannedChangeSidecar struct {
PluginID string `json:"pluginId"`
ParentResourceID string `json:"parentResourceId"`
}
DeployPlannedChangeSidecar is an object the spec declares inline.
type DeployRepo ¶ added in v0.11.0
type DeployRepo struct {
FullName string `json:"fullName"`
DefaultBranch string `json:"defaultBranch"`
}
DeployRepo is the `DeployRepo` schema.
type DeployRollbackInput ¶ added in v0.15.0
type DeployRollbackInput struct {
DeleteCreated *bool `json:"deleteCreated,omitempty"`
}
DeployRollbackInput is the `DeployRollbackInput` schema.
type DeployRunLog ¶ added in v0.11.0
type DeployRunLog struct {
At int64 `json:"at"`
// Level: One of "debug", "info", "warn", "error".
Level string `json:"level"`
Message string `json:"message"`
}
DeployRunLog is the `DeployRunLog` schema.
type DeployStage ¶ added in v0.11.0
type DeployStage = string
DeployStage is the `DeployStage` schema.
const ( DeployStagePlan DeployStage = "plan" DeployStageDockerfile DeployStage = "dockerfile" DeployStageBuild DeployStage = "build" DeployStageDeploy DeployStage = "deploy" DeployStageDestroy DeployStage = "destroy" )
The values DeployStage takes.
type DeployStatus ¶ added in v0.11.0
type DeployStatus = string
DeployStatus is the `DeployStatus` schema.
const ( DeployStatusPending DeployStatus = "pending" DeployStatusRunning DeployStatus = "running" DeployStatusSuccess DeployStatus = "success" DeployStatusFailure DeployStatus = "failure" DeployStatusCanceled DeployStatus = "canceled" )
The values DeployStatus takes.
type DeployTrigger ¶ added in v0.11.0
type DeployTrigger struct {
ID string `json:"id"`
Repo string `json:"repo"`
Branch string `json:"branch"`
Env string `json:"env"`
Enabled bool `json:"enabled"`
LastSha *string `json:"lastSha"`
LastRunAt *string `json:"lastRunAt"`
}
DeployTrigger is the `DeployTrigger` schema.
type DeployTriggerInput ¶ added in v0.11.0
type DeployTriggerInput struct {
Repo string `json:"repo"`
Branch string `json:"branch"`
Env string `json:"env"`
Answers map[string]string `json:"answers,omitempty"`
}
DeployTriggerInput is the `DeployTriggerInput` schema.
type DeploymentRun ¶ added in v0.11.0
type DeploymentRun struct {
ID string `json:"id"`
Env string `json:"env"`
Repo *string `json:"repo"`
Branch *string `json:"branch"`
GitSha *string `json:"gitSha"`
Image *string `json:"image"`
Status DeployStatus `json:"status"`
// Origin: One of "web", "cli", "trigger".
Origin string `json:"origin"`
Stage *DeployStage `json:"stage"`
DurationMs *int64 `json:"durationMs"`
BuildSeconds *int64 `json:"buildSeconds"`
// BuildRunner: One of "cloud-build", "ssh".
BuildRunner *string `json:"buildRunner"`
StartedAt string `json:"startedAt"`
}
DeploymentRun is the `DeploymentRun` schema.
type DeploymentRunInput ¶ added in v0.11.0
type DeploymentRunInput struct {
Env string `json:"env"`
Status DeployStatus `json:"status"`
Repo *string `json:"repo,omitempty"`
Branch *string `json:"branch,omitempty"`
GitSha *string `json:"gitSha,omitempty"`
Image *string `json:"image,omitempty"`
Stage *DeployStage `json:"stage,omitempty"`
Notes []string `json:"notes,omitempty"`
Output any `json:"output,omitempty"`
Plan any `json:"plan,omitempty"`
CreatedResources []DeployCreatedResource `json:"createdResources,omitempty"`
DurationMs *int64 `json:"durationMs,omitempty"`
Error *DeploymentRunInputError `json:"error,omitempty"`
}
DeploymentRunInput is the `DeploymentRunInput` schema.
type DeploymentRunInputError ¶ added in v0.11.0
type DeploymentRunInputError struct {
Message string `json:"message"`
}
DeploymentRunInputError is an object the spec declares inline.
type DeploymentsEnvsParams ¶ added in v0.11.0
type DeploymentsEnvsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body *DeployEnvsInput
}
DeploymentsEnvsParams holds the parameters for `client.deployments.envs`.
Every field is optional; pass nil to take the defaults.
type DeploymentsNamespace ¶ added in v0.11.0
type DeploymentsNamespace struct {
// Runs: `client.deployments.runs`.
Runs *DeploymentsRunsNamespace
// Triggers: `client.deployments.triggers`.
Triggers *DeploymentsTriggersNamespace
// contains filtered or unexported fields
}
DeploymentsNamespace is `client.deployments`.
func (*DeploymentsNamespace) Envs ¶ added in v0.11.0
func (n *DeploymentsNamespace) Envs(ctx context.Context, params *DeploymentsEnvsParams, opts ...RequestOption) (*DeployEnvs, error)
Envs: List the environments a repository's Infrafile declares
Reads `Infrafile` at the branch head and returns its declared environments. The file is parsed, not executed.
_Requires permission: `deployments:read`._
POST /api/org/{orgId}/deployments/envs
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 403: Forbidden
Raises on 404: Not found
func (*DeploymentsNamespace) Plan ¶ added in v0.11.0
func (n *DeploymentsNamespace) Plan(ctx context.Context, params *DeploymentsPlanParams, opts ...RequestOption) (*DeployPlanResult, error)
Plan: Preview a deploy without building
Runs the Infrafile's `plan()` and renders its Dockerfile, then stops. Nothing is built or deployed.
_Requires permission: `deployments:plan`._
POST /api/org/{orgId}/deployments/plan
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 403: Forbidden
Raises on 404: Not found
func (*DeploymentsNamespace) Repos ¶ added in v0.11.0
func (n *DeploymentsNamespace) Repos(ctx context.Context, params *DeploymentsReposParams, opts ...RequestOption) ([]DeployRepo, error)
Repos: List repositories this organization can deploy from
Repositories visible to the organization's GitHub App installations. Empty when the app is not configured.
_Requires permission: `deployments:read`._
GET /api/org/{orgId}/deployments/repos
Raises on 401: Unauthenticated
Raises on 403: Forbidden
type DeploymentsPlanParams ¶ added in v0.11.0
type DeploymentsPlanParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body *DeployPlanInput
}
DeploymentsPlanParams holds the parameters for `client.deployments.plan`.
Every field is optional; pass nil to take the defaults.
type DeploymentsReposParams ¶ added in v0.11.0
type DeploymentsReposParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
DeploymentsReposParams holds the parameters for `client.deployments.repos`.
Every field is optional; pass nil to take the defaults.
type DeploymentsRunsCreateParams ¶ added in v0.11.0
type DeploymentsRunsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body *DeploymentRunInput
}
DeploymentsRunsCreateParams holds the parameters for `client.deployments.runs.create`.
Every field is optional; pass nil to take the defaults.
type DeploymentsRunsCreateResponse ¶ added in v0.11.0
type DeploymentsRunsCreateResponse struct {
ID string `json:"id"`
}
DeploymentsRunsCreateResponse is an object the spec declares inline.
type DeploymentsRunsGetParams ¶ added in v0.11.0
type DeploymentsRunsGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
DeploymentsRunsGetParams holds the parameters for `client.deployments.runs.get`.
type DeploymentsRunsListParams ¶ added in v0.11.0
type DeploymentsRunsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
Env *string
Limit *int64
}
DeploymentsRunsListParams holds the parameters for `client.deployments.runs.list`.
Every field is optional; pass nil to take the defaults.
type DeploymentsRunsNamespace ¶ added in v0.11.0
type DeploymentsRunsNamespace struct {
// contains filtered or unexported fields
}
DeploymentsRunsNamespace is `client.deployments.runs`.
func (*DeploymentsRunsNamespace) Create ¶ added in v0.11.0
func (n *DeploymentsRunsNamespace) Create(ctx context.Context, params *DeploymentsRunsCreateParams, opts ...RequestOption) (*DeploymentsRunsCreateResponse, error)
Create: Record a deployment that ran elsewhere
The CLI builds on the operator's own machine, so the server never sees that run. Reporting it here keeps one history across both origins.
_Requires permission: `deployments:write`._
POST /api/org/{orgId}/deployments/runs
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 403: Forbidden
func (*DeploymentsRunsNamespace) Get ¶ added in v0.11.0
func (n *DeploymentsRunsNamespace) Get(ctx context.Context, params DeploymentsRunsGetParams, opts ...RequestOption) (*DeploymentRun, error)
Get: Get one deployment run, with its logs and rendered Dockerfile
_Requires permission: `deployments:read`._
GET /api/org/{orgId}/deployments/runs/{id}
Raises on 401: Unauthenticated
Raises on 403: Forbidden
Raises on 404: Not found
func (*DeploymentsRunsNamespace) List ¶ added in v0.11.0
func (n *DeploymentsRunsNamespace) List(ctx context.Context, params *DeploymentsRunsListParams, opts ...RequestOption) ([]DeploymentRun, error)
List: List deployment runs
_Requires permission: `deployments:read`._
GET /api/org/{orgId}/deployments/runs
Raises on 401: Unauthenticated
Raises on 403: Forbidden
func (*DeploymentsRunsNamespace) Rollback ¶ added in v0.11.0
func (n *DeploymentsRunsNamespace) Rollback(ctx context.Context, params DeploymentsRunsRollbackParams, opts ...RequestOption) (*DeployPlanResult, error)
Rollback: Roll back to a previous deployment
Re-runs that run's `deploy()` with the image and plan it recorded, building nothing — the exact artifact that was known good ships again. The Infrafile is read at the commit that run deployed, not at the branch head. Only a successful run that produced an image can be rolled back to. With `deleteCreated`, resources that runs after the target created through `infra.accounts` are deleted once the rollback has succeeded — undoing the provisioning, not just the shipping. Deletions are best-effort and reported in the result's notes.
_Requires permission: `deployments:write`._
POST /api/org/{orgId}/deployments/runs/{id}/rollback
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 402: Payment required — the organization's plan does not include this
Raises on 403: Forbidden
Raises on 404: Not found
Raises on 409: Conflict
type DeploymentsRunsRollbackParams ¶ added in v0.11.0
type DeploymentsRunsRollbackParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body *DeployRollbackInput
}
DeploymentsRunsRollbackParams holds the parameters for `client.deployments.runs.rollback`.
type DeploymentsTriggersCreateParams ¶ added in v0.11.0
type DeploymentsTriggersCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body *DeployTriggerInput
}
DeploymentsTriggersCreateParams holds the parameters for `client.deployments.triggers.create`.
Every field is optional; pass nil to take the defaults.
type DeploymentsTriggersDeleteParams ¶ added in v0.11.0
type DeploymentsTriggersDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
DeploymentsTriggersDeleteParams holds the parameters for `client.deployments.triggers.delete`.
type DeploymentsTriggersListParams ¶ added in v0.11.0
type DeploymentsTriggersListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
DeploymentsTriggersListParams holds the parameters for `client.deployments.triggers.list`.
Every field is optional; pass nil to take the defaults.
type DeploymentsTriggersNamespace ¶ added in v0.11.0
type DeploymentsTriggersNamespace struct {
// contains filtered or unexported fields
}
DeploymentsTriggersNamespace is `client.deployments.triggers`.
func (*DeploymentsTriggersNamespace) Create ¶ added in v0.11.0
func (n *DeploymentsTriggersNamespace) Create(ctx context.Context, params *DeploymentsTriggersCreateParams, opts ...RequestOption) (*DeployTrigger, error)
Create: Deploy an environment whenever a branch moves
Arming a trigger records the branch's current commit WITHOUT deploying it — the trigger fires on the next push, not on the state at the moment it was created. The environment is validated against the Infrafile at that branch head, so a typo fails here rather than silently never firing.
_Requires permission: `deployments:write`._
POST /api/org/{orgId}/deployments/triggers
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 403: Forbidden
Raises on 404: Not found
func (*DeploymentsTriggersNamespace) Delete ¶ added in v0.11.0
func (n *DeploymentsTriggersNamespace) Delete(ctx context.Context, params DeploymentsTriggersDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete a deploy trigger
_Requires permission: `deployments:write`._
DELETE /api/org/{orgId}/deployments/triggers/{id}
Raises on 401: Unauthenticated
Raises on 403: Forbidden
func (*DeploymentsTriggersNamespace) List ¶ added in v0.11.0
func (n *DeploymentsTriggersNamespace) List(ctx context.Context, params *DeploymentsTriggersListParams, opts ...RequestOption) ([]DeployTrigger, error)
List: List deploy-on-push triggers
_Requires permission: `deployments:read`._
GET /api/org/{orgId}/deployments/triggers
Raises on 401: Unauthenticated
Raises on 403: Forbidden
func (*DeploymentsTriggersNamespace) Update ¶ added in v0.11.0
func (n *DeploymentsTriggersNamespace) Update(ctx context.Context, params DeploymentsTriggersUpdateParams, opts ...RequestOption) (*DeployTrigger, error)
Update: Enable or disable a deploy trigger
_Requires permission: `deployments:write`._
PATCH /api/org/{orgId}/deployments/triggers/{id}
Raises on 401: Unauthenticated
Raises on 403: Forbidden
Raises on 404: Not found
type DeploymentsTriggersUpdateParams ¶ added in v0.11.0
type DeploymentsTriggersUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body *DeploymentsTriggersUpdateRequest
}
DeploymentsTriggersUpdateParams holds the parameters for `client.deployments.triggers.update`.
type DeploymentsTriggersUpdateRequest ¶ added in v0.11.0
type DeploymentsTriggersUpdateRequest struct {
Enabled bool `json:"enabled"`
}
DeploymentsTriggersUpdateRequest is an object the spec declares inline.
type DescribeRequest ¶
type DescribeRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
DescribeRequest is the `DescribeRequest` schema.
type DescribeResponse ¶
type DescribeResponse struct {
Text string `json:"text"`
}
DescribeResponse is the `DescribeResponse` schema.
type DockerCommandParams ¶
type DockerCommandParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body DockerCommandRequest
}
DockerCommandParams holds the parameters for `client.docker.command`.
type DockerCommandRequest ¶
type DockerCommandRequest struct {
AccountID string `json:"accountId"`
Op string `json:"op"`
Params JSONObject `json:"params,omitempty"`
}
DockerCommandRequest is the `DockerCommandRequest` schema.
type DockerCommandResponse ¶
type DockerCommandResponse struct {
Result any `json:"result,omitempty"`
}
DockerCommandResponse is the `DockerCommandResponse` schema.
type DockerNamespace ¶
type DockerNamespace struct {
// contains filtered or unexported fields
}
DockerNamespace is `client.docker`.
func (*DockerNamespace) Command ¶
func (n *DockerNamespace) Command(ctx context.Context, params DockerCommandParams, opts ...RequestOption) (*DockerCommandResponse, error)
Command: Run a Docker daemon operation
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/docker/command
Raises on 400: Bad request
Raises on 404: Not found
type EditableField ¶
type EditableField struct {
Key string `json:"key"`
Label string `json:"label"`
// Kind: One of "string", "number", "boolean", "enum", "secret",
// "association", "password".
Kind string `json:"kind"`
Required bool `json:"required"`
Description *string `json:"description,omitempty"`
EnumValues []string `json:"enumValues,omitempty"`
}
EditableField is the `EditableField` schema.
type Error ¶
type Error struct {
// Error: Human-readable error message
Error string `json:"error"`
}
Error is the `Error` schema.
type ExportCredentialRequest ¶
type ExportCredentialRequest struct {
ResourceID ResourceID `json:"resourceId"`
AccountID string `json:"accountId"`
FormatID string `json:"formatId"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
ExportCredentialRequest is the `ExportCredentialRequest` schema.
type FieldActionRequest ¶
type FieldActionRequest struct {
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
FieldKey string `json:"fieldKey"`
ActionID string `json:"actionId"`
Fields map[string]string `json:"fields"`
ActionFields map[string]string `json:"actionFields,omitempty"`
PluginID *string `json:"pluginId,omitempty"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
FieldActionRequest is the `FieldActionRequest` schema.
type FieldActionResponse ¶
type FieldActionResponse struct {
Value string `json:"value"`
Option *FieldActionResponseOption `json:"option,omitempty"`
}
FieldActionResponse is the `FieldActionResponse` schema.
type FieldActionResponseOption ¶
FieldActionResponseOption is an object the spec declares inline.
type GenerateSSHKeyRequest ¶
type GenerateSSHKeyRequest struct {
Name string `json:"name"`
}
GenerateSSHKeyRequest is the `GenerateSshKeyRequest` schema.
Spec schema: `GenerateSshKeyRequest`.
type GeneratedSSHKey ¶
type GeneratedSSHKey struct {
ID string `json:"id"`
Name string `json:"name"`
KeyType SSHKeyType `json:"keyType"`
Fingerprint string `json:"fingerprint"`
PublicKey string `json:"publicKey"`
// PrivateKey: Returned once. Not persisted in plaintext.
PrivateKey string `json:"privateKey"`
}
GeneratedSSHKey is the `GeneratedSshKey` schema.
Spec schema: `GeneratedSshKey`.
type ImportSSHKeyRequest ¶
ImportSSHKeyRequest is the `ImportSshKeyRequest` schema.
Spec schema: `ImportSshKeyRequest`.
type ImportYAMLRequest ¶
type ImportYAMLRequest struct {
AccountID string `json:"accountId"`
YAML string `json:"yaml"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
ImportYAMLRequest is the `ImportYamlRequest` schema.
Spec schema: `ImportYamlRequest`.
type ImportedSSHKey ¶
type ImportedSSHKey struct {
ID string `json:"id"`
Name string `json:"name"`
KeyType SSHKeyType `json:"keyType"`
Fingerprint string `json:"fingerprint"`
PublicKey string `json:"publicKey"`
IsImported bool `json:"isImported"`
}
ImportedSSHKey is the `ImportedSshKey` schema.
Spec schema: `ImportedSshKey`.
type Invitation ¶
type Invitation struct {
ID string `json:"id"`
Email string `json:"email"`
Role OrganizationRole `json:"role"`
RoleID *string `json:"roleId"`
RoleName *string `json:"roleName"`
AcceptedAt *string `json:"acceptedAt"`
ExpiresAt string `json:"expiresAt"`
CreatedAt string `json:"createdAt"`
}
Invitation is the `Invitation` schema.
type InvitationDetail ¶
type InvitationDetail struct {
ID string `json:"id"`
Email string `json:"email"`
Role OrganizationRole `json:"role"`
ExpiresAt string `json:"expiresAt"`
AcceptedAt *string `json:"acceptedAt"`
OrganizationID string `json:"organizationId"`
OrganizationName string `json:"organizationName"`
}
InvitationDetail is the `InvitationDetail` schema.
type InvitationsAcceptParams ¶
type InvitationsAcceptParams struct {
// Body: the JSON request body.
Body AcceptInvitationRequest
}
InvitationsAcceptParams holds the parameters for `client.invitations.accept`.
type InvitationsByTokenGetParams ¶
type InvitationsByTokenGetParams struct {
Token string
}
InvitationsByTokenGetParams holds the parameters for `client.invitations.byToken.get`.
type InvitationsByTokenNamespace ¶
type InvitationsByTokenNamespace struct {
// contains filtered or unexported fields
}
InvitationsByTokenNamespace is `client.invitations.byToken`.
func (*InvitationsByTokenNamespace) Get ¶
func (n *InvitationsByTokenNamespace) Get(ctx context.Context, params InvitationsByTokenGetParams, opts ...RequestOption) (*InvitationDetail, error)
Get: Get invitation details by token
GET /api/invitations/by-token/{token}
Raises on 404: Not found
type InvitationsNamespace ¶
type InvitationsNamespace struct {
// ByToken: `client.invitations.byToken`.
ByToken *InvitationsByTokenNamespace
// contains filtered or unexported fields
}
InvitationsNamespace is `client.invitations`.
func (*InvitationsNamespace) Accept ¶
func (n *InvitationsNamespace) Accept(ctx context.Context, params InvitationsAcceptParams, opts ...RequestOption) (*AcceptInvitationResponse, error)
Accept: Accept an invitation
POST /api/invitations/accept
Raises on 400: Bad request
Raises on 403: Forbidden
type InviteRequest ¶
type InviteRequest struct {
Email string `json:"email"`
Role *OrganizationRole `json:"role,omitempty"`
RoleID *string `json:"roleId,omitempty"`
// AddSeat: When the paid plan is full (409 seat_limit_reached), retry with
// this set to buy one more seat and send the invitation. Requires
// billing:write.
AddSeat *bool `json:"addSeat,omitempty"`
}
InviteRequest is the `InviteRequest` schema.
type InviteResponse ¶
InviteResponse is the `InviteResponse` schema.
type InvokeActionRequest ¶
type InvokeActionRequest struct {
PluginID string `json:"pluginId"`
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
ResourceID ResourceID `json:"resourceId"`
ActionID string `json:"actionId"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
InvokeActionRequest is the `InvokeActionRequest` schema.
type JSONObject ¶
JSONObject: Free-form JSON object whose shape depends on the plugin.
Spec schema: `JsonObject`.
type KVCommandParams ¶
type KVCommandParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body KVCommandRequest
}
KVCommandParams holds the parameters for `client.kv.command`.
type KVCommandRequest ¶
type KVCommandRequest struct {
AccountID string `json:"accountId"`
Command string `json:"command"`
Args []any `json:"args"`
PluginID *string `json:"pluginId,omitempty"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
KVCommandRequest is the `KvCommandRequest` schema.
Spec schema: `KvCommandRequest`.
type KVCommandResponse ¶
type KVCommandResponse struct {
Result any `json:"result,omitempty"`
}
KVCommandResponse is the `KvCommandResponse` schema.
Spec schema: `KvCommandResponse`.
type KVNamespace ¶
type KVNamespace struct {
// contains filtered or unexported fields
}
KVNamespace is `client.kv`.
func (*KVNamespace) Command ¶
func (n *KVNamespace) Command(ctx context.Context, params KVCommandParams, opts ...RequestOption) (*KVCommandResponse, error)
Command: Run a Redis-style KV command
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/kv/command
Raises on 400: Bad request
Raises on 404: Not found
type LiteralAssociationRequest ¶
type LiteralAssociationRequest struct {
ResourceID ResourceID `json:"resourceId"`
FieldKey string `json:"fieldKey"`
PlaintextValue string `json:"plaintextValue"`
}
LiteralAssociationRequest is the `LiteralAssociationRequest` schema.
type LogsRequest ¶
type LogsRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
TailLines *int64 `json:"tailLines,omitempty"`
Container *string `json:"container,omitempty"`
Previous *bool `json:"previous,omitempty"`
}
LogsRequest is the `LogsRequest` schema.
type LogsResponse ¶
type LogsResponse struct {
// Text: Raw log text; each entry keeps its trailing newline.
Text string `json:"text"`
// Containers: Container names available for this resource — drives the
// container picker.
Containers []string `json:"containers"`
// ActiveContainer: Container `text` was read from.
ActiveContainer string `json:"activeContainer"`
}
LogsResponse is the `LogsResponse` schema.
type Manifest ¶
type Manifest struct {
Manifest string `json:"manifest"`
}
Manifest is the `Manifest` schema.
type MeResponse ¶
type MeResponse struct {
UserID string `json:"userId"`
Email string `json:"email"`
Role *RoleSummary `json:"role"`
Permissions []Permission `json:"permissions"`
}
MeResponse is the `MeResponse` schema.
type MetricSeries ¶
type MetricSeries struct {
Label string `json:"label"`
Unit *string `json:"unit,omitempty"`
Points []MetricSeriesPoints `json:"points"`
}
MetricSeries is the `MetricSeries` schema.
type MetricSeriesPoints ¶
type MetricSeriesPoints struct {
// Timestamp: Unix epoch milliseconds.
Timestamp float64 `json:"timestamp"`
Value float64 `json:"value"`
}
MetricSeriesPoints is an object the spec declares inline.
type MetricsRequest ¶
type MetricsRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
StartMs *int64 `json:"startMs,omitempty"`
EndMs *int64 `json:"endMs,omitempty"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
MetricsRequest is the `MetricsRequest` schema.
type MetricsResponse ¶
type MetricsResponse struct {
Series []MetricSeries `json:"series"`
}
MetricsResponse is the `MetricsResponse` schema.
type MsTeamsStatus ¶ added in v0.4.0
type MsTeamsStatus struct {
Webhooks []MsTeamsWebhook `json:"webhooks"`
}
MsTeamsStatus is the `MsTeamsStatus` schema.
type MsTeamsWebhook ¶ added in v0.4.0
type MsTeamsWebhook struct {
ID string `json:"id"`
// Label: Display name for the channel, e.g. #alerts
Label string `json:"label"`
// URLHint: Non-secret hint at the stored webhook URL (host and last four
// characters). The URL itself is never returned.
URLHint string `json:"urlHint"`
SyncIncidents bool `json:"syncIncidents"`
BudgetAlerts bool `json:"budgetAlerts"`
// WorkflowPages: Alerts raised by a workflow calling infra.page(...)
WorkflowPages bool `json:"workflowPages"`
}
MsTeamsWebhook is the `MsTeamsWebhook` schema.
type MsTeamsWebhookCreate ¶ added in v0.4.0
type MsTeamsWebhookCreate struct {
Label string `json:"label"`
// URL: The webhook URL from a Teams 'Workflows' automation. Must be https
// and on a Microsoft-operated host (*.api.powerautomate.com,
// *.api.powerplatform.com, *.logic.azure.com, *.flow.microsoft.com, or a
// legacy *.webhook.office.com connector).
URL string `json:"url"`
SyncIncidents *bool `json:"syncIncidents,omitempty"`
BudgetAlerts *bool `json:"budgetAlerts,omitempty"`
WorkflowPages *bool `json:"workflowPages,omitempty"`
}
MsTeamsWebhookCreate is the `MsTeamsWebhookCreate` schema.
type MsTeamsWebhookUpdate ¶ added in v0.4.0
type MsTeamsWebhookUpdate struct {
Label *string `json:"label,omitempty"`
SyncIncidents *bool `json:"syncIncidents,omitempty"`
BudgetAlerts *bool `json:"budgetAlerts,omitempty"`
WorkflowPages *bool `json:"workflowPages,omitempty"`
}
MsTeamsWebhookUpdate is the `MsTeamsWebhookUpdate` schema.
type MsteamsNamespace ¶ added in v0.4.0
type MsteamsNamespace struct {
// Webhooks: `client.msteams.webhooks`.
Webhooks *MsteamsWebhooksNamespace
// contains filtered or unexported fields
}
MsteamsNamespace is `client.msteams`.
func (*MsteamsNamespace) Status ¶ added in v0.4.0
func (n *MsteamsNamespace) Status(ctx context.Context, params *MsteamsStatusParams, opts ...RequestOption) (*MsTeamsStatus, error)
Status: List the organization's Teams channels
Returns the Teams channels alerts are routed to and which triggers each takes. Webhook URLs are never included.
GET /api/org/{orgId}/msteams/status
func (*MsteamsNamespace) Test ¶ added in v0.4.0
func (n *MsteamsNamespace) Test(ctx context.Context, params *MsteamsTestParams, opts ...RequestOption) (*MsteamsTestResponse, error)
Test: Post a test card to every configured Teams channel
Ignores trigger opt-ins — every channel gets the test. Fails with the error Microsoft returned when nothing could be delivered (HTTP 404 usually means the Workflow was deleted or turned off).
POST /api/org/{orgId}/msteams/test
Raises on 400: Bad request
type MsteamsStatusParams ¶ added in v0.4.0
type MsteamsStatusParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
MsteamsStatusParams holds the parameters for `client.msteams.status`.
Every field is optional; pass nil to take the defaults.
type MsteamsTestParams ¶ added in v0.4.0
type MsteamsTestParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
MsteamsTestParams holds the parameters for `client.msteams.test`.
Every field is optional; pass nil to take the defaults.
type MsteamsTestResponse ¶ added in v0.4.0
type MsteamsTestResponse struct {
OK bool `json:"ok"`
WebhookCount int64 `json:"webhookCount"`
Attempted int64 `json:"attempted"`
Succeeded int64 `json:"succeeded"`
}
MsteamsTestResponse is an object the spec declares inline.
type MsteamsWebhooksCreateParams ¶ added in v0.4.0
type MsteamsWebhooksCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body *MsTeamsWebhookCreate
}
MsteamsWebhooksCreateParams holds the parameters for `client.msteams.webhooks.create`.
Every field is optional; pass nil to take the defaults.
type MsteamsWebhooksDeleteParams ¶ added in v0.4.0
type MsteamsWebhooksDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
MsteamsWebhooksDeleteParams holds the parameters for `client.msteams.webhooks.delete`.
type MsteamsWebhooksNamespace ¶ added in v0.4.0
type MsteamsWebhooksNamespace struct {
// contains filtered or unexported fields
}
MsteamsWebhooksNamespace is `client.msteams.webhooks`.
func (*MsteamsWebhooksNamespace) Create ¶ added in v0.4.0
func (n *MsteamsWebhooksNamespace) Create(ctx context.Context, params *MsteamsWebhooksCreateParams, opts ...RequestOption) (*MsTeamsWebhook, error)
Create: Route alerts to a Teams channel
Adds a channel by webhook URL, or updates the one already holding that URL. Each trigger defaults to enabled. Responds 400 when the URL is not https or its host is not Microsoft-operated.
POST /api/org/{orgId}/msteams/webhooks
Raises on 400: Bad request
func (*MsteamsWebhooksNamespace) Delete ¶ added in v0.4.0
func (n *MsteamsWebhooksNamespace) Delete(ctx context.Context, params MsteamsWebhooksDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Stop routing alerts to a Teams channel
DELETE /api/org/{orgId}/msteams/webhooks/{id}
Raises on 404: Not found
func (*MsteamsWebhooksNamespace) Update ¶ added in v0.4.0
func (n *MsteamsWebhooksNamespace) Update(ctx context.Context, params MsteamsWebhooksUpdateParams, opts ...RequestOption) (*MsTeamsWebhook, error)
Update: Rename a Teams channel or change which alerts it receives
The webhook URL is immutable — remove the channel and re-add it to change it.
PATCH /api/org/{orgId}/msteams/webhooks/{id}
Raises on 400: Bad request
Raises on 404: Not found
type MsteamsWebhooksUpdateParams ¶ added in v0.4.0
type MsteamsWebhooksUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body *MsTeamsWebhookUpdate
}
MsteamsWebhooksUpdateParams holds the parameters for `client.msteams.webhooks.update`.
type NoSQLCommandRequest ¶
type NoSQLCommandRequest struct {
PluginID string `json:"pluginId"`
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
ResourceID ResourceID `json:"resourceId"`
Command string `json:"command"`
Args []any `json:"args"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
NoSQLCommandRequest is the `NoSqlCommandRequest` schema.
Spec schema: `NoSqlCommandRequest`.
type OrgMember ¶
type OrgMember struct {
ID string `json:"id"`
Email string `json:"email"`
DisplayName *string `json:"displayName"`
Role OrganizationRole `json:"role"`
RoleID *string `json:"roleId"`
RoleName *string `json:"roleName"`
RoleSystemKey *string `json:"roleSystemKey"`
CreatedAt string `json:"createdAt"`
}
OrgMember is the `OrgMember` schema.
type OrgMembership ¶
type OrgMembership struct {
ID string `json:"id"`
DisplayName string `json:"displayName"`
Role OrganizationRole `json:"role"`
}
OrgMembership is the `OrgMembership` schema.
type Organization ¶
Organization is the `Organization` schema.
type OrganizationRef ¶ added in v0.8.0
OrganizationRef is the `OrganizationRef` schema.
type OrganizationRole ¶
type OrganizationRole = string
OrganizationRole is the `OrganizationRole` schema.
const ( OrganizationRoleOwner OrganizationRole = "owner" OrganizationRoleAdmin OrganizationRole = "admin" OrganizationRoleMember OrganizationRole = "member" )
The values OrganizationRole takes.
type OrgsCreateParams ¶
type OrgsCreateParams struct {
// Body: the JSON request body.
Body CreateOrgRequest
}
OrgsCreateParams holds the parameters for `client.orgs.create`.
type OrgsNamespace ¶
type OrgsNamespace struct {
// contains filtered or unexported fields
}
OrgsNamespace is `client.orgs`.
func (*OrgsNamespace) Create ¶
func (n *OrgsNamespace) Create(ctx context.Context, params OrgsCreateParams, opts ...RequestOption) (*Organization, error)
Create: Create a new organization
The caller becomes the `owner` of the new organization.
POST /api/orgs
Raises on 400: Bad request
Raises on 401: Unauthenticated
type OwnershipBlocker ¶ added in v0.8.0
type OwnershipBlocker struct {
ID string `json:"id"`
Name string `json:"name"`
// MemberCount: People in the organization
MemberCount int64 `json:"memberCount"`
}
OwnershipBlocker is the `OwnershipBlocker` schema.
type OwnershipTransferRequired ¶ added in v0.8.0
type OwnershipTransferRequired struct {
Error string `json:"error"`
// Code: One of "transfer_ownership_required".
Code string `json:"code"`
Organizations []OwnershipBlocker `json:"organizations"`
}
OwnershipTransferRequired is the `OwnershipTransferRequired` schema.
type PageClearResponse ¶ added in v0.6.0
type PageClearResponse struct {
// Cleared: False when the key had no cooldown to clear.
Cleared bool `json:"cleared"`
}
PageClearResponse is the `PageClearResponse` schema.
type PageRequest ¶ added in v0.6.0
type PageRequest struct {
// Source: Stable name for the system raising the page: letters, digits, `.`,
// `_` and `-`. It is the notification's sender, and it scopes the cooldown —
// two services paging under the same key never throttle each other.
Source string `json:"source"`
// Message: The alert text. Becomes the SMS and notification body.
Message string `json:"message"`
// Title: Short headline for the notification. Defaults to `source`.
Title *string `json:"title,omitempty"`
// Key: Throttle key, `default` when unset. Pages sharing a key are
// suppressed while that key is in cooldown, so a per-object key (a host, a
// cluster id) alerts per object while the default key alerts once for the
// whole source.
Key *string `json:"key,omitempty"`
// CooldownMinutes: Minutes to suppress repeat pages under the same key.
// Defaults to 60; `0` sends every time.
CooldownMinutes *int64 `json:"cooldownMinutes,omitempty"`
// Voice: Also place a voice call to recipients who opted into voice. Off by
// default — reserve it for things worth waking someone up for.
Voice *bool `json:"voice,omitempty"`
}
PageRequest is the `PageRequest` schema.
type PageResponse ¶ added in v0.6.0
type PageResponse struct {
// Delivered: True when at least one recipient was reached on any transport.
Delivered bool `json:"delivered"`
// Suppressed: True when the key was still in cooldown, so nothing was sent.
Suppressed bool `json:"suppressed"`
// Sms: Twilio deliveries (SMS + voice) that Twilio accepted.
Sms int64 `json:"sms"`
// Push: Push notifications accepted by Expo.
Push int64 `json:"push"`
// Slack: Slack channel posts Slack accepted.
Slack int64 `json:"slack"`
// MsTeams: Microsoft Teams webhook posts Teams accepted.
MsTeams int64 `json:"msTeams"`
// RetryAt: When suppressed, the time at which this key can page again.
RetryAt *string `json:"retryAt,omitempty"`
}
PageResponse is the `PageResponse` schema.
type PagesCreateParams ¶ added in v0.6.0
type PagesCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body PageRequest
}
PagesCreateParams holds the parameters for `client.pages.create`.
type PagesDeleteParams ¶ added in v0.6.0
type PagesDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Source: Stable name for the system raising the page: letters, digits, `.`,
// `_` and `-`. It is the notification's sender, and it scopes the cooldown —
// two services paging under the same key never throttle each other.
Source string
// Key: Defaults to `default`.
Key *string
}
PagesDeleteParams holds the parameters for `client.pages.delete`.
type PagesNamespace ¶ added in v0.6.0
type PagesNamespace struct {
// contains filtered or unexported fields
}
PagesNamespace is `client.pages`.
func (*PagesNamespace) Create ¶ added in v0.6.0
func (n *PagesNamespace) Create(ctx context.Context, params PagesCreateParams, opts ...RequestOption) (*PageResponse, error)
Create: Raise an alert to the organization's on-call transports
Fans an alert out over whatever the org has configured — Twilio SMS (and voice on request), mobile push, Slack channels, and Microsoft Teams webhooks — honouring each recipient's opt-ins. This is the same alert a workflow raises with `infra.page(...)`, for code that runs somewhere Infrawrench does not: a health check, a deploy script, a cron on a box.
Repeat pages under the same `(source, key)` are **suppressed, not rejected**: a monitor that fires every minute pages once and then gets `200` with `suppressed: true` and the `retryAt` at which the key can page again. A page that reached nobody does not start a cooldown, so the next call tries again.
Recipients opt in per channel under the same setting that covers workflow pages.
_Requires permission: `pages:write`._
POST /api/org/{orgId}/pages
Raises on 400: Bad request
func (*PagesNamespace) Delete ¶ added in v0.6.0
func (n *PagesNamespace) Delete(ctx context.Context, params PagesDeleteParams, opts ...RequestOption) (*PageClearResponse, error)
Delete: Clear a page key's cooldown
Drops the cooldown for one `(source, key)` so the next page under it delivers immediately. Call it when the condition you alerted on recovers — the workflow equivalent is `infra.page.clear(key)`. Clearing a key that was never paged is not an error.
_Requires permission: `pages:write`._
DELETE /api/org/{orgId}/pages
Raises on 400: Bad request
type PeerPane ¶
type PeerPane struct {
TabLabel string `json:"tabLabel"`
PluginLogoSvg string `json:"pluginLogoSvg"`
PeerPluginID string `json:"peerPluginId"`
Schema JSONObject `json:"schema"`
}
PeerPane is the `PeerPane` schema.
type PeerPaneStub ¶
type PeerPaneStub struct {
TabLabel string `json:"tabLabel"`
PluginLogoSvg string `json:"pluginLogoSvg"`
PeerPluginID string `json:"peerPluginId"`
}
PeerPaneStub is the `PeerPaneStub` schema.
type PeerPanesRequest ¶
type PeerPanesRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
PeerPanesRequest is the `PeerPanesRequest` schema.
type Permission ¶
type Permission = string
Permission: A permission string. Roles may grant exact permissions like the entries in this enum, or wildcards (e.g. `resources:*:read`, `*`).
const ( PermissionAccountsRead Permission = "accounts:read" PermissionAccountsWrite Permission = "accounts:write" PermissionAccountsDelete Permission = "accounts:delete" PermissionResourcesRead Permission = "resources:read" PermissionResourcesWrite Permission = "resources:write" PermissionResourcesDelete Permission = "resources:delete" PermissionResourcesExecute Permission = "resources:execute" PermissionSecretsRead Permission = "secrets:read" PermissionSecretsWrite Permission = "secrets:write" PermissionStorageRead Permission = "storage:read" PermissionStorageWrite Permission = "storage:write" PermissionDashboardsRead Permission = "dashboards:read" PermissionDashboardsWrite Permission = "dashboards:write" PermissionDeploymentsRead Permission = "deployments:read" PermissionDeploymentsPlan Permission = "deployments:plan" PermissionDeploymentsWrite Permission = "deployments:write" PermissionCostsRead Permission = "costs:read" PermissionCostsWrite Permission = "costs:write" PermissionBudgetsRead Permission = "budgets:read" PermissionBudgetsWrite Permission = "budgets:write" PermissionAuditRead Permission = "audit:read" PermissionTeamRead Permission = "team:read" PermissionTeamInvite Permission = "team:invite" PermissionTeamRoleWrite Permission = "team:role:write" PermissionTeamRemove Permission = "team:remove" PermissionApikeysRead Permission = "apikeys:read" PermissionApikeysWrite Permission = "apikeys:write" PermissionBillingRead Permission = "billing:read" PermissionBillingWrite Permission = "billing:write" PermissionSSHKeysRead Permission = "ssh-keys:read" PermissionSSHKeysWrite Permission = "ssh-keys:write" PermissionBastionsRead Permission = "bastions:read" PermissionBastionsWrite Permission = "bastions:write" PermissionChatRead Permission = "chat:read" PermissionChatWrite Permission = "chat:write" PermissionPagesWrite Permission = "pages:write" PermissionOrgSettingsWrite Permission = "org:settings:write" )
The values Permission takes.
type PermissionCatalog ¶
type PermissionCatalog struct {
Permissions []Permission `json:"permissions"`
}
PermissionCatalog is the `PermissionCatalog` schema.
type PickerResource ¶
type PickerResource struct {
ID ResourceID `json:"id"`
Label string `json:"label"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
AccountID string `json:"accountId"`
OutputKey string `json:"outputKey"`
OutputValue string `json:"outputValue"`
}
PickerResource is the `PickerResource` schema.
type PickerResourcesRequest ¶
type PickerResourcesRequest struct {
Sources []PickerResourcesRequestSources `json:"sources"`
AccountID string `json:"accountId"`
RegionHint *string `json:"regionHint,omitempty"`
CrossAccount *bool `json:"crossAccount,omitempty"`
}
PickerResourcesRequest is the `PickerResourcesRequest` schema.
type PickerResourcesRequestSources ¶
type PickerResourcesRequestSources struct {
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
OutputKey string `json:"outputKey"`
}
PickerResourcesRequestSources is an object the spec declares inline.
type PinFull ¶
type PinFull struct {
PinID string `json:"pinId"`
ResourceID ResourceID `json:"resourceId"`
GridX int64 `json:"gridX"`
GridY int64 `json:"gridY"`
GridW int64 `json:"gridW"`
GridH int64 `json:"gridH"`
DisplayName string `json:"displayName"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
AccountID string `json:"accountId"`
FieldsJSON JSONObject `json:"fieldsJson"`
OutputsJSON JSONObject `json:"outputsJson"`
PluginLogoSvg string `json:"pluginLogoSvg"`
PluginDisplayName string `json:"pluginDisplayName"`
Status ProbeStatus `json:"status"`
}
PinFull is the `PinFull` schema.
type PinRangeMetricSeries ¶
type PinRangeMetricSeries struct {
Label string `json:"label"`
Unit *string `json:"unit,omitempty"`
Points []PinRangeMetricSeriesPoints `json:"points"`
}
PinRangeMetricSeries is the `PinRangeMetricSeries` schema.
type PinRangeMetricSeriesPoints ¶
type PinRangeMetricSeriesPoints struct {
Timestamp float64 `json:"timestamp"`
Value float64 `json:"value"`
}
PinRangeMetricSeriesPoints is an object the spec declares inline.
type PinRangeResponse ¶
type PinRangeResponse struct {
Series []PinRangeMetricSeries `json:"series"`
}
PinRangeResponse is the `PinRangeResponse` schema.
type PinRequest ¶
type PinRequest struct {
DashboardID string `json:"dashboardId"`
ResourceID ResourceID `json:"resourceId"`
GridX *int64 `json:"gridX,omitempty"`
GridY *int64 `json:"gridY,omitempty"`
}
PinRequest is the `PinRequest` schema.
type PluginID ¶
type PluginID = string
PluginID: Manifest id of an installed plugin.
Spec schema: `PluginId`.
const ( PluginIDAnthropic PluginID = "anthropic" PluginIDAssemblyai PluginID = "assemblyai" PluginIDAWS PluginID = "aws" PluginIDAzure PluginID = "azure" PluginIDCartesia PluginID = "cartesia" PluginIDClickhouse PluginID = "clickhouse" PluginIDCloudflare PluginID = "cloudflare" PluginIDCloudinary PluginID = "cloudinary" PluginIDCohere PluginID = "cohere" PluginIDDatabricks PluginID = "databricks" PluginIDDeepgram PluginID = "deepgram" PluginIDDeepseek PluginID = "deepseek" PluginIDDigitalocean PluginID = "digitalocean" PluginIDDocker PluginID = "docker" PluginIDElevenlabs PluginID = "elevenlabs" PluginIDFireworks PluginID = "fireworks" PluginIDFly PluginID = "fly" PluginIDGCP PluginID = "gcp" PluginIDGemini PluginID = "gemini" PluginIDGladia PluginID = "gladia" PluginIDGroq PluginID = "groq" PluginIDHetzner PluginID = "hetzner" PluginIDKafka PluginID = "kafka" PluginIDKubernetes PluginID = "kubernetes" PluginIDMemcached PluginID = "memcached" PluginIDMistral PluginID = "mistral" PluginIDMongodb PluginID = "mongodb" PluginIDMssql PluginID = "mssql" PluginIDMysql PluginID = "mysql" PluginIDNeon PluginID = "neon" PluginIDNetlify PluginID = "netlify" PluginIDOpenai PluginID = "openai" PluginIDOpenrouter PluginID = "openrouter" PluginIDOpensearch PluginID = "opensearch" PluginIDOVH PluginID = "ovh" PluginIDPlanetscale PluginID = "planetscale" PluginIDPostgres PluginID = "postgres" PluginIDRedis PluginID = "redis" PluginIDReplicate PluginID = "replicate" PluginIDRevai PluginID = "revai" PluginIDScaleway PluginID = "scaleway" PluginIDSpeechmatics PluginID = "speechmatics" PluginIDSSH PluginID = "ssh" PluginIDTogether PluginID = "together" PluginIDTurso PluginID = "turso" PluginIDVercel PluginID = "vercel" PluginIDXai PluginID = "xai" )
The values PluginID takes.
type PluginSummary ¶
type PluginSummary struct {
ID string `json:"id"`
DisplayName string `json:"displayName"`
LogoSvg string `json:"logoSvg"`
CredentialFields []CredentialField `json:"credentialFields"`
}
PluginSummary is the `PluginSummary` schema.
type ProbeRequest ¶
type ProbeRequest struct {
Items []ProbeRequestItems `json:"items"`
}
ProbeRequest is the `ProbeRequest` schema.
type ProbeRequestItems ¶
type ProbeRequestItems struct {
ResourceID ResourceID `json:"resourceId"`
AccountID string `json:"accountId"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
}
ProbeRequestItems is an object the spec declares inline.
type ProbeStatus ¶
type ProbeStatus struct {
// Phase: One of "ok", "error".
Phase string `json:"phase"`
Error *string `json:"error,omitempty"`
Stats []JSONObject `json:"stats,omitempty"`
Sparkline []ProbeStatusSparkline `json:"sparkline,omitempty"`
SparklineLabel *string `json:"sparklineLabel,omitempty"`
ResourceCounts []ProbeStatusResourceCounts `json:"resourceCounts,omitempty"`
}
ProbeStatus is the `ProbeStatus` schema.
type ProbeStatusResourceCounts ¶
type ProbeStatusResourceCounts struct {
TypeLabel string `json:"typeLabel"`
Count int64 `json:"count"`
}
ProbeStatusResourceCounts is an object the spec declares inline.
type ProbeStatusSparkline ¶
type ProbeStatusSparkline struct {
// Timestamp: Unix epoch milliseconds.
Timestamp float64 `json:"timestamp"`
Value float64 `json:"value"`
}
ProbeStatusSparkline is an object the spec declares inline.
type Profile ¶
type Profile struct {
ID string `json:"id"`
Email string `json:"email"`
EmailVerified bool `json:"emailVerified"`
FirstName *string `json:"firstName"`
LastName *string `json:"lastName"`
ProfilePictureURL *string `json:"profilePictureUrl"`
LastSignInAt *string `json:"lastSignInAt"`
CreatedAt string `json:"createdAt"`
// Identities: Connected OAuth accounts, if any
Identities []ProfileIdentities `json:"identities"`
}
Profile is the `Profile` schema.
type ProfileEmailChangeConfirmParams ¶
type ProfileEmailChangeConfirmParams struct {
// Body: the JSON request body.
Body *ProfileEmailChangeConfirmRequest
}
ProfileEmailChangeConfirmParams holds the parameters for `client.profile.emailChange.confirm`.
Every field is optional; pass nil to take the defaults.
type ProfileEmailChangeConfirmRequest ¶
type ProfileEmailChangeConfirmRequest struct {
Code string `json:"code"`
}
ProfileEmailChangeConfirmRequest is an object the spec declares inline.
type ProfileEmailChangeConfirmResponse ¶
type ProfileEmailChangeConfirmResponse struct {
Email string `json:"email"`
}
ProfileEmailChangeConfirmResponse is an object the spec declares inline.
type ProfileEmailChangeCreateParams ¶
type ProfileEmailChangeCreateParams struct {
// Body: the JSON request body.
Body *ProfileEmailChangeCreateRequest
}
ProfileEmailChangeCreateParams holds the parameters for `client.profile.emailChange.create`.
Every field is optional; pass nil to take the defaults.
type ProfileEmailChangeCreateRequest ¶
type ProfileEmailChangeCreateRequest struct {
NewEmail string `json:"newEmail"`
}
ProfileEmailChangeCreateRequest is an object the spec declares inline.
type ProfileEmailChangeCreateResponse ¶
type ProfileEmailChangeCreateResponse struct {
NewEmail string `json:"newEmail"`
ExpiresAt string `json:"expiresAt"`
}
ProfileEmailChangeCreateResponse is an object the spec declares inline.
type ProfileEmailChangeNamespace ¶
type ProfileEmailChangeNamespace struct {
// contains filtered or unexported fields
}
ProfileEmailChangeNamespace is `client.profile.emailChange`.
func (*ProfileEmailChangeNamespace) Confirm ¶
func (n *ProfileEmailChangeNamespace) Confirm(ctx context.Context, params *ProfileEmailChangeConfirmParams, opts ...RequestOption) (*ProfileEmailChangeConfirmResponse, error)
Confirm: Redeem an email change code
On success the account's email is the new address and it is marked verified.
POST /api/profile/email-change/confirm
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 403: Recent sign-in required. Send the user through sign-in again and retry; the request itself was well-formed.
func (*ProfileEmailChangeNamespace) Create ¶
func (n *ProfileEmailChangeNamespace) Create(ctx context.Context, params *ProfileEmailChangeCreateParams, opts ...RequestOption) (*ProfileEmailChangeCreateResponse, error)
Create: Send a confirmation code to a new email address
Starts an email change. The code goes to the new address and the account keeps its current address until `/api/profile/email-change/confirm` redeems it, so an abandoned or mistyped change is harmless.
POST /api/profile/email-change
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 403: Recent sign-in required. Send the user through sign-in again and retry; the request itself was well-formed.
type ProfileIdentities ¶
type ProfileIdentities struct {
// Provider: WorkOS OAuth provider id
Provider string `json:"provider"`
}
ProfileIdentities is an object the spec declares inline.
type ProfileMFAChallengeParams ¶
type ProfileMFAChallengeParams struct {
FactorID string
}
ProfileMFAChallengeParams holds the parameters for `client.profile.mfa.challenge`.
type ProfileMFADeleteParams ¶
type ProfileMFADeleteParams struct {
FactorID string
}
ProfileMFADeleteParams holds the parameters for `client.profile.mfa.delete`.
type ProfileMFANamespace ¶
type ProfileMFANamespace struct {
// contains filtered or unexported fields
}
ProfileMFANamespace is `client.profile.mfa`.
func (*ProfileMFANamespace) Challenge ¶
func (n *ProfileMFANamespace) Challenge(ctx context.Context, params ProfileMFAChallengeParams, opts ...RequestOption) (*ProfileMfachallengeResponse, error)
Challenge: Issue a fresh challenge for a factor
POST /api/profile/mfa/{factorId}/challenge
Raises on 401: Unauthenticated
Raises on 404: Not found
func (*ProfileMFANamespace) Create ¶
func (n *ProfileMFANamespace) Create(ctx context.Context, opts ...RequestOption) (*TOTPEnrollment, error)
Create: Begin TOTP enrolment
Creates the factor and a first challenge. The factor only becomes usable once a code is verified; abandon the flow by DELETEing the returned `factorId`.
POST /api/profile/mfa
Raises on 401: Unauthenticated
Raises on 403: Recent sign-in required. Send the user through sign-in again and retry; the request itself was well-formed.
func (*ProfileMFANamespace) Delete ¶
func (n *ProfileMFANamespace) Delete(ctx context.Context, params ProfileMFADeleteParams, opts ...RequestOption) (*OK, error)
Delete: Remove an authentication factor
DELETE /api/profile/mfa/{factorId}
Raises on 401: Unauthenticated
Raises on 403: Recent sign-in required. Send the user through sign-in again and retry; the request itself was well-formed.
Raises on 404: Not found
func (*ProfileMFANamespace) List ¶
func (n *ProfileMFANamespace) List(ctx context.Context, opts ...RequestOption) ([]AuthFactor, error)
List: List enrolled authentication factors
Includes factors whose enrolment was never confirmed — WorkOS does not expose a verified flag.
GET /api/profile/mfa
Raises on 401: Unauthenticated
func (*ProfileMFANamespace) Verify ¶
func (n *ProfileMFANamespace) Verify(ctx context.Context, params ProfileMFAVerifyParams, opts ...RequestOption) (*ProfileMfaverifyResponse, error)
Verify: Verify a code against a challenge
POST /api/profile/mfa/{factorId}/verify
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 404: Not found
type ProfileMFAVerifyParams ¶
type ProfileMFAVerifyParams struct {
FactorID string
// Body: the JSON request body.
Body *ProfileMfaverifyRequest
}
ProfileMFAVerifyParams holds the parameters for `client.profile.mfa.verify`.
type ProfileMfachallengeResponse ¶
type ProfileMfachallengeResponse struct {
ChallengeID string `json:"challengeId"`
}
ProfileMfachallengeResponse is an object the spec declares inline.
type ProfileMfaverifyRequest ¶
type ProfileMfaverifyRequest struct {
ChallengeID string `json:"challengeId"`
Code string `json:"code"`
}
ProfileMfaverifyRequest is an object the spec declares inline.
type ProfileMfaverifyResponse ¶
type ProfileMfaverifyResponse struct {
Verified bool `json:"verified"`
}
ProfileMfaverifyResponse is an object the spec declares inline.
type ProfileNamespace ¶
type ProfileNamespace struct {
// EmailChange: `client.profile.emailChange`.
EmailChange *ProfileEmailChangeNamespace
// MFA: `client.profile.mfa`.
MFA *ProfileMFANamespace
// Sessions: `client.profile.sessions`.
Sessions *ProfileSessionsNamespace
// contains filtered or unexported fields
}
ProfileNamespace is `client.profile`.
func (*ProfileNamespace) Delete ¶ added in v0.8.0
func (n *ProfileNamespace) Delete(ctx context.Context, opts ...RequestOption) (*AccountDeleted, error)
Delete: Delete the signed-in user's account
Irreversible. Organizations where the caller is the only member are deleted and their subscriptions cancelled; other memberships are simply removed. Refuses with `transfer_ownership_required` while the caller is the only owner of an organization other people belong to.
DELETE /api/profile
Raises on 401: Unauthenticated
Raises on 403: Recent sign-in required. Send the user through sign-in again and retry; the request itself was well-formed.
Raises on 409: The caller still solely owns a shared organization; nothing was deleted.
Raises on 502: A subscription could not be cancelled; nothing was deleted.
func (*ProfileNamespace) DeletionPreview ¶ added in v0.8.0
func (n *ProfileNamespace) DeletionPreview(ctx context.Context, opts ...RequestOption) (*AccountDeletionPreview, error)
DeletionPreview: What deleting this account would do
Read-only. Lets a confirmation screen name the organizations that go with the account, and the ones that must be handed over first.
GET /api/profile/deletion-preview
Raises on 401: Unauthenticated
func (*ProfileNamespace) Get ¶
func (n *ProfileNamespace) Get(ctx context.Context, opts ...RequestOption) (*Profile, error)
Get: The signed-in user's account profile
User-scoped, not organization-scoped: one WorkOS identity is shared across every organization the user belongs to.
GET /api/profile
Raises on 401: Unauthenticated
func (*ProfileNamespace) PasswordReset ¶
func (n *ProfileNamespace) PasswordReset(ctx context.Context, opts ...RequestOption) (*ProfilePasswordResetResponse, error)
PasswordReset: Mint a password reset link for the signed-in user
Returns a one-time AuthKit-hosted reset URL rather than emailing it — the caller already holds a valid session for the account. Also the way to set a first password on an SSO or OAuth-only account.
POST /api/profile/password-reset
Raises on 401: Unauthenticated
Raises on 403: Recent sign-in required. Send the user through sign-in again and retry; the request itself was well-formed.
func (*ProfileNamespace) SendVerificationEmail ¶
func (n *ProfileNamespace) SendVerificationEmail(ctx context.Context, opts ...RequestOption) (*OK, error)
SendVerificationEmail: Re-send the email verification message
POST /api/profile/send-verification-email
Raises on 400: Bad request
Raises on 401: Unauthenticated
func (*ProfileNamespace) Update ¶
func (n *ProfileNamespace) Update(ctx context.Context, params *ProfileUpdateParams, opts ...RequestOption) (*ProfileSummary, error)
Update: Update the signed-in user's name
PATCH /api/profile
Raises on 400: Bad request
Raises on 401: Unauthenticated
type ProfilePasswordResetResponse ¶
type ProfilePasswordResetResponse struct {
PasswordResetURL string `json:"passwordResetUrl"`
ExpiresAt string `json:"expiresAt"`
}
ProfilePasswordResetResponse is an object the spec declares inline.
type ProfileSessionsDeleteParams ¶
type ProfileSessionsDeleteParams struct {
SessionID string
}
ProfileSessionsDeleteParams holds the parameters for `client.profile.sessions.delete`.
type ProfileSessionsNamespace ¶
type ProfileSessionsNamespace struct {
// contains filtered or unexported fields
}
ProfileSessionsNamespace is `client.profile.sessions`.
func (*ProfileSessionsNamespace) Delete ¶
func (n *ProfileSessionsNamespace) Delete(ctx context.Context, params ProfileSessionsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Revoke one session
Refuses the session making the request — use sign-out for that.
DELETE /api/profile/sessions/{sessionId}
Raises on 400: Bad request
Raises on 401: Unauthenticated
Raises on 404: Not found
func (*ProfileSessionsNamespace) List ¶
func (n *ProfileSessionsNamespace) List(ctx context.Context, opts ...RequestOption) ([]UserSession, error)
List: List the signed-in user's active sessions
GET /api/profile/sessions
Raises on 401: Unauthenticated
func (*ProfileSessionsNamespace) RevokeOthers ¶
func (n *ProfileSessionsNamespace) RevokeOthers(ctx context.Context, opts ...RequestOption) (*ProfileSessionsRevokeOthersResponse, error)
RevokeOthers: Revoke every session except the current one
POST /api/profile/sessions/revoke-others
Raises on 401: Unauthenticated
Raises on 403: Recent sign-in required. Send the user through sign-in again and retry; the request itself was well-formed.
type ProfileSessionsRevokeOthersResponse ¶
type ProfileSessionsRevokeOthersResponse struct {
Revoked int64 `json:"revoked"`
}
ProfileSessionsRevokeOthersResponse is an object the spec declares inline.
type ProfileSummary ¶
type ProfileSummary struct {
ID string `json:"id"`
Email string `json:"email"`
EmailVerified bool `json:"emailVerified"`
FirstName *string `json:"firstName"`
LastName *string `json:"lastName"`
ProfilePictureURL *string `json:"profilePictureUrl"`
LastSignInAt *string `json:"lastSignInAt"`
CreatedAt string `json:"createdAt"`
}
ProfileSummary is the `ProfileSummary` schema.
type ProfileUpdateParams ¶
type ProfileUpdateParams struct {
// Body: the JSON request body.
Body *ProfileUpdateRequest
}
ProfileUpdateParams holds the parameters for `client.profile.update`.
Every field is optional; pass nil to take the defaults.
type ProfileUpdateRequest ¶
type ProfileUpdateRequest struct {
FirstName *string `json:"firstName,omitempty"`
LastName *string `json:"lastName,omitempty"`
}
ProfileUpdateRequest is an object the spec declares inline.
type PushedCostRow ¶ added in v0.6.0
type PushedCostRow struct {
// Date: UTC day the spend belongs to.
Date string `json:"date"`
Currency string `json:"currency"`
// Amount: Money for this day/dimension combination. Negative for credits.
Amount float64 `json:"amount"`
// Service: Becomes a group/filter value.
Service *string `json:"service,omitempty"`
Region *string `json:"region,omitempty"`
// ResourceID: Opaque id of the thing being billed; groups the `resource`
// dimension.
ResourceID *string `json:"resourceId,omitempty"`
// Tags: Cost-allocation tags, at most 32. Keys starting with `infrawrench:`
// are reserved and rejected.
Tags map[string]string `json:"tags,omitempty"`
UsageAmount *float64 `json:"usageAmount,omitempty"`
UsageUnit *string `json:"usageUnit,omitempty"`
// AccountID: Attribute this row to a connected account. Must belong to the
// calling organization. Omit to attribute it to the source itself.
AccountID *string `json:"accountId,omitempty"`
}
PushedCostRow is the `PushedCostRow` schema.
type ReauthenticationRequired ¶
type ReauthenticationRequired struct {
// Error: Human-readable error message
Error string `json:"error"`
// Code: One of "reauthentication_required".
Code string `json:"code"`
}
ReauthenticationRequired is the `ReauthenticationRequired` schema.
type ReorderRequest ¶
type ReorderRequest struct {
Cards []ReorderRequestCards `json:"cards,omitempty"`
ResourceIDs []ResourceID `json:"resourceIds,omitempty"`
}
ReorderRequest is the `ReorderRequest` schema.
type ReorderRequestCards ¶
type ReorderRequestCards struct {
// Kind: One of "resource", "workflow", "widget".
Kind string `json:"kind"`
ID string `json:"id"`
}
ReorderRequestCards is an object the spec declares inline.
type RequestOption ¶
type RequestOption func(*requestConfig)
RequestOption overrides configuration for a single call. Cancellation and deadlines are not here on purpose: that is what the context.Context every method takes is for.
func WithQueryParam ¶
func WithQueryParam(name, value string) RequestOption
WithQueryParam appends a query parameter this call's signature does not describe — an escape hatch for a server that has grown a parameter the generated code has not caught up with.
func WithRequestHeader ¶
func WithRequestHeader(name, value string) RequestOption
WithRequestHeader sets a header on this call only, overriding any header of the same name set on the client.
type Resource ¶
type Resource struct {
ID ResourceID `json:"id"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
AccountID string `json:"accountId"`
DisplayName string `json:"displayName"`
ExternalID *string `json:"externalId"`
FieldsJSON JSONObject `json:"fieldsJson"`
OutputsJSON JSONObject `json:"outputsJson"`
ParentResourceID *ResourceID `json:"parentResourceId"`
}
Resource is the `Resource` schema.
type ResourceDetail ¶
type ResourceDetail struct {
DetailSchema JSONObject `json:"detailSchema"`
ChildResources []ChildResourceRef `json:"childResources"`
ChildTypes []ChildTypeRef `json:"childTypes"`
PluginID string `json:"pluginId"`
PluginLogoSvg string `json:"pluginLogoSvg"`
ResourceID ResourceID `json:"resourceId"`
AccountID string `json:"accountId"`
ResourceTypeID string `json:"resourceTypeId"`
PeerPanes []PeerPane `json:"peerPanes"`
PeerIntegrationStubs []PeerPaneStub `json:"peerIntegrationStubs"`
CanDelete bool `json:"canDelete"`
CanEdit bool `json:"canEdit"`
EditableFields []EditableField `json:"editableFields"`
CredentialFormats []CredentialFormat `json:"credentialFormats"`
HasManifestEditor bool `json:"hasManifestEditor"`
HasSecretVersions bool `json:"hasSecretVersions"`
ResourceDisplayName string `json:"resourceDisplayName"`
ResourceTypeLabel string `json:"resourceTypeLabel"`
ResourceFields JSONObject `json:"resourceFields"`
HasSQLEditor bool `json:"hasSqlEditor"`
HasStorageBrowser bool `json:"hasStorageBrowser"`
HasArtifactRegistry bool `json:"hasArtifactRegistry"`
HasKVBrowser bool `json:"hasKvBrowser"`
HasKVConsole bool `json:"hasKvConsole"`
KVDriverName *string `json:"kvDriverName,omitempty"`
IsMongoDB bool `json:"isMongoDb"`
HasDockerActions bool `json:"hasDockerActions"`
HasSSHTerminal bool `json:"hasSshTerminal"`
HasSFTPBrowser bool `json:"hasSftpBrowser"`
SSHHost *string `json:"sshHost"`
SSHPrivateHost *string `json:"sshPrivateHost,omitempty"`
DefaultSSHUsername *string `json:"defaultSshUsername"`
ContainerID string `json:"containerId"`
DatabaseName string `json:"databaseName"`
StorageBucketName string `json:"storageBucketName"`
SupportsMetrics bool `json:"supportsMetrics"`
}
ResourceDetail is the `ResourceDetail` schema.
type ResourceID ¶
type ResourceID = string
ResourceID: Composite id `pluginId:accountId:externalId`.
Spec schema: `ResourceId`.
type ResourceStatus ¶
type ResourceStatus = string
ResourceStatus: Normalized status reported by a plugin's renderSidebarItem/renderDetail.
const ( ResourceStatusHealthy ResourceStatus = "healthy" ResourceStatusDegraded ResourceStatus = "degraded" ResourceStatusError ResourceStatus = "error" ResourceStatusUnknown ResourceStatus = "unknown" ResourceStatusProvisioning ResourceStatus = "provisioning" ResourceStatusInfo ResourceStatus = "info" )
The values ResourceStatus takes.
type ResourceTypeID ¶
type ResourceTypeID = string
ResourceTypeID: Resource type id. Note: not every plugin exposes every type — see the plugin's `resourceTypes` for the valid (pluginId, typeId) pairs.
Spec schema: `ResourceTypeId`.
const ( ResourceTypeIDAccessApplication ResourceTypeID = "access-application" ResourceTypeIDAccessPolicy ResourceTypeID = "access-policy" ResourceTypeIDAccount ResourceTypeID = "account" ResourceTypeIDAcmCertificate ResourceTypeID = "acm-certificate" ResourceTypeIDAgentAPIKey ResourceTypeID = "agent-api-key" ResourceTypeIDAiGateway ResourceTypeID = "ai-gateway" ResourceTypeIDAiSearch ResourceTypeID = "ai-search" ResourceTypeIDAlb ResourceTypeID = "alb" ResourceTypeIDAlertPolicy ResourceTypeID = "alert-policy" ResourceTypeIDAlloydbCluster ResourceTypeID = "alloydb-cluster" ResourceTypeIDAlloydbInstance ResourceTypeID = "alloydb-instance" ResourceTypeIDAPIGateway ResourceTypeID = "api-gateway" ResourceTypeIDAPIKey ResourceTypeID = "api-key" ResourceTypeIDApp ResourceTypeID = "app" ResourceTypeIDAppEngineService ResourceTypeID = "app-engine-service" ResourceTypeIDApprunnerService ResourceTypeID = "apprunner-service" ResourceTypeIDArtifactRegistryRepo ResourceTypeID = "artifact-registry-repo" ResourceTypeIDAuditEvent ResourceTypeID = "audit-event" ResourceTypeIDAutoScalingGroup ResourceTypeID = "auto-scaling-group" ResourceTypeIDAzureAksCluster ResourceTypeID = "azure-aks-cluster" ResourceTypeIDAzureAppGateway ResourceTypeID = "azure-app-gateway" ResourceTypeIDAzureAppRegistration ResourceTypeID = "azure-app-registration" ResourceTypeIDAzureAppService ResourceTypeID = "azure-app-service" ResourceTypeIDAzureContainerInstance ResourceTypeID = "azure-container-instance" ResourceTypeIDAzureContainerRegistry ResourceTypeID = "azure-container-registry" ResourceTypeIDAzureCosmosDB ResourceTypeID = "azure-cosmos-db" ResourceTypeIDAzureDisk ResourceTypeID = "azure-disk" ResourceTypeIDAzureDNSZone ResourceTypeID = "azure-dns-zone" ResourceTypeIDAzureEventHub ResourceTypeID = "azure-event-hub" ResourceTypeIDAzureFirewall ResourceTypeID = "azure-firewall" ResourceTypeIDAzureFunctionApp ResourceTypeID = "azure-function-app" ResourceTypeIDAzureKeyVault ResourceTypeID = "azure-key-vault" ResourceTypeIDAzureLoadBalancer ResourceTypeID = "azure-load-balancer" ResourceTypeIDAzureLogAnalytics ResourceTypeID = "azure-log-analytics" ResourceTypeIDAzureManagedIdentity ResourceTypeID = "azure-managed-identity" ResourceTypeIDAzureMysqlFlexible ResourceTypeID = "azure-mysql-flexible" ResourceTypeIDAzureNatGateway ResourceTypeID = "azure-nat-gateway" ResourceTypeIDAzureNsg ResourceTypeID = "azure-nsg" ResourceTypeIDAzurePostgresFlexible ResourceTypeID = "azure-postgres-flexible" ResourceTypeIDAzurePrivateDNSZone ResourceTypeID = "azure-private-dns-zone" ResourceTypeIDAzurePublicIP ResourceTypeID = "azure-public-ip" ResourceTypeIDAzureRedisCache ResourceTypeID = "azure-redis-cache" ResourceTypeIDAzureResourceGroup ResourceTypeID = "azure-resource-group" ResourceTypeIDAzureRouteTable ResourceTypeID = "azure-route-table" ResourceTypeIDAzureServiceBus ResourceTypeID = "azure-service-bus" ResourceTypeIDAzureSQLDatabase ResourceTypeID = "azure-sql-database" ResourceTypeIDAzureStorageAccount ResourceTypeID = "azure-storage-account" ResourceTypeIDAzureSubnet ResourceTypeID = "azure-subnet" ResourceTypeIDAzureVM ResourceTypeID = "azure-vm" ResourceTypeIDAzureVnet ResourceTypeID = "azure-vnet" ResourceTypeIDBackendService ResourceTypeID = "backend-service" ResourceTypeIDBackupVault ResourceTypeID = "backup-vault" ResourceTypeIDBalance ResourceTypeID = "balance" ResourceTypeIDBatch ResourceTypeID = "batch" ResourceTypeIDBatchInferenceJob ResourceTypeID = "batch-inference-job" ResourceTypeIDBatchJobQueue ResourceTypeID = "batch-job-queue" ResourceTypeIDBedrockModel ResourceTypeID = "bedrock-model" ResourceTypeIDBigqueryDataset ResourceTypeID = "bigquery-dataset" ResourceTypeIDBigqueryTable ResourceTypeID = "bigquery-table" ResourceTypeIDBigtableInstance ResourceTypeID = "bigtable-instance" ResourceTypeIDBlockVolume ResourceTypeID = "block-volume" ResourceTypeIDCacheRule ResourceTypeID = "cache-rule" ResourceTypeIDCachedContent ResourceTypeID = "cached-content" ResourceTypeIDCertificate ResourceTypeID = "certificate" ResourceTypeIDChDatabase ResourceTypeID = "ch-database" ResourceTypeIDChService ResourceTypeID = "ch-service" ResourceTypeIDCloudArmorPolicy ResourceTypeID = "cloud-armor-policy" ResourceTypeIDCloudBuildTrigger ResourceTypeID = "cloud-build-trigger" ResourceTypeIDCloudDeployPipeline ResourceTypeID = "cloud-deploy-pipeline" ResourceTypeIDCloudDNSRecordSet ResourceTypeID = "cloud-dns-record-set" ResourceTypeIDCloudDNSZone ResourceTypeID = "cloud-dns-zone" ResourceTypeIDCloudFunction ResourceTypeID = "cloud-function" ResourceTypeIDCloudNat ResourceTypeID = "cloud-nat" ResourceTypeIDCloudRouter ResourceTypeID = "cloud-router" ResourceTypeIDCloudRunService ResourceTypeID = "cloud-run-service" ResourceTypeIDCloudSchedulerJob ResourceTypeID = "cloud-scheduler-job" ResourceTypeIDCloudTasksQueue ResourceTypeID = "cloud-tasks-queue" ResourceTypeIDCloudformationStack ResourceTypeID = "cloudformation-stack" ResourceTypeIDCloudfrontDistribution ResourceTypeID = "cloudfront-distribution" ResourceTypeIDCloudsqlInstance ResourceTypeID = "cloudsql-instance" ResourceTypeIDCloudtrailTrail ResourceTypeID = "cloudtrail-trail" ResourceTypeIDCloudwatchAlarm ResourceTypeID = "cloudwatch-alarm" ResourceTypeIDCloudwatchLogGroup ResourceTypeID = "cloudwatch-log-group" ResourceTypeIDCodebuildProject ResourceTypeID = "codebuild-project" ResourceTypeIDCodepipelinePipeline ResourceTypeID = "codepipeline-pipeline" ResourceTypeIDCognitoUserPool ResourceTypeID = "cognito-user-pool" ResourceTypeIDCollection ResourceTypeID = "collection" ResourceTypeIDComposerEnvironment ResourceTypeID = "composer-environment" ResourceTypeIDContainer ResourceTypeID = "container" ResourceTypeIDContainerRegistry ResourceTypeID = "container-registry" ResourceTypeIDCustomHostname ResourceTypeID = "custom-hostname" ResourceTypeIDCustomVoice ResourceTypeID = "custom-voice" ResourceTypeIDD1Database ResourceTypeID = "d1-database" ResourceTypeIDDatabricksApp ResourceTypeID = "databricks-app" ResourceTypeIDDatabricksCatalog ResourceTypeID = "databricks-catalog" ResourceTypeIDDatabricksCluster ResourceTypeID = "databricks-cluster" ResourceTypeIDDatabricksClusterPolicy ResourceTypeID = "databricks-cluster-policy" ResourceTypeIDDatabricksDashboard ResourceTypeID = "databricks-dashboard" ResourceTypeIDDatabricksFunction ResourceTypeID = "databricks-function" ResourceTypeIDDatabricksJob ResourceTypeID = "databricks-job" ResourceTypeIDDatabricksModelVersion ResourceTypeID = "databricks-model-version" ResourceTypeIDDatabricksNodeType ResourceTypeID = "databricks-node-type" ResourceTypeIDDatabricksPipeline ResourceTypeID = "databricks-pipeline" ResourceTypeIDDatabricksRegisteredModel ResourceTypeID = "databricks-registered-model" ResourceTypeIDDatabricksRepo ResourceTypeID = "databricks-repo" ResourceTypeIDDatabricksSchema ResourceTypeID = "databricks-schema" ResourceTypeIDDatabricksSecretScope ResourceTypeID = "databricks-secret-scope" ResourceTypeIDDatabricksServingEndpoint ResourceTypeID = "databricks-serving-endpoint" ResourceTypeIDDatabricksSQLQuery ResourceTypeID = "databricks-sql-query" ResourceTypeIDDatabricksSQLWarehouse ResourceTypeID = "databricks-sql-warehouse" ResourceTypeIDDatabricksTable ResourceTypeID = "databricks-table" ResourceTypeIDDatabricksVectorSearchEndpoint ResourceTypeID = "databricks-vector-search-endpoint" ResourceTypeIDDatabricksVectorSearchIndex ResourceTypeID = "databricks-vector-search-index" ResourceTypeIDDatabricksVolume ResourceTypeID = "databricks-volume" ResourceTypeIDDatabricksWorkspaceObject ResourceTypeID = "databricks-workspace-object" ResourceTypeIDDataflowJob ResourceTypeID = "dataflow-job" ResourceTypeIDDataset ResourceTypeID = "dataset" ResourceTypeIDDBUser ResourceTypeID = "db-user" ResourceTypeIDDedicatedInference ResourceTypeID = "dedicated-inference" ResourceTypeIDDeployedModel ResourceTypeID = "deployed-model" ResourceTypeIDDeployment ResourceTypeID = "deployment" ResourceTypeIDDNSRecord ResourceTypeID = "dns-record" ResourceTypeIDDockerContainer ResourceTypeID = "docker-container" ResourceTypeIDDockerImage ResourceTypeID = "docker-image" ResourceTypeIDDockerNetwork ResourceTypeID = "docker-network" ResourceTypeIDDockerVolume ResourceTypeID = "docker-volume" ResourceTypeIDDocumentdbCluster ResourceTypeID = "documentdb-cluster" ResourceTypeIDDoksCluster ResourceTypeID = "doks-cluster" ResourceTypeIDDomain ResourceTypeID = "domain" ResourceTypeIDDroplet ResourceTypeID = "droplet" ResourceTypeIDDurableObjectNamespace ResourceTypeID = "durable-object-namespace" ResourceTypeIDDynamodbTable ResourceTypeID = "dynamodb-table" ResourceTypeIDEbsVolume ResourceTypeID = "ebs-volume" ResourceTypeIDEc2Instance ResourceTypeID = "ec2-instance" ResourceTypeIDEcrRepository ResourceTypeID = "ecr-repository" ResourceTypeIDEcsService ResourceTypeID = "ecs-service" ResourceTypeIDEfsFileSystem ResourceTypeID = "efs-file-system" ResourceTypeIDEksCluster ResourceTypeID = "eks-cluster" ResourceTypeIDElasticIP ResourceTypeID = "elastic-ip" ResourceTypeIDElasticacheCluster ResourceTypeID = "elasticache-cluster" ResourceTypeIDEmailRoutingRule ResourceTypeID = "email-routing-rule" ResourceTypeIDEmbedJob ResourceTypeID = "embed-job" ResourceTypeIDEndpoint ResourceTypeID = "endpoint" ResourceTypeIDEval ResourceTypeID = "eval" ResourceTypeIDEvaluation ResourceTypeID = "evaluation" ResourceTypeIDEventbridgeRule ResourceTypeID = "eventbridge-rule" ResourceTypeIDFile ResourceTypeID = "file" ResourceTypeIDFileSearchDocument ResourceTypeID = "file-search-document" ResourceTypeIDFileSearchStore ResourceTypeID = "file-search-store" ResourceTypeIDFineTune ResourceTypeID = "fine-tune" ResourceTypeIDFineTuningJob ResourceTypeID = "fine-tuning-job" ResourceTypeIDFinetunedModel ResourceTypeID = "finetuned-model" ResourceTypeIDFirestoreDatabase ResourceTypeID = "firestore-database" ResourceTypeIDFirewall ResourceTypeID = "firewall" ResourceTypeIDFirewallRule ResourceTypeID = "firewall-rule" ResourceTypeIDFloatingIP ResourceTypeID = "floating-ip" ResourceTypeIDFolder ResourceTypeID = "folder" ResourceTypeIDForwardingRule ResourceTypeID = "forwarding-rule" ResourceTypeIDGateway ResourceTypeID = "gateway" ResourceTypeIDGceDisk ResourceTypeID = "gce-disk" ResourceTypeIDGceInstance ResourceTypeID = "gce-instance" ResourceTypeIDGCPProject ResourceTypeID = "gcp-project" ResourceTypeIDGCPServiceAccount ResourceTypeID = "gcp-service-account" ResourceTypeIDGcsBucket ResourceTypeID = "gcs-bucket" ResourceTypeIDGenAiAgent ResourceTypeID = "gen-ai-agent" ResourceTypeIDGenAiKnowledgeBase ResourceTypeID = "gen-ai-knowledge-base" ResourceTypeIDGenAiModelRouter ResourceTypeID = "gen-ai-model-router" ResourceTypeIDGkeCluster ResourceTypeID = "gke-cluster" ResourceTypeIDGlueDatabase ResourceTypeID = "glue-database" ResourceTypeIDGroqBatch ResourceTypeID = "groq-batch" ResourceTypeIDGroqFile ResourceTypeID = "groq-file" ResourceTypeIDGroqFineTuning ResourceTypeID = "groq-fine-tuning" ResourceTypeIDGroqModel ResourceTypeID = "groq-model" ResourceTypeIDHardware ResourceTypeID = "hardware" ResourceTypeIDHealthCheck ResourceTypeID = "health-check" ResourceTypeIDHealthcheck ResourceTypeID = "healthcheck" ResourceTypeIDHistoryItem ResourceTypeID = "history-item" ResourceTypeIDHyperdrive ResourceTypeID = "hyperdrive" ResourceTypeIDIamRole ResourceTypeID = "iam-role" ResourceTypeIDIamUser ResourceTypeID = "iam-user" ResourceTypeIDImage ResourceTypeID = "image" ResourceTypeIDInferenceBatch ResourceTypeID = "inference-batch" ResourceTypeIDInstance ResourceTypeID = "instance" ResourceTypeIDInstanceGroup ResourceTypeID = "instance-group" ResourceTypeIDInstanceTemplate ResourceTypeID = "instance-template" ResourceTypeIDInternetGateway ResourceTypeID = "internet-gateway" ResourceTypeIDInvite ResourceTypeID = "invite" ResourceTypeIDIPAccessRule ResourceTypeID = "ip-access-rule" ResourceTypeIDIPAllocation ResourceTypeID = "ip-allocation" ResourceTypeIDJob ResourceTypeID = "job" ResourceTypeIDK8sCluster ResourceTypeID = "k8s-cluster" ResourceTypeIDK8sConfigmap ResourceTypeID = "k8s-configmap" ResourceTypeIDK8sCronjob ResourceTypeID = "k8s-cronjob" ResourceTypeIDK8sDaemonset ResourceTypeID = "k8s-daemonset" ResourceTypeIDK8sDeployment ResourceTypeID = "k8s-deployment" ResourceTypeIDK8sIngress ResourceTypeID = "k8s-ingress" ResourceTypeIDK8sJob ResourceTypeID = "k8s-job" ResourceTypeIDK8sNamespace ResourceTypeID = "k8s-namespace" ResourceTypeIDK8sNode ResourceTypeID = "k8s-node" ResourceTypeIDK8sPod ResourceTypeID = "k8s-pod" ResourceTypeIDK8sSecret ResourceTypeID = "k8s-secret" ResourceTypeIDK8sService ResourceTypeID = "k8s-service" ResourceTypeIDK8sStatefulset ResourceTypeID = "k8s-statefulset" ResourceTypeIDKafkaCluster ResourceTypeID = "kafka-cluster" ResourceTypeIDKafkaConsumerGroup ResourceTypeID = "kafka-consumer-group" ResourceTypeIDKafkaTopic ResourceTypeID = "kafka-topic" ResourceTypeIDKapsuleCluster ResourceTypeID = "kapsule-cluster" ResourceTypeIDKinesisStream ResourceTypeID = "kinesis-stream" ResourceTypeIDKmsKey ResourceTypeID = "kms-key" ResourceTypeIDKmsKeyRing ResourceTypeID = "kms-key-ring" ResourceTypeIDKVNamespace ResourceTypeID = "kv-namespace" ResourceTypeIDLambdaFunction ResourceTypeID = "lambda-function" ResourceTypeIDLoadBalancer ResourceTypeID = "load-balancer" ResourceTypeIDLogSink ResourceTypeID = "log-sink" ResourceTypeIDLogpushJob ResourceTypeID = "logpush-job" ResourceTypeIDMachine ResourceTypeID = "machine" ResourceTypeIDManagedDatabase ResourceTypeID = "managed-database" ResourceTypeIDManagedDB ResourceTypeID = "managed-db" ResourceTypeIDManagedEndpoint ResourceTypeID = "managed-endpoint" ResourceTypeIDManagedKube ResourceTypeID = "managed-kube" ResourceTypeIDMediaAsset ResourceTypeID = "media-asset" ResourceTypeIDMember ResourceTypeID = "member" ResourceTypeIDMemcachedInstance ResourceTypeID = "memcached-instance" ResourceTypeIDMemorystoreMemcached ResourceTypeID = "memorystore-memcached" ResourceTypeIDMemorystoreRedis ResourceTypeID = "memorystore-redis" ResourceTypeIDMessageBatch ResourceTypeID = "message-batch" ResourceTypeIDMistralAPIKey ResourceTypeID = "mistral-api-key" ResourceTypeIDMistralBatchJob ResourceTypeID = "mistral-batch-job" ResourceTypeIDMistralFile ResourceTypeID = "mistral-file" ResourceTypeIDMistralFineTuningJob ResourceTypeID = "mistral-fine-tuning-job" ResourceTypeIDMistralModel ResourceTypeID = "mistral-model" ResourceTypeIDMistralVoice ResourceTypeID = "mistral-voice" ResourceTypeIDModel ResourceTypeID = "model" ResourceTypeIDModelAPIKey ResourceTypeID = "model-api-key" ResourceTypeIDModelEndpoint ResourceTypeID = "model-endpoint" ResourceTypeIDMongodbDatabase ResourceTypeID = "mongodb-database" ResourceTypeIDMqBroker ResourceTypeID = "mq-broker" ResourceTypeIDMskCluster ResourceTypeID = "msk-cluster" ResourceTypeIDMssqlDatabase ResourceTypeID = "mssql-database" ResourceTypeIDMysqlDatabase ResourceTypeID = "mysql-database" ResourceTypeIDNatGateway ResourceTypeID = "nat-gateway" ResourceTypeIDNeonAiGateway ResourceTypeID = "neon-ai-gateway" ResourceTypeIDNeonAuth ResourceTypeID = "neon-auth" ResourceTypeIDNeonAuthDomain ResourceTypeID = "neon-auth-domain" ResourceTypeIDNeonAuthOAuthProvider ResourceTypeID = "neon-auth-oauth-provider" ResourceTypeIDNeonBranch ResourceTypeID = "neon-branch" ResourceTypeIDNeonBucket ResourceTypeID = "neon-bucket" ResourceTypeIDNeonCredential ResourceTypeID = "neon-credential" ResourceTypeIDNeonDataAPI ResourceTypeID = "neon-data-api" ResourceTypeIDNeonDatabase ResourceTypeID = "neon-database" ResourceTypeIDNeonEndpoint ResourceTypeID = "neon-endpoint" ResourceTypeIDNeonFunction ResourceTypeID = "neon-function" ResourceTypeIDNeonProject ResourceTypeID = "neon-project" ResourceTypeIDNeonRole ResourceTypeID = "neon-role" ResourceTypeIDNeonSnapshot ResourceTypeID = "neon-snapshot" ResourceTypeIDNeptuneCluster ResourceTypeID = "neptune-cluster" ResourceTypeIDNetlifyBuildHook ResourceTypeID = "netlify-build-hook" ResourceTypeIDNetlifyDeploy ResourceTypeID = "netlify-deploy" ResourceTypeIDNetlifyDNSRecord ResourceTypeID = "netlify-dns-record" ResourceTypeIDNetlifyDNSZone ResourceTypeID = "netlify-dns-zone" ResourceTypeIDNetlifyEnvVar ResourceTypeID = "netlify-env-var" ResourceTypeIDNetlifyForm ResourceTypeID = "netlify-form" ResourceTypeIDNetlifySite ResourceTypeID = "netlify-site" ResourceTypeIDNetwork ResourceTypeID = "network" ResourceTypeIDNotificationPolicy ResourceTypeID = "notification-policy" ResourceTypeIDObjectStorageBucket ResourceTypeID = "object-storage-bucket" ResourceTypeIDOpensearchCluster ResourceTypeID = "opensearch-cluster" ResourceTypeIDOpensearchDomain ResourceTypeID = "opensearch-domain" ResourceTypeIDOrganizationUser ResourceTypeID = "organization-user" ResourceTypeIDPageRule ResourceTypeID = "page-rule" ResourceTypeIDPgDatabase ResourceTypeID = "pg-database" ResourceTypeIDPgSchema ResourceTypeID = "pg-schema" ResourceTypeIDPlacementGroup ResourceTypeID = "placement-group" ResourceTypeIDPrediction ResourceTypeID = "prediction" ResourceTypeIDPrimaryIP ResourceTypeID = "primary-ip" ResourceTypeIDPrivateNetwork ResourceTypeID = "private-network" ResourceTypeIDProject ResourceTypeID = "project" ResourceTypeIDProjectAPIKey ResourceTypeID = "project-api-key" ResourceTypeIDPronunciationDict ResourceTypeID = "pronunciation-dict" ResourceTypeIDPronunciationDictionary ResourceTypeID = "pronunciation-dictionary" ResourceTypeIDProvider ResourceTypeID = "provider" ResourceTypeIDPsBackup ResourceTypeID = "ps-backup" ResourceTypeIDPsBranch ResourceTypeID = "ps-branch" ResourceTypeIDPsDatabase ResourceTypeID = "ps-database" ResourceTypeIDPsDeployRequest ResourceTypeID = "ps-deploy-request" ResourceTypeIDPsPassword ResourceTypeID = "ps-password" ResourceTypeIDPubsubSubscription ResourceTypeID = "pubsub-subscription" ResourceTypeIDPubsubTopic ResourceTypeID = "pubsub-topic" ResourceTypeIDQueue ResourceTypeID = "queue" ResourceTypeIDQuota ResourceTypeID = "quota" ResourceTypeIDR2Bucket ResourceTypeID = "r2-bucket" ResourceTypeIDRateLimitRule ResourceTypeID = "rate-limit-rule" ResourceTypeIDRdbInstance ResourceTypeID = "rdb-instance" ResourceTypeIDRdsCluster ResourceTypeID = "rds-cluster" ResourceTypeIDRdsInstance ResourceTypeID = "rds-instance" ResourceTypeIDRedirectRule ResourceTypeID = "redirect-rule" ResourceTypeIDRedisInstance ResourceTypeID = "redis-instance" ResourceTypeIDRedshiftCluster ResourceTypeID = "redshift-cluster" ResourceTypeIDRouteTable ResourceTypeID = "route-table" ResourceTypeIDRoute53HealthCheck ResourceTypeID = "route53-health-check" ResourceTypeIDRoute53HostedZone ResourceTypeID = "route53-hosted-zone" ResourceTypeIDRoute53RecordSet ResourceTypeID = "route53-record-set" ResourceTypeIDS3Bucket ResourceTypeID = "s3-bucket" ResourceTypeIDSagemakerEndpoint ResourceTypeID = "sagemaker-endpoint" ResourceTypeIDSecret ResourceTypeID = "secret" ResourceTypeIDSecretManagerSecret ResourceTypeID = "secret-manager-secret" ResourceTypeIDSecretsManagerSecret ResourceTypeID = "secrets-manager-secret" ResourceTypeIDSecurityGroup ResourceTypeID = "security-group" ResourceTypeIDServer ResourceTypeID = "server" ResourceTypeIDSnapshot ResourceTypeID = "snapshot" ResourceTypeIDSnsTopic ResourceTypeID = "sns-topic" ResourceTypeIDSpacesBucket ResourceTypeID = "spaces-bucket" ResourceTypeIDSpannerBackup ResourceTypeID = "spanner-backup" ResourceTypeIDSpannerDatabase ResourceTypeID = "spanner-database" ResourceTypeIDSpannerInstance ResourceTypeID = "spanner-instance" ResourceTypeIDSpectrumApplication ResourceTypeID = "spectrum-application" ResourceTypeIDSqsQueue ResourceTypeID = "sqs-queue" ResourceTypeIDSSHKey ResourceTypeID = "ssh-key" ResourceTypeIDSSHTarget ResourceTypeID = "ssh-target" ResourceTypeIDSSLCertificate ResourceTypeID = "ssl-certificate" ResourceTypeIDSsmParameter ResourceTypeID = "ssm-parameter" ResourceTypeIDStaticIP ResourceTypeID = "static-ip" ResourceTypeIDStepFunction ResourceTypeID = "step-function" ResourceTypeIDSubnet ResourceTypeID = "subnet" ResourceTypeIDSupervisedFineTuningJob ResourceTypeID = "supervised-fine-tuning-job" ResourceTypeIDTargetGroup ResourceTypeID = "target-group" ResourceTypeIDTraining ResourceTypeID = "training" ResourceTypeIDTranscript ResourceTypeID = "transcript" ResourceTypeIDTranscription ResourceTypeID = "transcription" ResourceTypeIDTransformation ResourceTypeID = "transformation" ResourceTypeIDTunedModel ResourceTypeID = "tuned-model" ResourceTypeIDTunnel ResourceTypeID = "tunnel" ResourceTypeIDTurnstileWidget ResourceTypeID = "turnstile-widget" ResourceTypeIDTursoAPIToken ResourceTypeID = "turso-api-token" ResourceTypeIDTursoDatabase ResourceTypeID = "turso-database" ResourceTypeIDTursoDatabaseInstance ResourceTypeID = "turso-database-instance" ResourceTypeIDTursoGroup ResourceTypeID = "turso-group" ResourceTypeIDTursoLocation ResourceTypeID = "turso-location" ResourceTypeIDTursoOrganizationInvite ResourceTypeID = "turso-organization-invite" ResourceTypeIDTursoOrganizationMember ResourceTypeID = "turso-organization-member" ResourceTypeIDUploadPreset ResourceTypeID = "upload-preset" ResourceTypeIDVectorStore ResourceTypeID = "vector-store" ResourceTypeIDVectorizeIndex ResourceTypeID = "vectorize-index" ResourceTypeIDVercelDeployment ResourceTypeID = "vercel-deployment" ResourceTypeIDVercelDomain ResourceTypeID = "vercel-domain" ResourceTypeIDVercelEnvVar ResourceTypeID = "vercel-env-var" ResourceTypeIDVercelProject ResourceTypeID = "vercel-project" ResourceTypeIDVercelTeam ResourceTypeID = "vercel-team" ResourceTypeIDVertexAiEndpoint ResourceTypeID = "vertex-ai-endpoint" ResourceTypeIDVertexGeminiModel ResourceTypeID = "vertex-gemini-model" ResourceTypeIDVocabulary ResourceTypeID = "vocabulary" ResourceTypeIDVoice ResourceTypeID = "voice" ResourceTypeIDVolume ResourceTypeID = "volume" ResourceTypeIDVpc ResourceTypeID = "vpc" ResourceTypeIDVpcNetwork ResourceTypeID = "vpc-network" ResourceTypeIDWafWebACL ResourceTypeID = "waf-web-acl" ResourceTypeIDWaitingRoom ResourceTypeID = "waiting-room" ResourceTypeIDWorker ResourceTypeID = "worker" ResourceTypeIDWorkerRoute ResourceTypeID = "worker-route" ResourceTypeIDWorkersAiModel ResourceTypeID = "workers-ai-model" ResourceTypeIDWorkflow ResourceTypeID = "workflow" ResourceTypeIDWorkspace ResourceTypeID = "workspace" ResourceTypeIDZone ResourceTypeID = "zone" )
The values ResourceTypeID takes.
type ResourceTypeSummary ¶
type ResourceTypeSummary struct {
ID string `json:"id"`
DisplayName string `json:"displayName"`
PluralDisplayName *string `json:"pluralDisplayName,omitempty"`
ParentTypeID *string `json:"parentTypeId,omitempty"`
SupportsCreate bool `json:"supportsCreate"`
AttachTargets []ResourceTypeSummaryAttachTargets `json:"attachTargets,omitempty"`
IsSSHHost *bool `json:"isSshHost,omitempty"`
SSHTunnelAttachSource *bool `json:"sshTunnelAttachSource,omitempty"`
}
ResourceTypeSummary is the `ResourceTypeSummary` schema.
type ResourceTypeSummaryAttachTargets ¶
type ResourceTypeSummaryAttachTargets struct {
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
MatchField *string `json:"matchField,omitempty"`
Verb *string `json:"verb,omitempty"`
}
ResourceTypeSummaryAttachTargets is an object the spec declares inline.
type ResourcesAttachParams ¶
type ResourcesAttachParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body AttachRequest
}
ResourcesAttachParams holds the parameters for `client.resources.attach`.
type ResourcesCreateConfigParams ¶
type ResourcesCreateConfigParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CreateConfigRequest
}
ResourcesCreateConfigParams holds the parameters for `client.resources.createConfig`.
type ResourcesCreateCostEstimateParams ¶
type ResourcesCreateCostEstimateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CreateCostEstimateRequest
}
ResourcesCreateCostEstimateParams holds the parameters for `client.resources.createCostEstimate`.
type ResourcesCreateCostEstimateResponse ¶
type ResourcesCreateCostEstimateResponse struct {
Estimate JSONObject `json:"estimate"`
}
ResourcesCreateCostEstimateResponse is an object the spec declares inline.
type ResourcesCreateParams ¶
type ResourcesCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CreateResourceRequest
}
ResourcesCreateParams holds the parameters for `client.resources.create`.
type ResourcesCreatePricingParams ¶
type ResourcesCreatePricingParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body CreatePricingRequest
}
ResourcesCreatePricingParams holds the parameters for `client.resources.createPricing`.
type ResourcesDeleteParams ¶
type ResourcesDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
ResourceID ResourceID
AccountID string
ParentResourceID *ResourceID
}
ResourcesDeleteParams holds the parameters for `client.resources.delete`.
type ResourcesDescribeParams ¶
type ResourcesDescribeParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body DescribeRequest
}
ResourcesDescribeParams holds the parameters for `client.resources.describe`.
type ResourcesDetailParams ¶
type ResourcesDetailParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
ResourceID ResourceID
AccountID *string
ParentResourceID *ResourceID
// IncludePeerPanes: Default true. If false, peer panes are returned as
// stubs.
//
// One of "true", "false".
IncludePeerPanes *string
}
ResourcesDetailParams holds the parameters for `client.resources.detail`.
type ResourcesExportCredentialParams ¶
type ResourcesExportCredentialParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body ExportCredentialRequest
}
ResourcesExportCredentialParams holds the parameters for `client.resources.exportCredential`.
type ResourcesFieldActionParams ¶
type ResourcesFieldActionParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body FieldActionRequest
}
ResourcesFieldActionParams holds the parameters for `client.resources.fieldAction`.
type ResourcesImportYAMLParams ¶
type ResourcesImportYAMLParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
// Body: the JSON request body.
Body ImportYAMLRequest
}
ResourcesImportYAMLParams holds the parameters for `client.resources.importYaml`.
type ResourcesInvokeActionParams ¶
type ResourcesInvokeActionParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body InvokeActionRequest
}
ResourcesInvokeActionParams holds the parameters for `client.resources.invokeAction`.
type ResourcesLogsParams ¶
type ResourcesLogsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body LogsRequest
}
ResourcesLogsParams holds the parameters for `client.resources.logs`.
type ResourcesManifestCreateParams ¶
type ResourcesManifestCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body ApplyManifestRequest
}
ResourcesManifestCreateParams holds the parameters for `client.resources.manifest.create`.
type ResourcesManifestGetParams ¶
type ResourcesManifestGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
ResourceID ResourceID
AccountID string
ParentResourceID *ResourceID
}
ResourcesManifestGetParams holds the parameters for `client.resources.manifest.get`.
type ResourcesManifestNamespace ¶
type ResourcesManifestNamespace struct {
// contains filtered or unexported fields
}
ResourcesManifestNamespace is `client.resources.manifest`.
func (*ResourcesManifestNamespace) Create ¶
func (n *ResourcesManifestNamespace) Create(ctx context.Context, params ResourcesManifestCreateParams, opts ...RequestOption) (*OK, error)
Create: Apply an edited manifest to a resource
_Requires permission: `resources:write`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/manifest
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesManifestNamespace) Get ¶
func (n *ResourcesManifestNamespace) Get(ctx context.Context, params ResourcesManifestGetParams, opts ...RequestOption) (*Manifest, error)
Get: Fetch the raw manifest (YAML/JSON) for a resource
_Requires permission: `resources:read`._
GET /api/org/{orgId}/resources/{pluginId}/{typeId}/manifest
Raises on 400: Bad request
Raises on 404: Not found
type ResourcesMetricsParams ¶
type ResourcesMetricsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body MetricsRequest
}
ResourcesMetricsParams holds the parameters for `client.resources.metrics`.
type ResourcesNamespace ¶
type ResourcesNamespace struct {
// Manifest: `client.resources.manifest`.
Manifest *ResourcesManifestNamespace
// SecretVersions: `client.resources.secretVersions`.
SecretVersions *ResourcesSecretVersionsNamespace
// contains filtered or unexported fields
}
ResourcesNamespace is `client.resources`.
func (*ResourcesNamespace) Attach ¶
func (n *ResourcesNamespace) Attach(ctx context.Context, params ResourcesAttachParams, opts ...RequestOption) (*OK, error)
Attach: Attach a resource onto another (e.g. disk → VM)
_Requires permission: `resources:write`._
POST /api/org/{orgId}/resources/attach
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) Create ¶
func (n *ResourcesNamespace) Create(ctx context.Context, params ResourcesCreateParams, opts ...RequestOption) (*CreateResourceResponse, error)
Create: Create a new resource via its plugin
_Requires permission: `resources:write`._
POST /api/org/{orgId}/resources/create
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) CreateConfig ¶
func (n *ResourcesNamespace) CreateConfig(ctx context.Context, params ResourcesCreateConfigParams, opts ...RequestOption) (JSONObject, error)
CreateConfig: Get the dynamic create form for a resource type
Calls the plugin's `getCreateConfig`. The returned `CreateResourceConfig` is plugin-shaped — see `JsonObject`.
_Requires permission: `resources:write`._
POST /api/org/{orgId}/resources/create-config
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) CreateCostEstimate ¶
func (n *ResourcesNamespace) CreateCostEstimate(ctx context.Context, params ResourcesCreateCostEstimateParams, opts ...RequestOption) (*ResourcesCreateCostEstimateResponse, error)
CreateCostEstimate: Cost estimate for the current create form values
_Requires permission: `resources:read`._
POST /api/org/{orgId}/resources/create-cost-estimate
func (*ResourcesNamespace) CreatePricing ¶
func (n *ResourcesNamespace) CreatePricing(ctx context.Context, params ResourcesCreatePricingParams, opts ...RequestOption) (map[string]JSONObject, error)
CreatePricing: Pricing per size for a create form
_Requires permission: `resources:read`._
POST /api/org/{orgId}/resources/create-pricing
func (*ResourcesNamespace) Delete ¶
func (n *ResourcesNamespace) Delete(ctx context.Context, params ResourcesDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete a resource via the plugin
_Requires permission: `resources:delete`._
DELETE /api/org/{orgId}/resources/{pluginId}/{typeId}
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) Describe ¶
func (n *ResourcesNamespace) Describe(ctx context.Context, params ResourcesDescribeParams, opts ...RequestOption) (*DescribeResponse, error)
Describe: Get human-readable describe text for a resource
_Requires permission: `resources:read`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/describe
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) Detail ¶
func (n *ResourcesNamespace) Detail(ctx context.Context, params ResourcesDetailParams, opts ...RequestOption) (*ResourceDetail, error)
Detail: Full resource detail page payload
Performs a live `listResources` against the provider, falls back to DB on failure, and returns the plugin's `renderDetail` schema plus host-derived flags (SQL/KV/SSH availability, child resources, peer panes, etc).
_Requires permission: `resources:read`._
GET /api/org/{orgId}/resources/{pluginId}/{typeId}/detail
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) ExportCredential ¶
func (n *ResourcesNamespace) ExportCredential(ctx context.Context, params ResourcesExportCredentialParams, opts ...RequestOption) (*CredentialExport, error)
ExportCredential: Export a credential file for a resource (one-time reveal)
_Requires permission: `secrets:read`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/export-credential
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) FieldAction ¶
func (n *ResourcesNamespace) FieldAction(ctx context.Context, params ResourcesFieldActionParams, opts ...RequestOption) (*FieldActionResponse, error)
FieldAction: Execute an in-form field action (e.g. generate an IAM role)
Calls the plugin's `executeFieldAction`. Returns `{ value }` to assign to the field; for `select` fields the optional `option` should be spliced into the options list so the new value can be displayed.
POST /api/org/{orgId}/resources/field-action
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) ImportYAML ¶
func (n *ResourcesNamespace) ImportYAML(ctx context.Context, params ResourcesImportYAMLParams, opts ...RequestOption) (JSONObject, error)
ImportYAML: Bulk-import resources from YAML (kubectl apply -f equivalent)
_Requires permission: `resources:write`._
POST /api/org/{orgId}/resources/{pluginId}/import-yaml
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) InvokeAction ¶
func (n *ResourcesNamespace) InvokeAction(ctx context.Context, params ResourcesInvokeActionParams, opts ...RequestOption) (*OK, error)
InvokeAction: Invoke a plugin-defined action on a resource
_Requires permission: `resources:write`._
POST /api/org/{orgId}/resources/invoke-action
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) Logs ¶
func (n *ResourcesNamespace) Logs(ctx context.Context, params ResourcesLogsParams, opts ...RequestOption) (*LogsResponse, error)
Logs: Fetch logs for a resource
_Requires permission: `resources:read`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/logs
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) Metrics ¶
func (n *ResourcesNamespace) Metrics(ctx context.Context, params ResourcesMetricsParams, opts ...RequestOption) (*MetricsResponse, error)
Metrics: Fetch metric series for a resource
Historical points from the metrics store when the resource has accumulated any (resources pinned to a dashboard are polled continuously); otherwise the series are fetched live from the provider on demand.
_Requires permission: `resources:read`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/metrics
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) NoSQLCommand ¶
func (n *ResourcesNamespace) NoSQLCommand(ctx context.Context, params ResourcesNoSQLCommandParams, opts ...RequestOption) (*ResourcesNoSqlcommandResponse, error)
NoSQLCommand: Run a NoSQL document-browser command (e.g. MongoDB shell)
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/resources/nosql-command
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesNamespace) PeerPanes ¶
func (n *ResourcesNamespace) PeerPanes(ctx context.Context, params ResourcesPeerPanesParams, opts ...RequestOption) ([]PeerPane, error)
PeerPanes: Lazy-fetch peer-integration panes for a resource
_Requires permission: `resources:read`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/peer-panes
Raises on 404: Not found
func (*ResourcesNamespace) PickerResources ¶
func (n *ResourcesNamespace) PickerResources(ctx context.Context, params ResourcesPickerResourcesParams, opts ...RequestOption) ([]PickerResource, error)
PickerResources: Fetch options for a `resource-picker` field
_Requires permission: `resources:read`._
POST /api/org/{orgId}/resources/picker-resources
func (*ResourcesNamespace) Update ¶
func (n *ResourcesNamespace) Update(ctx context.Context, params ResourcesUpdateParams, opts ...RequestOption) (*UpdateResourceResponse, error)
Update: Update a resource via its plugin
Applies the supplied field changes upstream and persists the refreshed fields/display name to the DB. The body's `fields` map only carries the keys the caller actually changed.
POST /api/org/{orgId}/resources/update
Raises on 400: Bad request
Raises on 404: Not found
type ResourcesNoSQLCommandParams ¶
type ResourcesNoSQLCommandParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body NoSQLCommandRequest
}
ResourcesNoSQLCommandParams holds the parameters for `client.resources.nosqlCommand`.
type ResourcesNoSqlcommandResponse ¶
type ResourcesNoSqlcommandResponse struct {
Result JSONObject `json:"result"`
}
ResourcesNoSqlcommandResponse is an object the spec declares inline.
type ResourcesPeerPanesParams ¶
type ResourcesPeerPanesParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body PeerPanesRequest
}
ResourcesPeerPanesParams holds the parameters for `client.resources.peerPanes`.
type ResourcesPickerResourcesParams ¶
type ResourcesPickerResourcesParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body PickerResourcesRequest
}
ResourcesPickerResourcesParams holds the parameters for `client.resources.pickerResources`.
type ResourcesSecretVersionsAccessParams ¶
type ResourcesSecretVersionsAccessParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body SecretAccessRequest
}
ResourcesSecretVersionsAccessParams holds the parameters for `client.resources.secretVersions.access`.
type ResourcesSecretVersionsAddParams ¶
type ResourcesSecretVersionsAddParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body SecretAddRequest
}
ResourcesSecretVersionsAddParams holds the parameters for `client.resources.secretVersions.add`.
type ResourcesSecretVersionsGetParams ¶
type ResourcesSecretVersionsGetParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
ResourceID ResourceID
AccountID string
ParentResourceID *ResourceID
}
ResourcesSecretVersionsGetParams holds the parameters for `client.resources.secretVersions.get`.
type ResourcesSecretVersionsModifyParams ¶
type ResourcesSecretVersionsModifyParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
PluginID PluginID
TypeID ResourceTypeID
// Body: the JSON request body.
Body SecretModifyRequest
}
ResourcesSecretVersionsModifyParams holds the parameters for `client.resources.secretVersions.modify`.
type ResourcesSecretVersionsNamespace ¶
type ResourcesSecretVersionsNamespace struct {
// contains filtered or unexported fields
}
ResourcesSecretVersionsNamespace is `client.resources.secretVersions`.
func (*ResourcesSecretVersionsNamespace) Access ¶
func (n *ResourcesSecretVersionsNamespace) Access(ctx context.Context, params ResourcesSecretVersionsAccessParams, opts ...RequestOption) (*SecretAccessResponse, error)
Access: Reveal the plaintext value of a specific version (one-time)
_Requires permission: `secrets:read`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/secret-versions/access
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesSecretVersionsNamespace) Add ¶
func (n *ResourcesSecretVersionsNamespace) Add(ctx context.Context, params ResourcesSecretVersionsAddParams, opts ...RequestOption) (*SecretVersionResponse, error)
Add: Add a new secret version
_Requires permission: `secrets:write`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/secret-versions/add
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesSecretVersionsNamespace) Get ¶
func (n *ResourcesSecretVersionsNamespace) Get(ctx context.Context, params ResourcesSecretVersionsGetParams, opts ...RequestOption) (*SecretVersionsResponse, error)
Get: List secret versions for a versioned-secret resource
_Requires permission: `secrets:read`._
GET /api/org/{orgId}/resources/{pluginId}/{typeId}/secret-versions
Raises on 400: Bad request
Raises on 404: Not found
func (*ResourcesSecretVersionsNamespace) Modify ¶
func (n *ResourcesSecretVersionsNamespace) Modify(ctx context.Context, params ResourcesSecretVersionsModifyParams, opts ...RequestOption) (*SecretVersionResponse, error)
Modify: Enable/disable/destroy a secret version
_Requires permission: `secrets:write`._
POST /api/org/{orgId}/resources/{pluginId}/{typeId}/secret-versions/modify
Raises on 400: Bad request
Raises on 404: Not found
type ResourcesUpdateParams ¶
type ResourcesUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body UpdateResourceRequest
}
ResourcesUpdateParams holds the parameters for `client.resources.update`.
type Role ¶
type Role struct {
ID string `json:"id"`
Name string `json:"name"`
Description *string `json:"description"`
IsSystem bool `json:"isSystem"`
SystemKey *string `json:"systemKey"`
Permissions []Permission `json:"permissions"`
}
Role is the `Role` schema.
type RoleChangeRequest ¶
type RoleChangeRequest struct {
Role *OrganizationRole `json:"role,omitempty"`
RoleID *string `json:"roleId,omitempty"`
}
RoleChangeRequest is the `RoleChangeRequest` schema.
type RoleCreateRequest ¶
type RoleCreateRequest struct {
Name string `json:"name"`
Description *string `json:"description,omitempty"`
Permissions []Permission `json:"permissions"`
}
RoleCreateRequest is the `RoleCreateRequest` schema.
type RoleSummary ¶
type RoleSummary struct {
ID string `json:"id"`
Name string `json:"name"`
Description *string `json:"description"`
IsSystem bool `json:"isSystem"`
SystemKey *string `json:"systemKey"`
}
RoleSummary is the `RoleSummary` schema.
The API may send null in its place.
type RoleUpdateRequest ¶
type RoleUpdateRequest struct {
Name *string `json:"name,omitempty"`
Description *string `json:"description,omitempty"`
Permissions []Permission `json:"permissions,omitempty"`
}
RoleUpdateRequest is the `RoleUpdateRequest` schema.
type SFTPDeleteParams ¶
type SFTPDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SFTPDeleteRequest
}
SFTPDeleteParams holds the parameters for `client.sftp.delete`.
type SFTPDeleteRequest ¶
type SFTPDeleteRequest struct {
AccountID string `json:"accountId"`
Path string `json:"path"`
SSHKeyID *string `json:"sshKeyId,omitempty"`
SSHHost *string `json:"sshHost,omitempty"`
SSHUsername *string `json:"sshUsername,omitempty"`
IsDir bool `json:"isDir"`
}
SFTPDeleteRequest is the `SftpDeleteRequest` schema.
Spec schema: `SftpDeleteRequest`.
type SFTPDownloadParams ¶
type SFTPDownloadParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
AccountID string
// Paths: JSON-encoded array of remote paths
Paths string
BasePath *string
SSHKeyID *string
SSHHost *string
SSHUsername *string
}
SFTPDownloadParams holds the parameters for `client.sftp.download`.
type SFTPEntry ¶
type SFTPEntry struct {
// Key: Absolute remote path.
Key string `json:"key"`
Name string `json:"name"`
Size float64 `json:"size"`
LastModified string `json:"lastModified"`
IsDirectory bool `json:"isDirectory"`
ContentType *string `json:"contentType,omitempty"`
}
SFTPEntry is the `SftpEntry` schema.
Spec schema: `SftpEntry`.
type SFTPListParams ¶
type SFTPListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SFTPListRequest
}
SFTPListParams holds the parameters for `client.sftp.list`.
type SFTPListRequest ¶
type SFTPListRequest struct {
AccountID string `json:"accountId"`
Path string `json:"path"`
SSHKeyID *string `json:"sshKeyId,omitempty"`
SSHHost *string `json:"sshHost,omitempty"`
SSHUsername *string `json:"sshUsername,omitempty"`
}
SFTPListRequest is the `SftpListRequest` schema.
Spec schema: `SftpListRequest`.
type SFTPMkdirParams ¶
type SFTPMkdirParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SFTPPathRequest
}
SFTPMkdirParams holds the parameters for `client.sftp.mkdir`.
type SFTPNamespace ¶
type SFTPNamespace struct {
// contains filtered or unexported fields
}
SFTPNamespace is `client.sftp`.
func (*SFTPNamespace) Delete ¶
func (n *SFTPNamespace) Delete(ctx context.Context, params SFTPDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete a file or directory over SFTP
_Requires permission: `storage:write`._
POST /api/org/{orgId}/sftp/delete
Raises on 404: Not found
Raises on 500: Server error
func (*SFTPNamespace) Download ¶
func (n *SFTPNamespace) Download(ctx context.Context, params SFTPDownloadParams, opts ...RequestOption) (io.ReadCloser, error)
Download: Download one or many files via SFTP (zipped if more than one)
_Requires permission: `storage:read`._
GET /api/org/{orgId}/v1/sftp/download
Raises on 400: Bad request
Raises on 404: Not found
Raises on 500: Server error
func (*SFTPNamespace) List ¶
func (n *SFTPNamespace) List(ctx context.Context, params SFTPListParams, opts ...RequestOption) ([]SFTPEntry, error)
List: List a directory over SFTP
_Requires permission: `storage:read`._
POST /api/org/{orgId}/sftp/list
Raises on 404: Not found
Raises on 500: Server error
func (*SFTPNamespace) Mkdir ¶
func (n *SFTPNamespace) Mkdir(ctx context.Context, params SFTPMkdirParams, opts ...RequestOption) (*OK, error)
Mkdir: Create a directory over SFTP
_Requires permission: `storage:write`._
POST /api/org/{orgId}/sftp/mkdir
Raises on 404: Not found
Raises on 500: Server error
func (*SFTPNamespace) Upload ¶
func (n *SFTPNamespace) Upload(ctx context.Context, params SFTPUploadParams, opts ...RequestOption) (*OK, error)
Upload: Upload a file via SFTP
_Requires permission: `storage:write`._
POST /api/org/{orgId}/v1/sftp/upload
Raises on 400: Bad request
Raises on 404: Not found
type SFTPPathRequest ¶
type SFTPPathRequest struct {
AccountID string `json:"accountId"`
Path string `json:"path"`
SSHKeyID *string `json:"sshKeyId,omitempty"`
SSHHost *string `json:"sshHost,omitempty"`
SSHUsername *string `json:"sshUsername,omitempty"`
}
SFTPPathRequest is the `SftpPathRequest` schema.
Spec schema: `SftpPathRequest`.
type SFTPUploadForm ¶
type SFTPUploadForm struct {
AccountID string `json:"accountId"`
RemotePath string `json:"remotePath"`
File io.Reader `json:"file"`
SSHKeyID *string `json:"sshKeyId,omitempty"`
SSHHost *string `json:"sshHost,omitempty"`
SSHUsername *string `json:"sshUsername,omitempty"`
}
SFTPUploadForm is the `SftpUploadForm` schema.
Spec schema: `SftpUploadForm`.
type SFTPUploadParams ¶
type SFTPUploadParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: sent as `multipart/form-data`; the `io.Reader` field is the file.
Body SFTPUploadForm
}
SFTPUploadParams holds the parameters for `client.sftp.upload`.
type SQLEstimateParams ¶
type SQLEstimateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SQLEstimateRequest
}
SQLEstimateParams holds the parameters for `client.sql.estimate`.
type SQLEstimateRequest ¶
type SQLEstimateRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
SQL string `json:"sql"`
}
SQLEstimateRequest is the `SqlEstimateRequest` schema.
Spec schema: `SqlEstimateRequest`.
type SQLExecuteParams ¶
type SQLExecuteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SQLExecuteRequest
}
SQLExecuteParams holds the parameters for `client.sql.execute`.
type SQLExecuteRequest ¶
type SQLExecuteRequest struct {
AccountID string `json:"accountId"`
ResourceID *ResourceID `json:"resourceId,omitempty"`
ResourceTypeID *string `json:"resourceTypeId,omitempty"`
SQL string `json:"sql"`
Params []any `json:"params,omitempty"`
}
SQLExecuteRequest is the `SqlExecuteRequest` schema.
Spec schema: `SqlExecuteRequest`.
type SQLExecuteResponse ¶
type SQLExecuteResponse struct {
AffectedRows int64 `json:"affectedRows"`
}
SQLExecuteResponse is the `SqlExecuteResponse` schema.
Spec schema: `SqlExecuteResponse`.
type SQLNamespace ¶
type SQLNamespace struct {
// contains filtered or unexported fields
}
SQLNamespace is `client.sql`.
func (*SQLNamespace) Estimate ¶
func (n *SQLNamespace) Estimate(ctx context.Context, params SQLEstimateParams, opts ...RequestOption) (JSONObject, error)
Estimate: Dry-run cost estimate (e.g. BigQuery byte scan)
_Requires permission: `resources:read`._
POST /api/org/{orgId}/sql/estimate
Raises on 400: Bad request
Raises on 404: Not found
func (*SQLNamespace) Execute ¶
func (n *SQLNamespace) Execute(ctx context.Context, params SQLExecuteParams, opts ...RequestOption) (*SQLExecuteResponse, error)
Execute: Run an INSERT/UPDATE/DELETE/DDL statement
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/sql/execute
Raises on 400: Bad request
Raises on 404: Not found
func (*SQLNamespace) Query ¶
func (n *SQLNamespace) Query(ctx context.Context, params SQLQueryParams, opts ...RequestOption) (any, error)
Query: Run a read-only SQL query
Routes to the right driver: REST `executeQuery` (BigQuery, Databricks), per-resource SQL driver (Neon, Turso) or account-level SQL driver (Postgres, MySQL).
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/sql/query
Raises on 400: Bad request
Raises on 404: Not found
type SQLQueryParams ¶
type SQLQueryParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SQLQueryRequest
}
SQLQueryParams holds the parameters for `client.sql.query`.
type SQLQueryRequest ¶
type SQLQueryRequest struct {
AccountID string `json:"accountId"`
ResourceID *ResourceID `json:"resourceId,omitempty"`
ResourceTypeID *string `json:"resourceTypeId,omitempty"`
SQL string `json:"sql"`
}
SQLQueryRequest is the `SqlQueryRequest` schema.
Spec schema: `SqlQueryRequest`.
type SQLQueryResponse ¶
type SQLQueryResponse struct {
Rows []JSONObject `json:"rows"`
DurationMs *int64 `json:"durationMs,omitempty"`
}
SQLQueryResponse is the `SqlQueryResponse` schema.
Spec schema: `SqlQueryResponse`.
type SSHExecRequest ¶
type SSHExecRequest struct {
SSHHost string `json:"sshHost"`
SSHPort int64 `json:"sshPort"`
SSHUser string `json:"sshUser"`
SSHKeyID string `json:"sshKeyId"`
Command string `json:"command"`
}
SSHExecRequest is the `SshExecRequest` schema.
Spec schema: `SshExecRequest`.
type SSHExecResponse ¶
type SSHExecResponse struct {
Stdout string `json:"stdout"`
Stderr *string `json:"stderr,omitempty"`
Code int64 `json:"code"`
}
SSHExecResponse is the `SshExecResponse` schema.
Spec schema: `SshExecResponse`.
type SSHKey ¶
type SSHKey struct {
ID string `json:"id"`
Name string `json:"name"`
KeyType SSHKeyType `json:"keyType"`
IsImported bool `json:"isImported"`
Fingerprint *string `json:"fingerprint"`
PublicKey string `json:"publicKey"`
UserID string `json:"userId"`
OwnerEmail string `json:"ownerEmail"`
OwnerName string `json:"ownerName"`
CreatedAt string `json:"createdAt"`
}
SSHKey is the `SshKey` schema.
Spec schema: `SshKey`.
type SSHKeyType ¶
type SSHKeyType = string
SSHKeyType is the `SshKeyType` schema.
Spec schema: `SshKeyType`.
const ( SSHKeyTypeSSHRsa SSHKeyType = "ssh-rsa" SSHKeyTypeSSHEd25519 SSHKeyType = "ssh-ed25519" SSHKeyTypeSSHDss SSHKeyType = "ssh-dss" SSHKeyTypeEcdsaSha2Nistp256 SSHKeyType = "ecdsa-sha2-nistp256" SSHKeyTypeEcdsaSha2Nistp384 SSHKeyType = "ecdsa-sha2-nistp384" SSHKeyTypeEcdsaSha2Nistp521 SSHKeyType = "ecdsa-sha2-nistp521" SSHKeyTypeSkSSHEd25519OpensshCom SSHKeyType = "sk-ssh-ed25519@openssh.com" SSHKeyTypeSkEcdsaSha2Nistp256OpensshCom SSHKeyType = "sk-ecdsa-sha2-nistp256@openssh.com" )
The values SSHKeyType takes.
type SSHKeysCreateParams ¶
type SSHKeysCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body GenerateSSHKeyRequest
}
SSHKeysCreateParams holds the parameters for `client.sshKeys.create`.
type SSHKeysDeleteParams ¶
type SSHKeysDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
SSHKeysDeleteParams holds the parameters for `client.sshKeys.delete`.
type SSHKeysImportParams ¶
type SSHKeysImportParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body ImportSSHKeyRequest
}
SSHKeysImportParams holds the parameters for `client.sshKeys.import`.
type SSHKeysListParams ¶
type SSHKeysListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
SSHKeysListParams holds the parameters for `client.sshKeys.list`.
Every field is optional; pass nil to take the defaults.
type SSHKeysNamespace ¶
type SSHKeysNamespace struct {
// contains filtered or unexported fields
}
SSHKeysNamespace is `client.sshKeys`.
func (*SSHKeysNamespace) Create ¶
func (n *SSHKeysNamespace) Create(ctx context.Context, params SSHKeysCreateParams, opts ...RequestOption) (*GeneratedSSHKey, error)
Create: Generate a new Ed25519 keypair (private key returned once)
_Requires permission: `ssh-keys:write`._
POST /api/org/{orgId}/ssh-keys
Raises on 400: Bad request
func (*SSHKeysNamespace) Delete ¶
func (n *SSHKeysNamespace) Delete(ctx context.Context, params SSHKeysDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete an SSH key (owner only)
_Requires permission: `ssh-keys:write`._
DELETE /api/org/{orgId}/ssh-keys/{id}
func (*SSHKeysNamespace) Import ¶
func (n *SSHKeysNamespace) Import(ctx context.Context, params SSHKeysImportParams, opts ...RequestOption) (*ImportedSSHKey, error)
Import: Import an existing public key
_Requires permission: `ssh-keys:write`._
POST /api/org/{orgId}/ssh-keys/import
Raises on 400: Bad request
func (*SSHKeysNamespace) List ¶
func (n *SSHKeysNamespace) List(ctx context.Context, params *SSHKeysListParams, opts ...RequestOption) ([]SSHKey, error)
List: List org SSH keys
_Requires permission: `ssh-keys:read`._
GET /api/org/{orgId}/ssh-keys
type SSHTunnelCreateAccountRequest ¶
type SSHTunnelCreateAccountRequest struct {
SSHHost string `json:"sshHost"`
SSHPort int64 `json:"sshPort"`
SSHUser string `json:"sshUser"`
SSHKeyID string `json:"sshKeyId"`
RemoteHost string `json:"remoteHost"`
RemotePort int64 `json:"remotePort"`
PluginID string `json:"pluginId"`
DisplayName string `json:"displayName"`
Credentials map[string]string `json:"credentials"`
}
SSHTunnelCreateAccountRequest is the `SshTunnelCreateAccountRequest` schema.
Spec schema: `SshTunnelCreateAccountRequest`.
type SSHTunnelCreateAccountResponse ¶
type SSHTunnelCreateAccountResponse struct {
AccountID string `json:"accountId"`
}
SSHTunnelCreateAccountResponse is the `SshTunnelCreateAccountResponse` schema.
Spec schema: `SshTunnelCreateAccountResponse`.
type SSHTunnelsActiveParams ¶
type SSHTunnelsActiveParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
SSHTunnelsActiveParams holds the parameters for `client.sshTunnels.active`.
Every field is optional; pass nil to take the defaults.
type SSHTunnelsCloseParams ¶
type SSHTunnelsCloseParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SshtunnelsCloseRequest
}
SSHTunnelsCloseParams holds the parameters for `client.sshTunnels.close`.
type SSHTunnelsCreateAccountParams ¶
type SSHTunnelsCreateAccountParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SSHTunnelCreateAccountRequest
}
SSHTunnelsCreateAccountParams holds the parameters for `client.sshTunnels.createAccount`.
type SSHTunnelsExecParams ¶
type SSHTunnelsExecParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SSHExecRequest
}
SSHTunnelsExecParams holds the parameters for `client.sshTunnels.exec`.
type SSHTunnelsNamespace ¶
type SSHTunnelsNamespace struct {
// contains filtered or unexported fields
}
SSHTunnelsNamespace is `client.sshTunnels`.
func (*SSHTunnelsNamespace) Active ¶
func (n *SSHTunnelsNamespace) Active(ctx context.Context, params *SSHTunnelsActiveParams, opts ...RequestOption) (map[string]ActiveTunnel, error)
Active: List active tunnels for this org
_Requires permission: `resources:execute`._
GET /api/org/{orgId}/ssh-tunnels/active
func (*SSHTunnelsNamespace) Close ¶
func (n *SSHTunnelsNamespace) Close(ctx context.Context, params SSHTunnelsCloseParams, opts ...RequestOption) (*OK, error)
Close: Close a tunnel by id
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/ssh-tunnels/close
func (*SSHTunnelsNamespace) CreateAccount ¶
func (n *SSHTunnelsNamespace) CreateAccount(ctx context.Context, params SSHTunnelsCreateAccountParams, opts ...RequestOption) (*SSHTunnelCreateAccountResponse, error)
CreateAccount: Create an account whose traffic is tunneled over SSH
Verifies the SSH connection works before persisting.
_Requires permission: `accounts:write`._
POST /api/org/{orgId}/ssh-tunnels/create-account
Raises on 400: Bad request
Raises on 404: Not found
func (*SSHTunnelsNamespace) Exec ¶
func (n *SSHTunnelsNamespace) Exec(ctx context.Context, params SSHTunnelsExecParams, opts ...RequestOption) (*SSHExecResponse, error)
Exec: Run a command over SSH using an org SSH key
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/ssh-tunnels/exec
Raises on 400: Bad request
Raises on 404: Not found
func (*SSHTunnelsNamespace) Open ¶
func (n *SSHTunnelsNamespace) Open(ctx context.Context, params SSHTunnelsOpenParams, opts ...RequestOption) (*SshtunnelsOpenResponse, error)
Open: Re-open the tunnel for an existing account
_Requires permission: `resources:execute`._
POST /api/org/{orgId}/ssh-tunnels/open
Raises on 404: Not found
type SSHTunnelsOpenParams ¶
type SSHTunnelsOpenParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body SshtunnelsOpenRequest
}
SSHTunnelsOpenParams holds the parameters for `client.sshTunnels.open`.
type SearchHit ¶
type SearchHit struct {
ID ResourceID `json:"id"`
PluginID string `json:"pluginId"`
PluginDisplayName string `json:"pluginDisplayName"`
PluginLogoSvg string `json:"pluginLogoSvg"`
ResourceTypeID string `json:"resourceTypeId"`
ResourceTypeLabel string `json:"resourceTypeLabel"`
AccountID string `json:"accountId"`
AccountName string `json:"accountName"`
DisplayName string `json:"displayName"`
Subtitle *string `json:"subtitle,omitempty"`
}
SearchHit is the `SearchHit` schema.
type SearchListParams ¶
type SearchListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
Q *string
}
SearchListParams holds the parameters for `client.search.list`.
Every field is optional; pass nil to take the defaults.
type SearchNamespace ¶
type SearchNamespace struct {
// contains filtered or unexported fields
}
SearchNamespace is `client.search`.
func (*SearchNamespace) List ¶
func (n *SearchNamespace) List(ctx context.Context, params *SearchListParams, opts ...RequestOption) ([]SearchHit, error)
List: Search resources (capped at 50 hits) and workflows across the org
_Requires permission: `resources:read`._
GET /api/org/{orgId}/search
type SeatLimitResponse ¶ added in v0.12.0
type SeatLimitResponse struct {
Error string `json:"error"`
// Code: One of "seat_limit_reached".
Code string `json:"code"`
// SeatCount: Seats on the plan
SeatCount int64 `json:"seatCount"`
// SeatsUsed: Members plus pending unexpired invitations
SeatsUsed int64 `json:"seatsUsed"`
}
SeatLimitResponse is the `SeatLimitResponse` schema.
type SecretAccessRequest ¶
type SecretAccessRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
VersionID string `json:"versionId"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
SecretAccessRequest is the `SecretAccessRequest` schema.
type SecretAccessResponse ¶
type SecretAccessResponse struct {
Value string `json:"value"`
}
SecretAccessResponse is the `SecretAccessResponse` schema.
type SecretAddRequest ¶
type SecretAddRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
Value string `json:"value"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
SecretAddRequest is the `SecretAddRequest` schema.
type SecretExportTemplate ¶
type SecretExportTemplate struct {
ID string `json:"id"`
Label string `json:"label"`
Description *string `json:"description,omitempty"`
Entries []SecretExportTemplateEntries `json:"entries"`
}
SecretExportTemplate is the `SecretExportTemplate` schema.
type SecretExportTemplateEntries ¶
type SecretExportTemplateEntries struct {
OutputKey string `json:"outputKey"`
EnvKey string `json:"envKey"`
}
SecretExportTemplateEntries is an object the spec declares inline.
type SecretModifyRequest ¶
type SecretModifyRequest struct {
AccountID string `json:"accountId"`
ResourceID ResourceID `json:"resourceId"`
VersionID string `json:"versionId"`
// Action: One of "enable", "disable", "destroy".
Action string `json:"action"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
SecretModifyRequest is the `SecretModifyRequest` schema.
type SecretVersion ¶
type SecretVersion struct {
ID string `json:"id"`
// State: One of "enabled", "disabled", "destroyed".
State string `json:"state"`
// CreatedAt: ISO-8601.
CreatedAt string `json:"createdAt"`
// DestroyedAt: Set only when destroyed.
DestroyedAt *string `json:"destroyedAt,omitempty"`
IsLatest *bool `json:"isLatest,omitempty"`
}
SecretVersion is the `SecretVersion` schema.
type SecretVersionResponse ¶
type SecretVersionResponse struct {
Version SecretVersion `json:"version"`
}
SecretVersionResponse is the `SecretVersionResponse` schema.
type SecretVersionsResponse ¶
type SecretVersionsResponse struct {
Versions []SecretVersion `json:"versions"`
}
SecretVersionsResponse is the `SecretVersionsResponse` schema.
type Session ¶
type Session struct {
UserID string `json:"userId"`
Email *string `json:"email"`
NeedsOnboarding bool `json:"needsOnboarding"`
}
Session is the `Session` schema.
type SlackAvailableChannel ¶ added in v0.3.0
type SlackAvailableChannel struct {
ID string `json:"id"`
Name string `json:"name"`
IsPrivate bool `json:"isPrivate"`
}
SlackAvailableChannel is the `SlackAvailableChannel` schema.
type SlackChannel ¶ added in v0.3.0
type SlackChannel struct {
ID string `json:"id"`
InstallationID string `json:"installationId"`
// ChannelID: Slack channel id (C…/G…)
ChannelID string `json:"channelId"`
// ChannelName: Channel name without the leading #
ChannelName string `json:"channelName"`
IsPrivate bool `json:"isPrivate"`
SyncIncidents bool `json:"syncIncidents"`
BudgetAlerts bool `json:"budgetAlerts"`
// WorkflowPages: Alerts raised by a workflow calling infra.page(...)
WorkflowPages bool `json:"workflowPages"`
}
SlackChannel is the `SlackChannel` schema.
type SlackChannelCreate ¶ added in v0.3.0
type SlackChannelCreate struct {
InstallationID string `json:"installationId"`
ChannelID string `json:"channelId"`
ChannelName string `json:"channelName"`
IsPrivate *bool `json:"isPrivate,omitempty"`
SyncIncidents *bool `json:"syncIncidents,omitempty"`
BudgetAlerts *bool `json:"budgetAlerts,omitempty"`
WorkflowPages *bool `json:"workflowPages,omitempty"`
}
SlackChannelCreate is the `SlackChannelCreate` schema.
type SlackChannelUpdate ¶ added in v0.3.0
type SlackChannelUpdate struct {
SyncIncidents *bool `json:"syncIncidents,omitempty"`
BudgetAlerts *bool `json:"budgetAlerts,omitempty"`
WorkflowPages *bool `json:"workflowPages,omitempty"`
}
SlackChannelUpdate is the `SlackChannelUpdate` schema.
type SlackChannelsCreateParams ¶ added in v0.3.0
type SlackChannelsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body *SlackChannelCreate
}
SlackChannelsCreateParams holds the parameters for `client.slack.channels.create`.
Every field is optional; pass nil to take the defaults.
type SlackChannelsDeleteParams ¶ added in v0.3.0
type SlackChannelsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
SlackChannelsDeleteParams holds the parameters for `client.slack.channels.delete`.
type SlackChannelsNamespace ¶ added in v0.3.0
type SlackChannelsNamespace struct {
// contains filtered or unexported fields
}
SlackChannelsNamespace is `client.slack.channels`.
func (*SlackChannelsNamespace) Create ¶ added in v0.3.0
func (n *SlackChannelsNamespace) Create(ctx context.Context, params *SlackChannelsCreateParams, opts ...RequestOption) (*SlackChannel, error)
Create: Route alerts to a Slack channel
Adds a channel, or updates the trigger opt-ins of one already added. Each trigger defaults to enabled.
POST /api/org/{orgId}/slack/channels
Raises on 400: Bad request
Raises on 404: Not found
func (*SlackChannelsNamespace) Delete ¶ added in v0.3.0
func (n *SlackChannelsNamespace) Delete(ctx context.Context, params SlackChannelsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Stop routing alerts to a channel
DELETE /api/org/{orgId}/slack/channels/{id}
Raises on 404: Not found
func (*SlackChannelsNamespace) Update ¶ added in v0.3.0
func (n *SlackChannelsNamespace) Update(ctx context.Context, params SlackChannelsUpdateParams, opts ...RequestOption) (*SlackChannel, error)
Update: Change which alerts a channel receives
PATCH /api/org/{orgId}/slack/channels/{id}
Raises on 404: Not found
type SlackChannelsUpdateParams ¶ added in v0.3.0
type SlackChannelsUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body *SlackChannelUpdate
}
SlackChannelsUpdateParams holds the parameters for `client.slack.channels.update`.
type SlackInstallURLParams ¶ added in v0.3.0
type SlackInstallURLParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
SlackInstallURLParams holds the parameters for `client.slack.installUrl`.
Every field is optional; pass nil to take the defaults.
type SlackInstallUrlresponse ¶ added in v0.3.0
type SlackInstallUrlresponse struct {
URL string `json:"url"`
}
SlackInstallUrlresponse is an object the spec declares inline.
type SlackInstallation ¶ added in v0.3.0
type SlackInstallation struct {
// ID: Infrawrench id for this workspace connection
ID string `json:"id"`
// TeamID: Slack workspace id (T…)
TeamID string `json:"teamId"`
TeamName *string `json:"teamName"`
}
SlackInstallation is the `SlackInstallation` schema.
type SlackInstallationsAvailableChannelsParams ¶ added in v0.3.0
type SlackInstallationsAvailableChannelsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
InstallationID string
}
SlackInstallationsAvailableChannelsParams holds the parameters for `client.slack.installations.availableChannels`.
type SlackInstallationsAvailableChannelsResponse ¶ added in v0.3.0
type SlackInstallationsAvailableChannelsResponse struct {
Channels []SlackAvailableChannel `json:"channels"`
}
SlackInstallationsAvailableChannelsResponse is an object the spec declares inline.
type SlackInstallationsDeleteParams ¶ added in v0.3.0
type SlackInstallationsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
InstallationID string
}
SlackInstallationsDeleteParams holds the parameters for `client.slack.installations.delete`.
type SlackInstallationsNamespace ¶ added in v0.3.0
type SlackInstallationsNamespace struct {
// contains filtered or unexported fields
}
SlackInstallationsNamespace is `client.slack.installations`.
func (*SlackInstallationsNamespace) AvailableChannels ¶ added in v0.3.0
func (n *SlackInstallationsNamespace) AvailableChannels(ctx context.Context, params SlackInstallationsAvailableChannelsParams, opts ...RequestOption) (*SlackInstallationsAvailableChannelsResponse, error)
AvailableChannels: List channels the connected workspace can see
Live call to Slack's conversations.list, for populating a channel picker. Returns non-archived public and private channels visible to the bot.
GET /api/org/{orgId}/slack/installations/{installationId}/available-channels
Raises on 400: Bad request
func (*SlackInstallationsNamespace) Delete ¶ added in v0.3.0
func (n *SlackInstallationsNamespace) Delete(ctx context.Context, params SlackInstallationsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Disconnect a Slack workspace
Stops all delivery to this workspace. The channel routing is retained, so re-installing restores it.
DELETE /api/org/{orgId}/slack/installations/{installationId}
Raises on 404: Not found
type SlackNamespace ¶ added in v0.3.0
type SlackNamespace struct {
// Channels: `client.slack.channels`.
Channels *SlackChannelsNamespace
// Installations: `client.slack.installations`.
Installations *SlackInstallationsNamespace
// contains filtered or unexported fields
}
SlackNamespace is `client.slack`.
func (*SlackNamespace) InstallURL ¶ added in v0.3.0
func (n *SlackNamespace) InstallURL(ctx context.Context, params *SlackInstallURLParams, opts ...RequestOption) (*SlackInstallUrlresponse, error)
InstallURL: Get the Add to Slack URL
Returns a slack.com/oauth/v2/authorize URL carrying a signed `state` that binds the resulting install to this organization. Send the user's browser there; Slack redirects back to /api/slack/oauth/callback.
GET /api/org/{orgId}/slack/install-url
Raises on 400: Bad request
func (*SlackNamespace) Status ¶ added in v0.3.0
func (n *SlackNamespace) Status(ctx context.Context, params *SlackStatusParams, opts ...RequestOption) (*SlackStatus, error)
Status: Get the organization's Slack connection
Reports whether the server has a Slack app registered, which workspaces this organization has connected, and which channels alerts are routed to.
GET /api/org/{orgId}/slack/status
func (*SlackNamespace) Test ¶ added in v0.3.0
func (n *SlackNamespace) Test(ctx context.Context, params *SlackTestParams, opts ...RequestOption) (*SlackTestResponse, error)
Test: Post a test message to every configured channel
Ignores trigger opt-ins — every channel gets the test. Fails with the Slack error when nothing could be delivered (`not_in_channel` means the bot needs inviting to a private channel).
POST /api/org/{orgId}/slack/test
Raises on 400: Bad request
type SlackStatus ¶ added in v0.3.0
type SlackStatus struct {
// Configured: True when this deployment has a Slack app registered
Configured bool `json:"configured"`
Installations []SlackInstallation `json:"installations"`
Channels []SlackChannel `json:"channels"`
}
SlackStatus is the `SlackStatus` schema.
type SlackStatusParams ¶ added in v0.3.0
type SlackStatusParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
SlackStatusParams holds the parameters for `client.slack.status`.
Every field is optional; pass nil to take the defaults.
type SlackTestParams ¶ added in v0.3.0
type SlackTestParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
SlackTestParams holds the parameters for `client.slack.test`.
Every field is optional; pass nil to take the defaults.
type SlackTestResponse ¶ added in v0.3.0
type SlackTestResponse struct {
OK bool `json:"ok"`
ChannelCount int64 `json:"channelCount"`
Attempted int64 `json:"attempted"`
Succeeded int64 `json:"succeeded"`
}
SlackTestResponse is an object the spec declares inline.
type SshtunnelsCloseRequest ¶
type SshtunnelsCloseRequest struct {
TunnelID string `json:"tunnelId"`
}
SshtunnelsCloseRequest is an object the spec declares inline.
type SshtunnelsOpenRequest ¶
type SshtunnelsOpenRequest struct {
AccountID string `json:"accountId"`
}
SshtunnelsOpenRequest is an object the spec declares inline.
type SshtunnelsOpenResponse ¶
type SshtunnelsOpenResponse struct {
TunnelID string `json:"tunnelId"`
LocalPort int64 `json:"localPort"`
}
SshtunnelsOpenResponse is an object the spec declares inline.
type StatusDot ¶
type StatusDot struct {
// Kind: One of "status-dot".
Kind string `json:"kind"`
Status ResourceStatus `json:"status"`
Label *string `json:"label,omitempty"`
}
StatusDot is the `StatusDot` schema.
type StorageDeleteParams ¶
type StorageDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body StoragePathRequest
}
StorageDeleteParams holds the parameters for `client.storage.delete`.
type StorageDownloadParams ¶
type StorageDownloadParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
AccountID string
Bucket string
// Keys: JSON-encoded array of object keys, e.g. `["a.txt","b.txt"]`
Keys string
}
StorageDownloadParams holds the parameters for `client.storage.download`.
type StorageListParams ¶
type StorageListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body StorageListRequest
}
StorageListParams holds the parameters for `client.storage.list`.
type StorageListRequest ¶
type StorageListRequest struct {
AccountID string `json:"accountId"`
Bucket string `json:"bucket"`
Prefix string `json:"prefix"`
}
StorageListRequest is the `StorageListRequest` schema.
type StorageMkdirParams ¶
type StorageMkdirParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body StoragePathRequest
}
StorageMkdirParams holds the parameters for `client.storage.mkdir`.
type StorageNamespace ¶
type StorageNamespace struct {
// contains filtered or unexported fields
}
StorageNamespace is `client.storage`.
func (*StorageNamespace) Delete ¶
func (n *StorageNamespace) Delete(ctx context.Context, params StorageDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete a storage object
_Requires permission: `storage:write`._
POST /api/org/{orgId}/storage/delete
Raises on 400: Bad request
Raises on 404: Not found
func (*StorageNamespace) Download ¶
func (n *StorageNamespace) Download(ctx context.Context, params StorageDownloadParams, opts ...RequestOption) (io.ReadCloser, error)
Download: Download one or many objects (zipped if more than one)
_Requires permission: `storage:read`._
GET /api/org/{orgId}/v1/storage/download
Raises on 400: Bad request
Raises on 404: Not found
Raises on 500: Server error
func (*StorageNamespace) List ¶
func (n *StorageNamespace) List(ctx context.Context, params StorageListParams, opts ...RequestOption) ([]StorageObject, error)
List: List objects in a bucket / prefix
_Requires permission: `storage:read`._
POST /api/org/{orgId}/storage/list
Raises on 400: Bad request
Raises on 404: Not found
func (*StorageNamespace) Mkdir ¶
func (n *StorageNamespace) Mkdir(ctx context.Context, params StorageMkdirParams, opts ...RequestOption) (*OK, error)
Mkdir: Create a folder marker in a bucket
_Requires permission: `storage:write`._
POST /api/org/{orgId}/storage/mkdir
Raises on 400: Bad request
Raises on 404: Not found
func (*StorageNamespace) Upload ¶
func (n *StorageNamespace) Upload(ctx context.Context, params StorageUploadParams, opts ...RequestOption) (*OK, error)
Upload: Upload a file to object storage
Multipart/form-data. Plugin must implement `uploadStorageObject`.
_Requires permission: `storage:write`._
POST /api/org/{orgId}/v1/storage/upload
Raises on 400: Bad request
Raises on 404: Not found
type StorageObject ¶
type StorageObject struct {
// Key: Full path within the bucket.
Key string `json:"key"`
// Name: Last path segment — what the browser renders.
Name string `json:"name"`
Size float64 `json:"size"`
LastModified string `json:"lastModified"`
IsDirectory bool `json:"isDirectory"`
ContentType *string `json:"contentType,omitempty"`
}
StorageObject is the `StorageObject` schema.
type StoragePathRequest ¶
type StoragePathRequest struct {
AccountID string `json:"accountId"`
Bucket string `json:"bucket"`
Key string `json:"key"`
}
StoragePathRequest is the `StoragePathRequest` schema.
type StorageUploadForm ¶
type StorageUploadForm struct {
AccountID string `json:"accountId"`
Bucket string `json:"bucket"`
Key string `json:"key"`
// File: Raw file bytes
File io.Reader `json:"file"`
}
StorageUploadForm is the `StorageUploadForm` schema.
type StorageUploadParams ¶
type StorageUploadParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: sent as `multipart/form-data`; the `io.Reader` field is the file.
Body StorageUploadForm
}
StorageUploadParams holds the parameters for `client.storage.upload`.
type StripeRedirectURL ¶
type StripeRedirectURL struct {
URL string `json:"url"`
}
StripeRedirectURL is the `StripeRedirectUrl` schema.
Spec schema: `StripeRedirectUrl`.
type Subscription ¶
type Subscription struct {
// Status: One of "trialing", "active", "past_due", "canceled", "unpaid".
Status string `json:"status"`
SeatCount int64 `json:"seatCount"`
CurrentPeriodEnd *string `json:"currentPeriodEnd"`
StripeCustomerID string `json:"stripeCustomerId"`
}
Subscription is the `Subscription` schema.
The API may send null in its place.
type SyncResponse ¶
type SyncResponse struct {
Synced int64 `json:"synced"`
}
SyncResponse is the `SyncResponse` schema.
type SyncedResource ¶ added in v0.7.0
type SyncedResource struct {
ID ResourceID `json:"id"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
DisplayName string `json:"displayName"`
ExternalID *string `json:"externalId"`
FieldsJSON JSONObject `json:"fieldsJson"`
OutputsJSON JSONObject `json:"outputsJson"`
ParentResourceID *ResourceID `json:"parentResourceId"`
}
SyncedResource is the `SyncedResource` schema.
type TOTPEnrollment ¶
type TOTPEnrollment struct {
FactorID string `json:"factorId"`
ChallengeID string `json:"challengeId"`
// QrCode: Data-URI image of the enrolment QR code
QrCode *string `json:"qrCode"`
// Secret: Base32 secret, for manual entry
Secret *string `json:"secret"`
// URI: `otpauth://` URI
URI *string `json:"uri"`
}
TOTPEnrollment is the `TotpEnrollment` schema.
Spec schema: `TotpEnrollment`.
type TabTarget ¶
type TabTarget struct {
// Kind: One of "dashboard", "account", "resource", "agents", "costs",
// "workflows", "deployments", "chat".
Kind string `json:"kind"`
DashboardID *string `json:"dashboardId,omitempty"`
AccountID *string `json:"accountId,omitempty"`
ResourceID *ResourceID `json:"resourceId,omitempty"`
ConversationID *string `json:"conversationId,omitempty"`
}
TabTarget is the `TabTarget` schema.
type TeamInvitationsCreateParams ¶
type TeamInvitationsCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body InviteRequest
}
TeamInvitationsCreateParams holds the parameters for `client.team.invitations.create`.
type TeamInvitationsDeleteParams ¶
type TeamInvitationsDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
TeamInvitationsDeleteParams holds the parameters for `client.team.invitations.delete`.
type TeamInvitationsListParams ¶
type TeamInvitationsListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
TeamInvitationsListParams holds the parameters for `client.team.invitations.list`.
Every field is optional; pass nil to take the defaults.
type TeamInvitationsNamespace ¶
type TeamInvitationsNamespace struct {
// contains filtered or unexported fields
}
TeamInvitationsNamespace is `client.team.invitations`.
func (*TeamInvitationsNamespace) Create ¶
func (n *TeamInvitationsNamespace) Create(ctx context.Context, params TeamInvitationsCreateParams, opts ...RequestOption) (*InviteResponse, error)
Create: Create an invitation (token valid for 7 days)
_Requires permission: `team:invite`._
POST /api/org/{orgId}/team/invitations
Raises on 402: Payment required — the organization's plan does not include this
Raises on 409: All seats are in use; retry with addSeat to buy one more
Raises on 502: Buying the extra seat failed; the invitation was not sent
func (*TeamInvitationsNamespace) Delete ¶
func (n *TeamInvitationsNamespace) Delete(ctx context.Context, params TeamInvitationsDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Revoke a pending invitation
_Requires permission: `team:invite`._
DELETE /api/org/{orgId}/team/invitations/{id}
Raises on 404: Not found
func (*TeamInvitationsNamespace) List ¶
func (n *TeamInvitationsNamespace) List(ctx context.Context, params *TeamInvitationsListParams, opts ...RequestOption) ([]Invitation, error)
List: List pending and historical invitations
_Requires permission: `team:read`._
GET /api/org/{orgId}/team/invitations
type TeamMeParams ¶
type TeamMeParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
TeamMeParams holds the parameters for `client.team.me`.
Every field is optional; pass nil to take the defaults.
type TeamMembersDeleteParams ¶
type TeamMembersDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
TeamMembersDeleteParams holds the parameters for `client.team.members.delete`.
type TeamMembersListParams ¶
type TeamMembersListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
TeamMembersListParams holds the parameters for `client.team.members.list`.
Every field is optional; pass nil to take the defaults.
type TeamMembersNamespace ¶
type TeamMembersNamespace struct {
// contains filtered or unexported fields
}
TeamMembersNamespace is `client.team.members`.
func (*TeamMembersNamespace) Delete ¶
func (n *TeamMembersNamespace) Delete(ctx context.Context, params TeamMembersDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Remove a member from the org
_Requires permission: `team:remove`._
DELETE /api/org/{orgId}/team/members/{id}
func (*TeamMembersNamespace) List ¶
func (n *TeamMembersNamespace) List(ctx context.Context, params *TeamMembersListParams, opts ...RequestOption) ([]OrgMember, error)
List: List org members
_Requires permission: `team:read`._
GET /api/org/{orgId}/team/members
func (*TeamMembersNamespace) Role ¶
func (n *TeamMembersNamespace) Role(ctx context.Context, params TeamMembersRoleParams, opts ...RequestOption) (*OK, error)
Role: Change a member's role
_Requires permission: `team:role:write`._
PATCH /api/org/{orgId}/team/members/{id}/role
type TeamMembersRoleParams ¶
type TeamMembersRoleParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body RoleChangeRequest
}
TeamMembersRoleParams holds the parameters for `client.team.members.role`.
type TeamNamespace ¶
type TeamNamespace struct {
// Invitations: `client.team.invitations`.
Invitations *TeamInvitationsNamespace
// Members: `client.team.members`.
Members *TeamMembersNamespace
// Roles: `client.team.roles`.
Roles *TeamRolesNamespace
// contains filtered or unexported fields
}
TeamNamespace is `client.team`.
func (*TeamNamespace) Me ¶
func (n *TeamNamespace) Me(ctx context.Context, params *TeamMeParams, opts ...RequestOption) (*MeResponse, error)
Me: Current user's effective permissions and role
GET /api/org/{orgId}/team/me
func (*TeamNamespace) Permissions ¶
func (n *TeamNamespace) Permissions(ctx context.Context, params *TeamPermissionsParams, opts ...RequestOption) (*PermissionCatalog, error)
Permissions: List all permission strings the server recognises
_Requires permission: `team:read`._
GET /api/org/{orgId}/team/permissions
type TeamPermissionsParams ¶
type TeamPermissionsParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
TeamPermissionsParams holds the parameters for `client.team.permissions`.
Every field is optional; pass nil to take the defaults.
type TeamRolesCreateParams ¶
type TeamRolesCreateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
// Body: the JSON request body.
Body RoleCreateRequest
}
TeamRolesCreateParams holds the parameters for `client.team.roles.create`.
type TeamRolesDeleteParams ¶
type TeamRolesDeleteParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
}
TeamRolesDeleteParams holds the parameters for `client.team.roles.delete`.
type TeamRolesListParams ¶
type TeamRolesListParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
}
TeamRolesListParams holds the parameters for `client.team.roles.list`.
Every field is optional; pass nil to take the defaults.
type TeamRolesNamespace ¶
type TeamRolesNamespace struct {
// contains filtered or unexported fields
}
TeamRolesNamespace is `client.team.roles`.
func (*TeamRolesNamespace) Create ¶
func (n *TeamRolesNamespace) Create(ctx context.Context, params TeamRolesCreateParams, opts ...RequestOption) (*Role, error)
Create: Create a custom role
_Requires permission: `team:role:write`._
POST /api/org/{orgId}/team/roles
func (*TeamRolesNamespace) Delete ¶
func (n *TeamRolesNamespace) Delete(ctx context.Context, params TeamRolesDeleteParams, opts ...RequestOption) (*OK, error)
Delete: Delete a custom role (must have no members or pending invitations)
_Requires permission: `team:role:write`._
DELETE /api/org/{orgId}/team/roles/{id}
Raises on 404: Not found
Raises on 409: Conflict
Raises on 422: Bad request
func (*TeamRolesNamespace) List ¶
func (n *TeamRolesNamespace) List(ctx context.Context, params *TeamRolesListParams, opts ...RequestOption) ([]Role, error)
List: List roles (system + custom)
_Requires permission: `team:read`._
GET /api/org/{orgId}/team/roles
func (*TeamRolesNamespace) Update ¶
func (n *TeamRolesNamespace) Update(ctx context.Context, params TeamRolesUpdateParams, opts ...RequestOption) (*Role, error)
Update: Edit a custom role
_Requires permission: `team:role:write`._
PATCH /api/org/{orgId}/team/roles/{id}
Raises on 404: Not found
Raises on 422: Bad request
type TeamRolesUpdateParams ¶
type TeamRolesUpdateParams struct {
// OrgID: Organization id
//
// Falls back to the client's `orgId` when omitted.
OrgID *string
ID string
// Body: the JSON request body.
Body RoleUpdateRequest
}
TeamRolesUpdateParams holds the parameters for `client.team.roles.update`.
type UnpinRequest ¶
type UnpinRequest struct {
DashboardID string `json:"dashboardId"`
ResourceID ResourceID `json:"resourceId"`
}
UnpinRequest is the `UnpinRequest` schema.
type UpdateAccountRequest ¶
type UpdateAccountRequest struct {
DisplayName *string `json:"displayName,omitempty"`
// BastionID: Pass `null` to unbind, a uuid to bind, or omit the field to
// leave the binding unchanged.
BastionID *string `json:"bastionId,omitempty"`
}
UpdateAccountRequest is the `UpdateAccountRequest` schema.
type UpdateResourceRequest ¶
type UpdateResourceRequest struct {
AccountID string `json:"accountId"`
PluginID string `json:"pluginId"`
ResourceTypeID string `json:"resourceTypeId"`
ResourceID ResourceID `json:"resourceId"`
Fields map[string]string `json:"fields"`
ParentResourceID *ResourceID `json:"parentResourceId,omitempty"`
}
UpdateResourceRequest is the `UpdateResourceRequest` schema.
type UpdateResourceResponse ¶
type UpdateResourceResponse struct {
ID ResourceID `json:"id"`
DisplayName string `json:"displayName"`
Fields map[string]string `json:"fields"`
}
UpdateResourceResponse is the `UpdateResourceResponse` schema.
type UpdateWidgetRequest ¶
type UpdateWidgetRequest struct {
Title *string `json:"title,omitempty"`
Config JSONObject `json:"config,omitempty"`
GridX *int64 `json:"gridX,omitempty"`
GridY *int64 `json:"gridY,omitempty"`
GridW *int64 `json:"gridW,omitempty"`
GridH *int64 `json:"gridH,omitempty"`
}
UpdateWidgetRequest is the `UpdateWidgetRequest` schema.
type UpdatedAccount ¶
type UpdatedAccount struct {
ID string `json:"id"`
DisplayName string `json:"displayName"`
BastionID *string `json:"bastionId"`
}
UpdatedAccount is the `UpdatedAccount` schema.
type UserSession ¶
type UserSession struct {
ID string `json:"id"`
IPAddress *string `json:"ipAddress"`
UserAgent *string `json:"userAgent"`
AuthMethod string `json:"authMethod"`
Status string `json:"status"`
ExpiresAt string `json:"expiresAt"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
// Current: True for the session making this request
Current bool `json:"current"`
}
UserSession is the `UserSession` schema.
type ValidateTabsRequest ¶
type ValidateTabsRequest struct {
Tabs []ValidateTabsRequestTabs `json:"tabs"`
}
ValidateTabsRequest is the `ValidateTabsRequest` schema.
type ValidateTabsRequestTabs ¶
ValidateTabsRequestTabs is an object the spec declares inline.
type ValidateTabsResponse ¶
type ValidateTabsResponse struct {
ValidTabIDs []string `json:"validTabIds"`
}
ValidateTabsResponse is the `ValidateTabsResponse` schema.
type WorkflowPinRequest ¶
type WorkflowPinRequest struct {
DashboardID string `json:"dashboardId"`
WorkflowID string `json:"workflowId"`
}
WorkflowPinRequest is the `WorkflowPinRequest` schema.