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 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 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 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) Status(ctx context.Context, params *CostsStatusParams, opts ...RequestOption) (*CostsStatusResponse, error)
- type CostsQueryParams
- 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 CredentialField
- type CredentialFieldHelpLink
- type CredentialFieldRegion
- type CredentialFormat
- 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 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 NoSQLCommandRequest
- type OK
- type OrgMember
- type OrgMembership
- type Organization
- type OrganizationRole
- type OrgsCreateParams
- type OrgsNamespace
- 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) 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 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 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 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.3.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
// Dashboards: `client.dashboards`.
Dashboards *DashboardsNamespace
// Docker: `client.docker`.
Docker *DockerNamespace
// Invitations: `client.invitations`.
Invitations *InvitationsNamespace
// KV: `client.kv`.
KV *KVNamespace
// Orgs: `client.orgs`.
Orgs *OrgsNamespace
// 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 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
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) ([]Resource, 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"`
}
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 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"`
}
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"`
}
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 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.
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.
POST /api/org/{orgId}/costs/query
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.
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 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 map[string]string `json:"fields,omitempty"`
Warning *string `json:"warning,omitempty"`
}
CredentialExport is the `CredentialExport` schema.
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 string `json:"id"`
Label string `json:"label"`
Description *string `json:"description,omitempty"`
FileExtension *string `json:"fileExtension,omitempty"`
MimeType *string `json:"mimeType,omitempty"`
}
CredentialFormat is the `CredentialFormat` schema.
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" )
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 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"`
}
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 {
Lines []string `json:"lines"`
NextPageToken *string `json:"nextPageToken,omitempty"`
Truncated *bool `json:"truncated,omitempty"`
}
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 ¶
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 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 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 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" PermissionCostsRead Permission = "costs:read" 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" 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"`
}
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 ( PluginIDAWS PluginID = "aws" PluginIDAzure PluginID = "azure" PluginIDClickhouse PluginID = "clickhouse" PluginIDCloudflare PluginID = "cloudflare" PluginIDCloudinary PluginID = "cloudinary" PluginIDDatabricks PluginID = "databricks" PluginIDDigitalocean PluginID = "digitalocean" PluginIDDocker PluginID = "docker" PluginIDFly PluginID = "fly" PluginIDGCP PluginID = "gcp" PluginIDHetzner PluginID = "hetzner" PluginIDKafka PluginID = "kafka" PluginIDKubernetes PluginID = "kubernetes" PluginIDMemcached PluginID = "memcached" PluginIDMongodb PluginID = "mongodb" PluginIDMssql PluginID = "mssql" PluginIDMysql PluginID = "mysql" PluginIDNeon PluginID = "neon" PluginIDNetlify PluginID = "netlify" PluginIDOpensearch PluginID = "opensearch" PluginIDOVH PluginID = "ovh" PluginIDPlanetscale PluginID = "planetscale" PluginIDPostgres PluginID = "postgres" PluginIDRedis PluginID = "redis" PluginIDScaleway PluginID = "scaleway" PluginIDSSH PluginID = "ssh" PluginIDTurso PluginID = "turso" PluginIDVercel PluginID = "vercel" )
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", "loading", "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 ¶
ProbeStatusResourceCounts is an object the spec declares inline.
type ProbeStatusSparkline ¶
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) 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 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" ResourceStatusWarning ResourceStatus = "warning" ResourceStatusError ResourceStatus = "error" ResourceStatusUnknown ResourceStatus = "unknown" ResourceStatusPending ResourceStatus = "pending" ResourceStatusStopped ResourceStatus = "stopped" )
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" 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" ResourceTypeIDApp ResourceTypeID = "app" ResourceTypeIDAppEngineService ResourceTypeID = "app-engine-service" ResourceTypeIDApprunnerService ResourceTypeID = "apprunner-service" ResourceTypeIDArtifactRegistryRepo ResourceTypeID = "artifact-registry-repo" 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" 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" 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" ResourceTypeIDComposerEnvironment ResourceTypeID = "composer-environment" ResourceTypeIDCustomHostname ResourceTypeID = "custom-hostname" 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" ResourceTypeIDDBUser ResourceTypeID = "db-user" ResourceTypeIDDedicatedInference ResourceTypeID = "dedicated-inference" 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" ResourceTypeIDEventbridgeRule ResourceTypeID = "eventbridge-rule" 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" 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" ResourceTypeIDHealthCheck ResourceTypeID = "health-check" ResourceTypeIDHealthcheck ResourceTypeID = "healthcheck" 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" ResourceTypeIDIPAccessRule ResourceTypeID = "ip-access-rule" ResourceTypeIDIPAllocation ResourceTypeID = "ip-allocation" 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" 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" ResourceTypeIDManagedKube ResourceTypeID = "managed-kube" ResourceTypeIDMediaAsset ResourceTypeID = "media-asset" ResourceTypeIDMemcachedInstance ResourceTypeID = "memcached-instance" ResourceTypeIDMemorystoreMemcached ResourceTypeID = "memorystore-memcached" ResourceTypeIDMemorystoreRedis ResourceTypeID = "memorystore-redis" ResourceTypeIDModelAPIKey ResourceTypeID = "model-api-key" 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" ResourceTypeIDPageRule ResourceTypeID = "page-rule" ResourceTypeIDPgDatabase ResourceTypeID = "pg-database" ResourceTypeIDPgSchema ResourceTypeID = "pg-schema" ResourceTypeIDPlacementGroup ResourceTypeID = "placement-group" ResourceTypeIDPrimaryIP ResourceTypeID = "primary-ip" ResourceTypeIDPrivateNetwork ResourceTypeID = "private-network" ResourceTypeIDProject ResourceTypeID = "project" 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" 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" 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" ResourceTypeIDTargetGroup ResourceTypeID = "target-group" ResourceTypeIDTransformation ResourceTypeID = "transformation" 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" 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" 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" 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
_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 {
Name string `json:"name"`
IsDir bool `json:"isDir"`
Size *int64 `json:"size,omitempty"`
ModifiedAt *string `json:"modifiedAt,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 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 string `json:"createdAt"`
}
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 string `json:"key"`
Size *int64 `json:"size,omitempty"`
IsFolder *bool `json:"isFolder,omitempty"`
LastModified *string `json:"lastModified,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 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", "workflows",
// "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
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.