Documentation
¶
Index ¶
- func AuthenticationTypeChoices() []string
- func DatasetNameTypeChoices() []string
- func DowTypeChoices() []string
- func EndpointTypeChoices() []string
- func IntegrationStatusTypeChoices() []string
- func IntegrationTypeChoices() []string
- func KafkaAclPermissionTypeChoices() []string
- func KafkaAuthenticationMethodTypeChoices() []string
- func KafkaSslCaTypeChoices() []string
- func LevelTypeChoices() []string
- func LikelyErrorCauseTypeChoices() []string
- func MaintenanceDowTypeChoices() []string
- func MasterLinkStatusTypeChoices() []string
- func MethodTypeChoices() []string
- func MigrationCheckMethodTypeChoices() []string
- func MigrationDetailStatusTypeChoices() []string
- func MigrationStatusTypeChoices() []string
- func NodeStateTypeChoices() []string
- func OperationTypeChoices() []string
- func PatternTypeChoices() []string
- func PeriodTypeChoices() []string
- func PermissionTypeChoices() []string
- func PhaseTypeChoices() []string
- func PoolModeTypeChoices() []string
- func RecoveryModeTypeChoices() []string
- func ResourceTypeChoices() []string
- func RoleTypeChoices() []string
- func RouteTypeChoices() []string
- func SchemaRegistryAclPermissionTypeChoices() []string
- func ServiceGetIncludeSecrets(includeSecrets bool) [2]string
- func ServiceIntegrationEndpointGetIncludeSecrets(includeSecrets bool) [2]string
- func ServiceNotificationTypeChoices() []string
- func ServiceStateTypeChoices() []string
- func ServiceUpdateAllowUncleanPoweroff(allowUncleanPoweroff bool) [2]string
- func ServiceUserCredentialsModifyOperationTypeChoices() []string
- func ServiceVersionStateTypeChoices() []string
- func SortOrderTypeChoices() []string
- func TargetVersionTypeChoices() []string
- func TaskTypeChoices() []string
- func TopicStateTypeChoices() []string
- func UnitTypeChoices() []string
- func UsageTypeChoices() []string
- type AccessControlIn
- type AccessControlOut
- type AclOut
- type AggregatorOut
- type AlertOut
- type AlloydbomniOut
- type AuthenticationType
- type BackupConfigOut
- type BackupOut
- type CassandraOut
- type ClickhouseOut
- type ComponentOut
- type ConnectionInfoOut
- type ConnectionPoolOut
- type CreateUserBackupIn
- type DatabaseOut
- type DatasetImportIn
- type DatasetNameType
- type DbOut
- type DowType
- type DragonflyOut
- type ElasticsearchOut
- type EndpointType
- type EndpointTypeOut
- type FlinkOut
- type GrafanaOut
- type Handler
- type InfluxdbOut
- type IntegrationStatusOut
- type IntegrationStatusType
- type IntegrationType
- type IntegrationTypeOut
- type KafkaAclOut
- type KafkaAclPermissionType
- type KafkaAuthenticationMethodType
- type KafkaConnectOut
- type KafkaMirrormakerOut
- type KafkaOut
- type KafkaSslCaType
- type LevelType
- type LikelyErrorCauseType
- type ListProjectServiceTypesOut
- type ListPublicServiceTypesOut
- type LogOut
- type MaintenanceDowType
- type MaintenanceIn
- type MaintenanceOut
- type MasterLinkStatusType
- type MetadataOut
- type MethodType
- type MigrationCheckIn
- type MigrationCheckMethodType
- type MigrationDetailOut
- type MigrationDetailStatusType
- type MigrationOut
- type MigrationStatusType
- type MysqlOut
- type MysqlParamOut
- type NodeStateOut
- type NodeStateType
- type OpensearchOut
- type OperationType
- type PatternType
- type PeriodType
- type PermissionType
- type PgOut
- type PgParamOut
- type PhaseType
- type PitrAdditionalRegionOut
- type PitrOut
- type PoolModeType
- type PrimaryRegionOut
- type ProgressUpdateOut
- type ProjectGetServiceLogsIn
- type ProjectGetServiceLogsOut
- type ProjectServiceTagsReplaceIn
- type ProjectServiceTagsUpdateIn
- type QueryOut
- type RecoveryModeType
- type RedisOut
- type ResourceType
- type ResultCodeOut
- type RoleType
- type RouteType
- type SchemaRegistryAclOut
- type SchemaRegistryAclPermissionType
- type ServerGroupOut
- type ServiceBackupToAnotherRegionReportIn
- type ServiceBackupsGetOut
- type ServiceCancelQueryIn
- type ServiceCreateIn
- type ServiceCreateOut
- type ServiceDatabaseCreateIn
- type ServiceGetMigrationStatusOut
- type ServiceGetOut
- type ServiceHandler
- func (h *ServiceHandler) ListProjectServiceTypes(ctx context.Context, project string) (*ListProjectServiceTypesOut, error)
- func (h *ServiceHandler) ListPublicServiceTypes(ctx context.Context) (*ListPublicServiceTypesOut, error)
- func (h *ServiceHandler) ListServiceVersions(ctx context.Context) ([]ServiceVersionOut, error)
- func (h *ServiceHandler) ProjectGetServiceLogs(ctx context.Context, project string, serviceName string, ...) (*ProjectGetServiceLogsOut, error)
- func (h *ServiceHandler) ProjectServiceTagsList(ctx context.Context, project string, serviceName string) (map[string]string, error)
- func (h *ServiceHandler) ProjectServiceTagsReplace(ctx context.Context, project string, serviceName string, ...) error
- func (h *ServiceHandler) ProjectServiceTagsUpdate(ctx context.Context, project string, serviceName string, ...) error
- func (h *ServiceHandler) ServiceAlertsList(ctx context.Context, project string, serviceName string) ([]AlertOut, error)
- func (h *ServiceHandler) ServiceBackupToAnotherRegionReport(ctx context.Context, project string, serviceName string, ...) (map[string]any, error)
- func (h *ServiceHandler) ServiceBackupsGet(ctx context.Context, project string, serviceName string) (*ServiceBackupsGetOut, error)
- func (h *ServiceHandler) ServiceCancelQuery(ctx context.Context, project string, serviceName string, ...) (bool, error)
- func (h *ServiceHandler) ServiceCreate(ctx context.Context, project string, in *ServiceCreateIn) (*ServiceCreateOut, error)
- func (h *ServiceHandler) ServiceDatabaseCreate(ctx context.Context, project string, serviceName string, ...) error
- func (h *ServiceHandler) ServiceDatabaseDelete(ctx context.Context, project string, serviceName string, dbname string) error
- func (h *ServiceHandler) ServiceDatabaseList(ctx context.Context, project string, serviceName string) ([]DatabaseOut, error)
- func (h *ServiceHandler) ServiceDelete(ctx context.Context, project string, serviceName string) error
- func (h *ServiceHandler) ServiceEnableWrites(ctx context.Context, project string, serviceName string) (*string, error)
- func (h *ServiceHandler) ServiceGet(ctx context.Context, project string, serviceName string, query ...[2]string) (*ServiceGetOut, error)
- func (h *ServiceHandler) ServiceGetMigrationStatus(ctx context.Context, project string, serviceName string) (*ServiceGetMigrationStatusOut, error)
- func (h *ServiceHandler) ServiceInfluxDBStats(ctx context.Context, project string, serviceName string) (map[string]any, error)
- func (h *ServiceHandler) ServiceIntegrationCreate(ctx context.Context, project string, in *ServiceIntegrationCreateIn) (*ServiceIntegrationCreateOut, error)
- func (h *ServiceHandler) ServiceIntegrationDelete(ctx context.Context, project string, integrationId string) error
- func (h *ServiceHandler) ServiceIntegrationEndpointCreate(ctx context.Context, project string, in *ServiceIntegrationEndpointCreateIn) (*ServiceIntegrationEndpointCreateOut, error)
- func (h *ServiceHandler) ServiceIntegrationEndpointDelete(ctx context.Context, project string, integrationEndpointId string) error
- func (h *ServiceHandler) ServiceIntegrationEndpointGet(ctx context.Context, project string, integrationEndpointId string, ...) (*ServiceIntegrationEndpointGetOut, error)
- func (h *ServiceHandler) ServiceIntegrationEndpointList(ctx context.Context, project string) ([]ServiceIntegrationEndpointOut, error)
- func (h *ServiceHandler) ServiceIntegrationEndpointTypes(ctx context.Context, project string) ([]EndpointTypeOut, error)
- func (h *ServiceHandler) ServiceIntegrationEndpointUpdate(ctx context.Context, project string, integrationEndpointId string, ...) (*ServiceIntegrationEndpointUpdateOut, error)
- func (h *ServiceHandler) ServiceIntegrationGet(ctx context.Context, project string, integrationId string) (*ServiceIntegrationGetOut, error)
- func (h *ServiceHandler) ServiceIntegrationList(ctx context.Context, project string, serviceName string) ([]ServiceIntegrationOut, error)
- func (h *ServiceHandler) ServiceIntegrationTypes(ctx context.Context, project string) ([]IntegrationTypeOut, error)
- func (h *ServiceHandler) ServiceIntegrationUpdate(ctx context.Context, project string, integrationId string, ...) (*ServiceIntegrationUpdateOut, error)
- func (h *ServiceHandler) ServiceKmsGetCA(ctx context.Context, project string, serviceName string, caName string) (string, error)
- func (h *ServiceHandler) ServiceKmsGetKeypair(ctx context.Context, project string, serviceName string, keypairName string) (*ServiceKmsGetKeypairOut, error)
- func (h *ServiceHandler) ServiceList(ctx context.Context, project string) ([]ServiceOut, error)
- func (h *ServiceHandler) ServiceMaintenanceStart(ctx context.Context, project string, serviceName string) error
- func (h *ServiceHandler) ServiceMetricsFetch(ctx context.Context, project string, serviceName string, ...) (map[string]any, error)
- func (h *ServiceHandler) ServiceQueryActivity(ctx context.Context, project string, serviceName string, ...) ([]QueryOut, error)
- func (h *ServiceHandler) ServiceQueryStatisticsReset(ctx context.Context, project string, serviceName string) ([]map[string]any, error)
- func (h *ServiceHandler) ServiceTaskCreate(ctx context.Context, project string, serviceName string, ...) (*ServiceTaskCreateOut, error)
- func (h *ServiceHandler) ServiceTaskGet(ctx context.Context, project string, serviceName string, taskId string) (*ServiceTaskGetOut, error)
- func (h *ServiceHandler) ServiceUpdate(ctx context.Context, project string, serviceName string, in *ServiceUpdateIn, ...) (*ServiceUpdateOut, error)
- func (h *ServiceHandler) ServiceUserCreate(ctx context.Context, project string, serviceName string, ...) (*ServiceUserCreateOut, error)
- func (h *ServiceHandler) ServiceUserCredentialsModify(ctx context.Context, project string, serviceName string, ...) (*ServiceUserCredentialsModifyOut, error)
- func (h *ServiceHandler) ServiceUserCredentialsReset(ctx context.Context, project string, serviceName string, ...) (*ServiceUserCredentialsResetOut, error)
- func (h *ServiceHandler) ServiceUserDelete(ctx context.Context, project string, serviceName string, ...) error
- func (h *ServiceHandler) ServiceUserGet(ctx context.Context, project string, serviceName string, ...) (*ServiceUserGetOut, error)
- type ServiceIntegrationCreateIn
- type ServiceIntegrationCreateOut
- type ServiceIntegrationEndpointCreateIn
- type ServiceIntegrationEndpointCreateOut
- type ServiceIntegrationEndpointGetOut
- type ServiceIntegrationEndpointOut
- type ServiceIntegrationEndpointUpdateIn
- type ServiceIntegrationEndpointUpdateOut
- type ServiceIntegrationGetOut
- type ServiceIntegrationIn
- type ServiceIntegrationOut
- type ServiceIntegrationUpdateIn
- type ServiceIntegrationUpdateOut
- type ServiceKmsGetKeypairOut
- type ServiceMetricsFetchIn
- type ServiceNotificationOut
- type ServiceNotificationType
- type ServiceOut
- type ServicePlanOut
- type ServiceQueryActivityIn
- type ServiceStateType
- type ServiceTaskCreateIn
- type ServiceTaskCreateOut
- type ServiceTaskGetOut
- type ServiceUpdateIn
- type ServiceUpdateOut
- type ServiceUserCreateIn
- type ServiceUserCreateOut
- type ServiceUserCredentialsModifyIn
- type ServiceUserCredentialsModifyOperationType
- type ServiceUserCredentialsModifyOut
- type ServiceUserCredentialsResetOut
- type ServiceUserGetOut
- type ServiceVersionOut
- type ServiceVersionStateType
- type ShardOut
- type SortOrderType
- type StateOut
- type TargetVersionType
- type TaskType
- type TechEmailIn
- type TechEmailOut
- type ThanosOut
- type TopicOut
- type TopicStateType
- type UnitType
- type UpdateOut
- type UsageType
- type UserOut
- type ValkeyOut
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AuthenticationTypeChoices ¶ added in v0.3.0
func AuthenticationTypeChoices() []string
func DatasetNameTypeChoices ¶
func DatasetNameTypeChoices() []string
func DowTypeChoices ¶
func DowTypeChoices() []string
func EndpointTypeChoices ¶ added in v0.31.0
func EndpointTypeChoices() []string
func IntegrationStatusTypeChoices ¶ added in v0.3.0
func IntegrationStatusTypeChoices() []string
func IntegrationTypeChoices ¶
func IntegrationTypeChoices() []string
func KafkaAclPermissionTypeChoices ¶ added in v0.63.0
func KafkaAclPermissionTypeChoices() []string
func KafkaAuthenticationMethodTypeChoices ¶ added in v0.3.0
func KafkaAuthenticationMethodTypeChoices() []string
func KafkaSslCaTypeChoices ¶ added in v0.11.0
func KafkaSslCaTypeChoices() []string
func LevelTypeChoices ¶ added in v0.3.0
func LevelTypeChoices() []string
func LikelyErrorCauseTypeChoices ¶ added in v0.3.0
func LikelyErrorCauseTypeChoices() []string
func MaintenanceDowTypeChoices ¶ added in v0.36.0
func MaintenanceDowTypeChoices() []string
func MasterLinkStatusTypeChoices ¶ added in v0.3.0
func MasterLinkStatusTypeChoices() []string
func MethodTypeChoices ¶
func MethodTypeChoices() []string
func MigrationCheckMethodTypeChoices ¶ added in v0.36.0
func MigrationCheckMethodTypeChoices() []string
func MigrationDetailStatusTypeChoices ¶ added in v0.3.0
func MigrationDetailStatusTypeChoices() []string
func MigrationStatusTypeChoices ¶ added in v0.3.0
func MigrationStatusTypeChoices() []string
func NodeStateTypeChoices ¶ added in v0.3.0
func NodeStateTypeChoices() []string
func OperationTypeChoices ¶ added in v0.38.0
func OperationTypeChoices() []string
func PatternTypeChoices ¶ added in v0.63.0
func PatternTypeChoices() []string
func PeriodTypeChoices ¶
func PeriodTypeChoices() []string
func PermissionTypeChoices ¶ added in v0.3.0
func PermissionTypeChoices() []string
func PhaseTypeChoices ¶ added in v0.3.0
func PhaseTypeChoices() []string
func PoolModeTypeChoices ¶ added in v0.3.0
func PoolModeTypeChoices() []string
func RecoveryModeTypeChoices ¶ added in v0.3.0
func RecoveryModeTypeChoices() []string
func ResourceTypeChoices ¶ added in v0.63.0
func ResourceTypeChoices() []string
func RoleTypeChoices ¶ added in v0.3.0
func RoleTypeChoices() []string
func RouteTypeChoices ¶ added in v0.3.0
func RouteTypeChoices() []string
func SchemaRegistryAclPermissionTypeChoices ¶ added in v0.36.0
func SchemaRegistryAclPermissionTypeChoices() []string
func ServiceGetIncludeSecrets ¶ added in v0.23.0
ServiceGetIncludeSecrets Explicitly indicates that the client wants to read secrets that might be returned by this endpoint.
func ServiceIntegrationEndpointGetIncludeSecrets ¶ added in v0.31.0
ServiceIntegrationEndpointGetIncludeSecrets Explicitly indicates that the client wants to read secrets that might be returned by this endpoint.
func ServiceNotificationTypeChoices ¶ added in v0.3.0
func ServiceNotificationTypeChoices() []string
func ServiceStateTypeChoices ¶ added in v0.3.0
func ServiceStateTypeChoices() []string
func ServiceUpdateAllowUncleanPoweroff ¶ added in v0.21.0
ServiceUpdateAllowUncleanPoweroff Allows or disallows powering off a service if some WAL segments are not available for a future restoration of the service, which might result in data loss when powering the service back on
func ServiceUserCredentialsModifyOperationTypeChoices ¶ added in v0.63.0
func ServiceUserCredentialsModifyOperationTypeChoices() []string
func ServiceVersionStateTypeChoices ¶ added in v0.3.0
func ServiceVersionStateTypeChoices() []string
func SortOrderTypeChoices ¶
func SortOrderTypeChoices() []string
func TargetVersionTypeChoices ¶
func TargetVersionTypeChoices() []string
func TaskTypeChoices ¶
func TaskTypeChoices() []string
func TopicStateTypeChoices ¶ added in v0.3.0
func TopicStateTypeChoices() []string
func UnitTypeChoices ¶ added in v0.3.0
func UnitTypeChoices() []string
func UsageTypeChoices ¶ added in v0.3.0
func UsageTypeChoices() []string
Types ¶
type AccessControlIn ¶ added in v0.38.0
type AccessControlIn struct {
DragonflyAclCategories *[]string `json:"dragonfly_acl_categories,omitempty"` // Command category rules
DragonflyAclCommands *[]string `json:"dragonfly_acl_commands,omitempty"` // Rules for individual commands
DragonflyAclKeys *[]string `json:"dragonfly_acl_keys,omitempty"` // Key access rules
M3Group *string `json:"m3_group,omitempty"` // The M3 tag-value-limited access group to associate the user with. By default, if not set, user sees (and can publish) all metrics. If set non-empty, submitted metrics will include the group value in the avng tag, and the user will see only metrics matching the avng tag.
PgAllowReplication *bool `json:"pg_allow_replication,omitempty"` // Enable REPLICATION role option
RedisAclCategories *[]string `json:"redis_acl_categories,omitempty"` // Command category rules
RedisAclChannels *[]string `json:"redis_acl_channels,omitempty"` // Glob-style patterns defining which pub/sub channels can be accessed. If array is not defined, the default policy is used (allchannels).
RedisAclCommands *[]string `json:"redis_acl_commands,omitempty"` // Rules for individual commands
RedisAclKeys *[]string `json:"redis_acl_keys,omitempty"` // Key access rules
ValkeyAclCategories *[]string `json:"valkey_acl_categories,omitempty"` // Command category rules
ValkeyAclChannels *[]string `json:"valkey_acl_channels,omitempty"` // Glob-style patterns defining which pub/sub channels can be accessed. If array is not defined, the default policy is used (allchannels).
ValkeyAclCommands *[]string `json:"valkey_acl_commands,omitempty"` // Rules for individual commands
ValkeyAclKeys *[]string `json:"valkey_acl_keys,omitempty"` // Key access rules
}
AccessControlIn Service type specific access control rules for user. Currently only used for configuring user ACLs for Redis version 6 and above.
type AccessControlOut ¶
type AccessControlOut struct {
DragonflyAclCategories []string `json:"dragonfly_acl_categories,omitempty"` // Command category rules
DragonflyAclCommands []string `json:"dragonfly_acl_commands,omitempty"` // Rules for individual commands
DragonflyAclKeys []string `json:"dragonfly_acl_keys,omitempty"` // Key access rules
M3Group *string `json:"m3_group,omitempty"` // The M3 tag-value-limited access group to associate the user with. By default, if not set, user sees (and can publish) all metrics. If set non-empty, submitted metrics will include the group value in the avng tag, and the user will see only metrics matching the avng tag.
PgAllowReplication *bool `json:"pg_allow_replication,omitempty"` // Enable REPLICATION role option
RedisAclCategories []string `json:"redis_acl_categories,omitempty"` // Command category rules
RedisAclChannels []string `json:"redis_acl_channels,omitempty"` // Glob-style patterns defining which pub/sub channels can be accessed. If array is not defined, the default policy is used (allchannels).
RedisAclCommands []string `json:"redis_acl_commands,omitempty"` // Rules for individual commands
RedisAclKeys []string `json:"redis_acl_keys,omitempty"` // Key access rules
ValkeyAclCategories []string `json:"valkey_acl_categories,omitempty"` // Command category rules
ValkeyAclChannels []string `json:"valkey_acl_channels,omitempty"` // Glob-style patterns defining which pub/sub channels can be accessed. If array is not defined, the default policy is used (allchannels).
ValkeyAclCommands []string `json:"valkey_acl_commands,omitempty"` // Rules for individual commands
ValkeyAclKeys []string `json:"valkey_acl_keys,omitempty"` // Key access rules
}
AccessControlOut Service type specific access control rules for user. Currently only used for configuring user ACLs for Redis version 6 and above.
type AclOut ¶
type AclOut struct {
Id *string `json:"id,omitempty"` // ID
Permission PermissionType `json:"permission"` // Kafka permission
Topic string `json:"topic"` // Topic name pattern
Username string `json:"username"`
}
type AggregatorOut ¶ added in v0.3.0
type AggregatorOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
AggregatorOut Service type information
type AlertOut ¶
type AlertOut struct {
CreateTime time.Time `json:"create_time"` // Event creation timestamp (ISO 8601)
Event string `json:"event"` // Name of the alerting event
NodeName *string `json:"node_name,omitempty"` // Name of the service node
ProjectName string `json:"project_name"` // Project name
ServiceName *string `json:"service_name,omitempty"` // Service name
ServiceType *string `json:"service_type,omitempty"` // Service type code
Severity string `json:"severity"` // Severity of the event
}
type AlloydbomniOut ¶ added in v0.40.0
type AlloydbomniOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
AlloydbomniOut Service type information
type AuthenticationType ¶ added in v0.3.0
type AuthenticationType string
const ( AuthenticationTypeNull AuthenticationType = "null" AuthenticationTypeCachingSha2Password AuthenticationType = "caching_sha2_password" AuthenticationTypeMysqlNativePassword AuthenticationType = "mysql_native_password" )
type BackupConfigOut ¶
type BackupConfigOut struct {
FrequentIntervalMinutes *int `json:"frequent_interval_minutes,omitempty"` // Interval of taking a frequent backup in service types supporting different backup schedules
FrequentOldestAgeMinutes *int `json:"frequent_oldest_age_minutes,omitempty"` // Maximum age of the oldest frequent backup in service types supporting different backup schedules
InfrequentIntervalMinutes *int `json:"infrequent_interval_minutes,omitempty"` // Interval of taking an infrequent backup in service types supporting different backup schedules
InfrequentOldestAgeMinutes *int `json:"infrequent_oldest_age_minutes,omitempty"` // Maximum age of the oldest infrequent backup in service types supporting different backup schedules
Interval int `json:"interval"` // The interval, in hours, at which backups are generated. For some services, like PostgreSQL, this is the interval at which full snapshots are taken and continuous incremental backup stream is maintained in addition to that.
MaxCount int `json:"max_count"` // Maximum number of backups to keep. Zero when no backups are created.
RecoveryMode RecoveryModeType `json:"recovery_mode"` // Mechanism how backups can be restored. 'basic' means a backup is restored as is so that the system is restored to the state it was when the backup was generated. 'pitr' means point-in-time-recovery, which allows restoring the system to any state since the first available full snapshot.
}
BackupConfigOut Backup configuration for this service plan
type BackupOut ¶
type BackupOut struct {
AdditionalRegions []struct {
Cloud string `json:"cloud"` // Target cloud
PauseReason *string `json:"pause_reason,omitempty"` // Reason for pausing the backup synchronization
Paused *bool `json:"paused,omitempty"` // Indicates additional backup synchronization is paused
Region *string `json:"region,omitempty"` // Cloud storage region name
} `json:"additional_regions,omitempty"` // Additional backup regions, if available
BackupName string `json:"backup_name"` // Internal name of this backup
BackupTime time.Time `json:"backup_time"` // Backup timestamp (ISO 8601)
DataSize int `json:"data_size"` // Backup's original size before compression
StorageLocation *string `json:"storage_location,omitempty"` // Location where this backup is stored
TieredStorageDataSize *int `json:"tiered_storage_data_size,omitempty"` // The amount of tiered storage data in bytes referenced by this backup.
}
type CassandraOut ¶ added in v0.3.0
type CassandraOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
CassandraOut Service type information
type ClickhouseOut ¶ added in v0.3.0
type ClickhouseOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
ClickhouseOut Service type information
type ComponentOut ¶
type ComponentOut struct {
Component string `json:"component"` // Service component name
Host string `json:"host"` // DNS name for connecting to the service component
KafkaAuthenticationMethod KafkaAuthenticationMethodType `json:"kafka_authentication_method,omitempty"` // Kafka authentication method. This is a value specific to the 'kafka' service component
KafkaSslCa KafkaSslCaType `json:"kafka_ssl_ca,omitempty"` // Specifies if this port uses Project CA or Letsencrypt. If not specified, the default is using Project CA.This is a value specific to the 'kafka' service component.
Path *string `json:"path,omitempty"` // Path component of the service URL (useful only if service component is HTTP or HTTPS endpoint)
Port int `json:"port"` // Port number for connecting to the service component
PrivatelinkConnectionId *string `json:"privatelink_connection_id,omitempty"` // Privatelink connection ID
Route RouteType `json:"route"` // Network access route
Ssl *bool `json:"ssl,omitempty"` // Whether the endpoint is encrypted or accepts plaintext. By default endpoints are always encrypted andthis property is only included for service components that may disable encryption.
Usage UsageType `json:"usage"` // DNS usage name
}
type ConnectionInfoOut ¶ added in v0.26.0
type ConnectionInfoOut struct {
AggregatorHttpUri *string `json:"aggregator_http_uri,omitempty"`
Cassandra []string `json:"cassandra,omitempty"`
Clickhouse []string `json:"clickhouse,omitempty"`
Flink []string `json:"flink,omitempty"`
Grafana []string `json:"grafana,omitempty"`
HttpClusterUri *string `json:"http_cluster_uri,omitempty"`
HttpNodeUri *string `json:"http_node_uri,omitempty"`
Influxdb []string `json:"influxdb,omitempty"`
InfluxdbDbname *string `json:"influxdb_dbname,omitempty"`
InfluxdbPassword *string `json:"influxdb_password,omitempty"`
InfluxdbUri *string `json:"influxdb_uri,omitempty"`
InfluxdbUsername *string `json:"influxdb_username,omitempty"`
Kafka []string `json:"kafka,omitempty"`
KafkaAccessCert *string `json:"kafka_access_cert,omitempty"`
KafkaAccessKey *string `json:"kafka_access_key,omitempty"`
KafkaConnect []string `json:"kafka_connect,omitempty"`
KafkaConnectUri *string `json:"kafka_connect_uri,omitempty"`
KafkaMirrormaker []string `json:"kafka_mirrormaker,omitempty"`
KafkaRestUri *string `json:"kafka_rest_uri,omitempty"`
M3Aggregator []string `json:"m3aggregator,omitempty"`
M3Db []string `json:"m3db,omitempty"`
Mysql []string `json:"mysql,omitempty"`
MysqlParams []MysqlParamOut `json:"mysql_params,omitempty"`
MysqlReplicaUri *string `json:"mysql_replica_uri,omitempty"`
MysqlStandby []string `json:"mysql_standby,omitempty"`
Opensearch []string `json:"opensearch,omitempty"`
OpensearchDashboardsUri *string `json:"opensearch_dashboards_uri,omitempty"`
OpensearchPassword *string `json:"opensearch_password,omitempty"`
OpensearchUsername *string `json:"opensearch_username,omitempty"`
Pg []string `json:"pg,omitempty"`
PgParams []PgParamOut `json:"pg_params,omitempty"`
PgReplicaUri *string `json:"pg_replica_uri,omitempty"`
PgStandby []string `json:"pg_standby,omitempty"`
PgSyncing []string `json:"pg_syncing,omitempty"`
PrometheusRemoteReadUri *string `json:"prometheus_remote_read_uri,omitempty"`
PrometheusRemoteWriteUri *string `json:"prometheus_remote_write_uri,omitempty"`
QueryFrontendUri *string `json:"query_frontend_uri,omitempty"`
QueryUri *string `json:"query_uri,omitempty"`
ReceiverRemoteWriteUri *string `json:"receiver_remote_write_uri,omitempty"`
Redis []string `json:"redis,omitempty"`
RedisPassword *string `json:"redis_password,omitempty"`
RedisReplicaUri *string `json:"redis_replica_uri,omitempty"`
RedisSlave []string `json:"redis_slave,omitempty"`
SchemaRegistryUri *string `json:"schema_registry_uri,omitempty"`
Thanos []string `json:"thanos,omitempty"`
Valkey []string `json:"valkey,omitempty"`
ValkeyPassword *string `json:"valkey_password,omitempty"`
ValkeyReplicaUri *string `json:"valkey_replica_uri,omitempty"`
ValkeySlave []string `json:"valkey_slave,omitempty"`
}
ConnectionInfoOut Service-specific connection information properties
type ConnectionPoolOut ¶
type ConnectionPoolOut struct {
ConnectionUri string `json:"connection_uri"` // Connection URI for the DB pool
Database string `json:"database"` // Database name
PoolMode PoolModeType `json:"pool_mode"` // PGBouncer pool mode
PoolName string `json:"pool_name"` // Connection pool name
PoolSize int `json:"pool_size"` // Size of PGBouncer's PostgreSQL side connection pool
Username *string `json:"username,omitempty"` // Pool username
}
type CreateUserBackupIn ¶ added in v0.52.0
type CreateUserBackupIn struct {
BackupName string `json:"backup_name"` // The output file name.
}
CreateUserBackupIn Payload to be used with create_user_backup
type DatabaseOut ¶
type DatasetImportIn ¶
type DatasetImportIn struct {
DatasetName DatasetNameType `json:"dataset_name"` // Name of the dataset to import to PostgreSQL database. Used with dataset_import.
}
DatasetImportIn Payload to be used with dataset_import
type DatasetNameType ¶
type DatasetNameType string
const (
DatasetNameTypePagila DatasetNameType = "pagila"
)
type DbOut ¶ added in v0.3.0
type DbOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
DbOut Service type information
type DragonflyOut ¶ added in v0.6.0
type DragonflyOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
DragonflyOut Service type information
type ElasticsearchOut ¶ added in v0.3.0
type ElasticsearchOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
ElasticsearchOut Service type information
type EndpointType ¶ added in v0.31.0
type EndpointType string
const ( EndpointTypeAutoscaler EndpointType = "autoscaler" EndpointTypeDatadog EndpointType = "datadog" EndpointTypeExternalAwsCloudwatchLogs EndpointType = "external_aws_cloudwatch_logs" EndpointTypeExternalAwsCloudwatchMetrics EndpointType = "external_aws_cloudwatch_metrics" EndpointTypeExternalAwsS3 EndpointType = "external_aws_s3" EndpointTypeExternalAzureBlobStorage EndpointType = "external_azure_blob_storage" EndpointTypeExternalClickhouse EndpointType = "external_clickhouse" EndpointTypeExternalElasticsearchLogs EndpointType = "external_elasticsearch_logs" EndpointTypeExternalGoogleCloudBigquery EndpointType = "external_google_cloud_bigquery" EndpointTypeExternalGoogleCloudLogging EndpointType = "external_google_cloud_logging" EndpointTypeExternalKafka EndpointType = "external_kafka" EndpointTypeExternalMysql EndpointType = "external_mysql" EndpointTypeExternalOpensearchLogs EndpointType = "external_opensearch_logs" EndpointTypeExternalPostgresql EndpointType = "external_postgresql" EndpointTypeExternalPrometheus EndpointType = "external_prometheus" EndpointTypeExternalRedis EndpointType = "external_redis" EndpointTypeExternalSchemaRegistry EndpointType = "external_schema_registry" EndpointTypeExternalSumologicLogs EndpointType = "external_sumologic_logs" EndpointTypeJolokia EndpointType = "jolokia" EndpointTypePrometheus EndpointType = "prometheus" EndpointTypeRsyslog EndpointType = "rsyslog" )
type EndpointTypeOut ¶ added in v0.31.0
type EndpointTypeOut struct {
EndpointType string `json:"endpoint_type"` // Endpoint type name
ServiceTypes []string `json:"service_types"` // Supported service types
Title string `json:"title"` // Endpoint type description
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
type FlinkOut ¶ added in v0.3.0
type FlinkOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
FlinkOut Service type information
type GrafanaOut ¶ added in v0.3.0
type GrafanaOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
GrafanaOut Service type information
type Handler ¶
type Handler interface {
// ListProjectServiceTypes list service types for a project
// GET /v1/project/{project}/service_types
// https://api.aiven.io/doc/#tag/Service/operation/ListProjectServiceTypes
ListProjectServiceTypes(ctx context.Context, project string) (*ListProjectServiceTypesOut, error)
// ListPublicServiceTypes list publicly available service types
// GET /v1/service_types
// https://api.aiven.io/doc/#tag/Service/operation/ListPublicServiceTypes
ListPublicServiceTypes(ctx context.Context) (*ListPublicServiceTypesOut, error)
// ListServiceVersions list service versions
// GET /v1/service_versions
// https://api.aiven.io/doc/#tag/Service/operation/ListServiceVersions
ListServiceVersions(ctx context.Context) ([]ServiceVersionOut, error)
// ProjectGetServiceLogs get service log entries
// POST /v1/project/{project}/service/{service_name}/logs
// https://api.aiven.io/doc/#tag/Service/operation/ProjectGetServiceLogs
ProjectGetServiceLogs(ctx context.Context, project string, serviceName string, in *ProjectGetServiceLogsIn) (*ProjectGetServiceLogsOut, error)
// ProjectServiceTagsList list all tags attached to the service
// GET /v1/project/{project}/service/{service_name}/tags
// https://api.aiven.io/doc/#tag/Service/operation/ProjectServiceTagsList
ProjectServiceTagsList(ctx context.Context, project string, serviceName string) (map[string]string, error)
// ProjectServiceTagsReplace replace all project tags with a new set of tags, deleting old ones
// PUT /v1/project/{project}/service/{service_name}/tags
// https://api.aiven.io/doc/#tag/Service/operation/ProjectServiceTagsReplace
ProjectServiceTagsReplace(ctx context.Context, project string, serviceName string, in *ProjectServiceTagsReplaceIn) error
// ProjectServiceTagsUpdate update one or more tags, creating ones that don't exist, and deleting ones given NULL value
// PATCH /v1/project/{project}/service/{service_name}/tags
// https://api.aiven.io/doc/#tag/Service/operation/ProjectServiceTagsUpdate
ProjectServiceTagsUpdate(ctx context.Context, project string, serviceName string, in *ProjectServiceTagsUpdateIn) error
// ServiceAlertsList list active alerts for service
// GET /v1/project/{project}/service/{service_name}/alerts
// https://api.aiven.io/doc/#tag/Service/operation/ServiceAlertsList
ServiceAlertsList(ctx context.Context, project string, serviceName string) ([]AlertOut, error)
// ServiceBackupToAnotherRegionReport get service's backup to another region information
// POST /v1/project/{project}/service/{service_name}/backup_to_another_region/report
// https://api.aiven.io/doc/#tag/Service/operation/ServiceBackupToAnotherRegionReport
ServiceBackupToAnotherRegionReport(ctx context.Context, project string, serviceName string, in *ServiceBackupToAnotherRegionReportIn) (map[string]any, error)
// ServiceBackupsGet get service backup information
// GET /v1/project/{project}/service/{service_name}/backups
// https://api.aiven.io/doc/#tag/Service/operation/ServiceBackupsGet
ServiceBackupsGet(ctx context.Context, project string, serviceName string) (*ServiceBackupsGetOut, error)
// ServiceCancelQuery cancel specified query from service
// POST /v1/project/{project}/service/{service_name}/query/cancel
// https://api.aiven.io/doc/#tag/Service/operation/ServiceCancelQuery
ServiceCancelQuery(ctx context.Context, project string, serviceName string, in *ServiceCancelQueryIn) (bool, error)
// ServiceCreate create a service
// POST /v1/project/{project}/service
// https://api.aiven.io/doc/#tag/Service/operation/ServiceCreate
ServiceCreate(ctx context.Context, project string, in *ServiceCreateIn) (*ServiceCreateOut, error)
// ServiceDatabaseCreate create a new logical database for service
// POST /v1/project/{project}/service/{service_name}/db
// https://api.aiven.io/doc/#tag/Service/operation/ServiceDatabaseCreate
ServiceDatabaseCreate(ctx context.Context, project string, serviceName string, in *ServiceDatabaseCreateIn) error
// ServiceDatabaseDelete delete a logical database
// DELETE /v1/project/{project}/service/{service_name}/db/{dbname}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceDatabaseDelete
ServiceDatabaseDelete(ctx context.Context, project string, serviceName string, dbname string) error
// ServiceDatabaseList list service databases
// GET /v1/project/{project}/service/{service_name}/db
// https://api.aiven.io/doc/#tag/Service/operation/ServiceDatabaseList
ServiceDatabaseList(ctx context.Context, project string, serviceName string) ([]DatabaseOut, error)
// ServiceDelete terminate a service
// DELETE /v1/project/{project}/service/{service_name}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceDelete
ServiceDelete(ctx context.Context, project string, serviceName string) error
// ServiceEnableWrites temporarily enable writes for a service in read-only mode. Will only work if disk usage is lower than 99.0%
// POST /v1/project/{project}/service/{service_name}/enable-writes
// https://api.aiven.io/doc/#tag/Service/operation/ServiceEnableWrites
ServiceEnableWrites(ctx context.Context, project string, serviceName string) (*string, error)
// ServiceGet get service information
// GET /v1/project/{project}/service/{service_name}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceGet
ServiceGet(ctx context.Context, project string, serviceName string, query ...[2]string) (*ServiceGetOut, error)
// ServiceGetMigrationStatus get migration status
// GET /v1/project/{project}/service/{service_name}/migration
// https://api.aiven.io/doc/#tag/Service/operation/ServiceGetMigrationStatus
ServiceGetMigrationStatus(ctx context.Context, project string, serviceName string) (*ServiceGetMigrationStatusOut, error)
// ServiceInfluxDBStats list stats for influxdb
// GET /v1/project/{project}/service/{service_name}/influxdb/stats
// https://api.aiven.io/doc/#tag/Service/operation/ServiceInfluxDBStats
ServiceInfluxDBStats(ctx context.Context, project string, serviceName string) (map[string]any, error)
// ServiceIntegrationCreate create a new service integration
// POST /v1/project/{project}/integration
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationCreate
ServiceIntegrationCreate(ctx context.Context, project string, in *ServiceIntegrationCreateIn) (*ServiceIntegrationCreateOut, error)
// ServiceIntegrationDelete delete a service integration
// DELETE /v1/project/{project}/integration/{integration_id}
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationDelete
ServiceIntegrationDelete(ctx context.Context, project string, integrationId string) error
// ServiceIntegrationEndpointCreate create a new service integration endpoint
// POST /v1/project/{project}/integration_endpoint
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationEndpointCreate
ServiceIntegrationEndpointCreate(ctx context.Context, project string, in *ServiceIntegrationEndpointCreateIn) (*ServiceIntegrationEndpointCreateOut, error)
// ServiceIntegrationEndpointDelete delete a service integration endpoint
// DELETE /v1/project/{project}/integration_endpoint/{integration_endpoint_id}
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationEndpointDelete
ServiceIntegrationEndpointDelete(ctx context.Context, project string, integrationEndpointId string) error
// ServiceIntegrationEndpointGet get service integration endpoint
// GET /v1/project/{project}/integration_endpoint/{integration_endpoint_id}
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationEndpointGet
ServiceIntegrationEndpointGet(ctx context.Context, project string, integrationEndpointId string, query ...[2]string) (*ServiceIntegrationEndpointGetOut, error)
// ServiceIntegrationEndpointList list available integration endpoints for project
// GET /v1/project/{project}/integration_endpoint
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationEndpointList
ServiceIntegrationEndpointList(ctx context.Context, project string) ([]ServiceIntegrationEndpointOut, error)
// ServiceIntegrationEndpointTypes list available service integration endpoint types
// GET /v1/project/{project}/integration_endpoint_types
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationEndpointTypes
ServiceIntegrationEndpointTypes(ctx context.Context, project string) ([]EndpointTypeOut, error)
// ServiceIntegrationEndpointUpdate update service integration endpoint
// PUT /v1/project/{project}/integration_endpoint/{integration_endpoint_id}
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationEndpointUpdate
ServiceIntegrationEndpointUpdate(ctx context.Context, project string, integrationEndpointId string, in *ServiceIntegrationEndpointUpdateIn) (*ServiceIntegrationEndpointUpdateOut, error)
// ServiceIntegrationGet get service integration
// GET /v1/project/{project}/integration/{integration_id}
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationGet
ServiceIntegrationGet(ctx context.Context, project string, integrationId string) (*ServiceIntegrationGetOut, error)
// ServiceIntegrationList list available integrations for a service
// GET /v1/project/{project}/service/{service_name}/integration
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationList
ServiceIntegrationList(ctx context.Context, project string, serviceName string) ([]ServiceIntegrationOut, error)
// ServiceIntegrationTypes list available service integration types
// GET /v1/project/{project}/integration_types
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationTypes
ServiceIntegrationTypes(ctx context.Context, project string) ([]IntegrationTypeOut, error)
// ServiceIntegrationUpdate update a service integration
// PUT /v1/project/{project}/integration/{integration_id}
// https://api.aiven.io/doc/#tag/Service_Integrations/operation/ServiceIntegrationUpdate
ServiceIntegrationUpdate(ctx context.Context, project string, integrationId string, in *ServiceIntegrationUpdateIn) (*ServiceIntegrationUpdateOut, error)
// ServiceKmsGetCA retrieve a service CA
// GET /v1/project/{project}/service/{service_name}/kms/ca/{ca_name}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceKmsGetCA
ServiceKmsGetCA(ctx context.Context, project string, serviceName string, caName string) (string, error)
// ServiceKmsGetKeypair retrieve service keypair
// GET /v1/project/{project}/service/{service_name}/kms/keypairs/{keypair_name}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceKmsGetKeypair
ServiceKmsGetKeypair(ctx context.Context, project string, serviceName string, keypairName string) (*ServiceKmsGetKeypairOut, error)
// ServiceList list services
// GET /v1/project/{project}/service
// https://api.aiven.io/doc/#tag/Service/operation/ServiceList
ServiceList(ctx context.Context, project string) ([]ServiceOut, error)
// ServiceMaintenanceStart start maintenance updates
// PUT /v1/project/{project}/service/{service_name}/maintenance/start
// https://api.aiven.io/doc/#tag/Service/operation/ServiceMaintenanceStart
ServiceMaintenanceStart(ctx context.Context, project string, serviceName string) error
// ServiceMetricsFetch fetch service metrics
// POST /v1/project/{project}/service/{service_name}/metrics
// https://api.aiven.io/doc/#tag/Service/operation/ServiceMetricsFetch
ServiceMetricsFetch(ctx context.Context, project string, serviceName string, in *ServiceMetricsFetchIn) (map[string]any, error)
// ServiceQueryActivity fetch current queries for the service
// POST /v1/project/{project}/service/{service_name}/query/activity
// https://api.aiven.io/doc/#tag/Service/operation/ServiceQueryActivity
ServiceQueryActivity(ctx context.Context, project string, serviceName string, in *ServiceQueryActivityIn) ([]QueryOut, error)
// ServiceQueryStatisticsReset reset service's query statistics
// PUT /v1/project/{project}/service/{service_name}/query/stats/reset
// https://api.aiven.io/doc/#tag/Service/operation/ServiceQueryStatisticsReset
ServiceQueryStatisticsReset(ctx context.Context, project string, serviceName string) ([]map[string]any, error)
// ServiceTaskCreate create a new task for service
// POST /v1/project/{project}/service/{service_name}/task
// https://api.aiven.io/doc/#tag/Service/operation/ServiceTaskCreate
ServiceTaskCreate(ctx context.Context, project string, serviceName string, in *ServiceTaskCreateIn) (*ServiceTaskCreateOut, error)
// ServiceTaskGet get task result
// GET /v1/project/{project}/service/{service_name}/task/{task_id}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceTaskGet
ServiceTaskGet(ctx context.Context, project string, serviceName string, taskId string) (*ServiceTaskGetOut, error)
// ServiceUpdate update service configuration
// PUT /v1/project/{project}/service/{service_name}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceUpdate
ServiceUpdate(ctx context.Context, project string, serviceName string, in *ServiceUpdateIn, query ...[2]string) (*ServiceUpdateOut, error)
// ServiceUserCreate create a new (sub) user for service
// POST /v1/project/{project}/service/{service_name}/user
// https://api.aiven.io/doc/#tag/Service/operation/ServiceUserCreate
ServiceUserCreate(ctx context.Context, project string, serviceName string, in *ServiceUserCreateIn) (*ServiceUserCreateOut, error)
// ServiceUserCredentialsModify modify service user credentials
// PUT /v1/project/{project}/service/{service_name}/user/{service_username}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceUserCredentialsModify
ServiceUserCredentialsModify(ctx context.Context, project string, serviceName string, serviceUsername string, in *ServiceUserCredentialsModifyIn) (*ServiceUserCredentialsModifyOut, error)
// ServiceUserCredentialsReset reset service user credentials
// PUT /v1/project/{project}/service/{service_name}/user/{service_username}/credentials/reset
// https://api.aiven.io/doc/#tag/Service/operation/ServiceUserCredentialsReset
ServiceUserCredentialsReset(ctx context.Context, project string, serviceName string, serviceUsername string) (*ServiceUserCredentialsResetOut, error)
// ServiceUserDelete delete a service user
// DELETE /v1/project/{project}/service/{service_name}/user/{service_username}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceUserDelete
ServiceUserDelete(ctx context.Context, project string, serviceName string, serviceUsername string) error
// ServiceUserGet get details for a single user
// GET /v1/project/{project}/service/{service_name}/user/{service_username}
// https://api.aiven.io/doc/#tag/Service/operation/ServiceUserGet
ServiceUserGet(ctx context.Context, project string, serviceName string, serviceUsername string) (*ServiceUserGetOut, error)
}
type InfluxdbOut ¶ added in v0.3.0
type InfluxdbOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
InfluxdbOut Service type information
type IntegrationStatusOut ¶
type IntegrationStatusOut struct {
State StateOut `json:"state"` // Service integration state
StatusUserDesc string `json:"status_user_desc"` // Integration status description
}
IntegrationStatusOut Integration status
type IntegrationStatusType ¶ added in v0.3.0
type IntegrationStatusType string
const ( IntegrationStatusTypeFailed IntegrationStatusType = "failed" IntegrationStatusTypeInactive IntegrationStatusType = "inactive" IntegrationStatusTypeRunning IntegrationStatusType = "running" IntegrationStatusTypeStarting IntegrationStatusType = "starting" IntegrationStatusTypeUnknown IntegrationStatusType = "unknown" )
type IntegrationType ¶
type IntegrationType string
const ( IntegrationTypeAlertmanager IntegrationType = "alertmanager" IntegrationTypeApplicationServiceCredential IntegrationType = "application_service_credential" IntegrationTypeAutoscaler IntegrationType = "autoscaler" IntegrationTypeCaching IntegrationType = "caching" IntegrationTypeCassandraCrossServiceCluster IntegrationType = "cassandra_cross_service_cluster" IntegrationTypeClickhouseCredentials IntegrationType = "clickhouse_credentials" IntegrationTypeClickhouseKafka IntegrationType = "clickhouse_kafka" IntegrationTypeClickhousePostgresql IntegrationType = "clickhouse_postgresql" IntegrationTypeDashboard IntegrationType = "dashboard" IntegrationTypeDatadog IntegrationType = "datadog" IntegrationTypeDatasource IntegrationType = "datasource" IntegrationTypeDisasterRecovery IntegrationType = "disaster_recovery" IntegrationTypeExternalAwsCloudwatchLogs IntegrationType = "external_aws_cloudwatch_logs" IntegrationTypeExternalAwsCloudwatchMetrics IntegrationType = "external_aws_cloudwatch_metrics" IntegrationTypeExternalElasticsearchLogs IntegrationType = "external_elasticsearch_logs" IntegrationTypeExternalGoogleCloudLogging IntegrationType = "external_google_cloud_logging" IntegrationTypeExternalOpensearchLogs IntegrationType = "external_opensearch_logs" IntegrationTypeFlink IntegrationType = "flink" IntegrationTypeFlinkExternalBigquery IntegrationType = "flink_external_bigquery" IntegrationTypeFlinkExternalKafka IntegrationType = "flink_external_kafka" IntegrationTypeFlinkExternalPostgresql IntegrationType = "flink_external_postgresql" IntegrationTypeInternalConnectivity IntegrationType = "internal_connectivity" IntegrationTypeJolokia IntegrationType = "jolokia" IntegrationTypeKafkaConnect IntegrationType = "kafka_connect" IntegrationTypeKafkaConnectPostgresql IntegrationType = "kafka_connect_postgresql" IntegrationTypeKafkaLogs IntegrationType = "kafka_logs" IntegrationTypeKafkaMirrormaker IntegrationType = "kafka_mirrormaker" IntegrationTypeLogs IntegrationType = "logs" IntegrationTypeM3Aggregator IntegrationType = "m3aggregator" IntegrationTypeM3Coordinator IntegrationType = "m3coordinator" IntegrationTypeMetrics IntegrationType = "metrics" IntegrationTypeOpensearchCrossClusterReplication IntegrationType = "opensearch_cross_cluster_replication" IntegrationTypeOpensearchCrossClusterSearch IntegrationType = "opensearch_cross_cluster_search" IntegrationTypePrometheus IntegrationType = "prometheus" IntegrationTypeReadReplica IntegrationType = "read_replica" IntegrationTypeRsyslog IntegrationType = "rsyslog" IntegrationTypeSchemaRegistryProxy IntegrationType = "schema_registry_proxy" IntegrationTypeStresstester IntegrationType = "stresstester" IntegrationTypeThanosDistributedQuery IntegrationType = "thanos_distributed_query" IntegrationTypeThanosMigrate IntegrationType = "thanos_migrate" IntegrationTypeThanoscompactor IntegrationType = "thanoscompactor" IntegrationTypeThanosquery IntegrationType = "thanosquery" IntegrationTypeThanosruler IntegrationType = "thanosruler" IntegrationTypeThanosstore IntegrationType = "thanosstore" IntegrationTypeVector IntegrationType = "vector" IntegrationTypeVmalert IntegrationType = "vmalert" )
type IntegrationTypeOut ¶ added in v0.31.0
type IntegrationTypeOut struct {
DestDescription string `json:"dest_description"` // Description of the destination service
DestServiceType string `json:"dest_service_type"` // Service type. DEPRECATED: Use dest_service_types instead
DestServiceTypes []string `json:"dest_service_types"` // Supported destination service types
IntegrationType string `json:"integration_type"` // Integration type name
SourceDescription string `json:"source_description"` // Description of the source service
SourceServiceTypes []string `json:"source_service_types"` // Supported source service types
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
type KafkaAclOut ¶ added in v0.63.0
type KafkaAclOut struct {
Host string `json:"host"` // the host or * for all hosts
Id string `json:"id"` // ID
Operation OperationType `json:"operation"` // Kafka ACL operation represents an operation which an ACL grants or denies permission to perform
PatternType PatternType `json:"pattern_type"` // Kafka ACL pattern type of resource name
PermissionType KafkaAclPermissionType `json:"permission_type"` // Kafka ACL permission type
Principal string `json:"principal"` // principal is in 'principalType:name' format
ResourceName string `json:"resource_name"` // Resource pattern used to match specified resources
ResourceType ResourceType `json:"resource_type"` // Kafka ACL resource type represents a type of resource which an ACL can be applied to
}
type KafkaAclPermissionType ¶ added in v0.63.0
type KafkaAclPermissionType string
const ( KafkaAclPermissionTypeAllow KafkaAclPermissionType = "ALLOW" KafkaAclPermissionTypeDeny KafkaAclPermissionType = "DENY" )
type KafkaAuthenticationMethodType ¶ added in v0.3.0
type KafkaAuthenticationMethodType string
const ( KafkaAuthenticationMethodTypeCertificate KafkaAuthenticationMethodType = "certificate" KafkaAuthenticationMethodTypeSasl KafkaAuthenticationMethodType = "sasl" )
type KafkaConnectOut ¶ added in v0.3.0
type KafkaConnectOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
KafkaConnectOut Service type information
type KafkaMirrormakerOut ¶ added in v0.3.0
type KafkaMirrormakerOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
KafkaMirrormakerOut Service type information
type KafkaOut ¶ added in v0.3.0
type KafkaOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
KafkaOut Service type information
type KafkaSslCaType ¶ added in v0.11.0
type KafkaSslCaType string
const ( KafkaSslCaTypeProjectCa KafkaSslCaType = "project_ca" KafkaSslCaTypeLetsencrypt KafkaSslCaType = "letsencrypt" )
type LikelyErrorCauseType ¶ added in v0.3.0
type LikelyErrorCauseType string
const ( LikelyErrorCauseTypeNull LikelyErrorCauseType = "null" LikelyErrorCauseTypeDestination LikelyErrorCauseType = "destination" LikelyErrorCauseTypeIntegration LikelyErrorCauseType = "integration" LikelyErrorCauseTypeSource LikelyErrorCauseType = "source" LikelyErrorCauseTypeUnknown LikelyErrorCauseType = "unknown" )
type ListProjectServiceTypesOut ¶
type ListProjectServiceTypesOut struct {
Alloydbomni *AlloydbomniOut `json:"alloydbomni,omitempty"` // Service type information
Cassandra *CassandraOut `json:"cassandra,omitempty"` // Service type information
Clickhouse *ClickhouseOut `json:"clickhouse,omitempty"` // Service type information
Dragonfly *DragonflyOut `json:"dragonfly,omitempty"` // Service type information
Elasticsearch *ElasticsearchOut `json:"elasticsearch,omitempty"` // Service type information
Flink *FlinkOut `json:"flink,omitempty"` // Service type information
Grafana *GrafanaOut `json:"grafana,omitempty"` // Service type information
Influxdb *InfluxdbOut `json:"influxdb,omitempty"` // Service type information
Kafka *KafkaOut `json:"kafka,omitempty"` // Service type information
KafkaConnect *KafkaConnectOut `json:"kafka_connect,omitempty"` // Service type information
KafkaMirrormaker *KafkaMirrormakerOut `json:"kafka_mirrormaker,omitempty"` // Service type information
M3Aggregator *AggregatorOut `json:"m3aggregator,omitempty"` // Service type information
M3Db *DbOut `json:"m3db,omitempty"` // Service type information
Mysql *MysqlOut `json:"mysql,omitempty"` // Service type information
Opensearch *OpensearchOut `json:"opensearch,omitempty"` // Service type information
Pg *PgOut `json:"pg,omitempty"` // Service type information
Redis *RedisOut `json:"redis,omitempty"` // Service type information
Thanos *ThanosOut `json:"thanos,omitempty"` // Service type information
Valkey *ValkeyOut `json:"valkey,omitempty"` // Service type information
}
ListProjectServiceTypesOut Service plans by service type
type ListPublicServiceTypesOut ¶
type ListPublicServiceTypesOut struct {
Alloydbomni *AlloydbomniOut `json:"alloydbomni,omitempty"` // Service type information
Cassandra *CassandraOut `json:"cassandra,omitempty"` // Service type information
Clickhouse *ClickhouseOut `json:"clickhouse,omitempty"` // Service type information
Dragonfly *DragonflyOut `json:"dragonfly,omitempty"` // Service type information
Elasticsearch *ElasticsearchOut `json:"elasticsearch,omitempty"` // Service type information
Flink *FlinkOut `json:"flink,omitempty"` // Service type information
Grafana *GrafanaOut `json:"grafana,omitempty"` // Service type information
Influxdb *InfluxdbOut `json:"influxdb,omitempty"` // Service type information
Kafka *KafkaOut `json:"kafka,omitempty"` // Service type information
KafkaConnect *KafkaConnectOut `json:"kafka_connect,omitempty"` // Service type information
KafkaMirrormaker *KafkaMirrormakerOut `json:"kafka_mirrormaker,omitempty"` // Service type information
M3Aggregator *AggregatorOut `json:"m3aggregator,omitempty"` // Service type information
M3Db *DbOut `json:"m3db,omitempty"` // Service type information
Mysql *MysqlOut `json:"mysql,omitempty"` // Service type information
Opensearch *OpensearchOut `json:"opensearch,omitempty"` // Service type information
Pg *PgOut `json:"pg,omitempty"` // Service type information
Redis *RedisOut `json:"redis,omitempty"` // Service type information
Thanos *ThanosOut `json:"thanos,omitempty"` // Service type information
Valkey *ValkeyOut `json:"valkey,omitempty"` // Service type information
}
ListPublicServiceTypesOut Service plans by service type
type MaintenanceDowType ¶ added in v0.36.0
type MaintenanceDowType string
const ( MaintenanceDowTypeMonday MaintenanceDowType = "monday" MaintenanceDowTypeTuesday MaintenanceDowType = "tuesday" MaintenanceDowTypeWednesday MaintenanceDowType = "wednesday" MaintenanceDowTypeThursday MaintenanceDowType = "thursday" MaintenanceDowTypeFriday MaintenanceDowType = "friday" MaintenanceDowTypeSaturday MaintenanceDowType = "saturday" MaintenanceDowTypeSunday MaintenanceDowType = "sunday" MaintenanceDowTypeNever MaintenanceDowType = "never" )
type MaintenanceIn ¶
type MaintenanceIn struct {
Dow DowType `json:"dow,omitempty"` // Day of week for installing updates
Time *string `json:"time,omitempty"` // Time for installing updates, UTC
}
MaintenanceIn Automatic maintenance settings
type MaintenanceOut ¶
type MaintenanceOut struct {
Dow MaintenanceDowType `json:"dow"` // Day of week for installing updates
Time string `json:"time"` // Time for installing updates, UTC
Updates []UpdateOut `json:"updates"` // List of updates waiting to be installed
}
MaintenanceOut Automatic maintenance settings
type MasterLinkStatusType ¶ added in v0.3.0
type MasterLinkStatusType string
const ( MasterLinkStatusTypeUp MasterLinkStatusType = "up" MasterLinkStatusTypeDown MasterLinkStatusType = "down" )
type MetadataOut ¶
type MetadataOut struct {
EndOfLifeHelpArticleUrl *string `json:"end_of_life_help_article_url,omitempty"` // Link to the help article
EndOfLifePolicyUrl *string `json:"end_of_life_policy_url,omitempty"` // Link to the help article
ServiceEndOfLifeTime *time.Time `json:"service_end_of_life_time,omitempty"` // Timestamp in ISO 8601 format, always in UTC
UpgradeToServiceType *string `json:"upgrade_to_service_type,omitempty"` // If the customer takes no action, the service is updated to this service type when end of life is reached on the Aiven platform. If it is the same as the service type, the platform only upgrades the version.
UpgradeToVersion *string `json:"upgrade_to_version,omitempty"` // The version to which the service will be updated at the end of life on the Aiven platform if the user does not take any action
}
MetadataOut Notification metadata
type MethodType ¶
type MethodType string
const ( MethodTypeDump MethodType = "dump" MethodTypeMysqldump MethodType = "mysqldump" MethodTypePgDump MethodType = "pg_dump" MethodTypeReplication MethodType = "replication" MethodTypeScan MethodType = "scan" )
type MigrationCheckIn ¶
type MigrationCheckIn struct {
IgnoreDbs *string `json:"ignore_dbs,omitempty"` // Comma-separated list of databases, which should be ignored during migration (supported by MySQL and PostgreSQL only at the moment)
IgnoreRoles *string `json:"ignore_roles,omitempty"` // Comma-separated list of database roles, which should be ignored during migration (supported by PostgreSQL only at the moment)
Method MigrationCheckMethodType `json:"method,omitempty"` // The migration method to be used (currently supported only by Redis, Dragonfly, MySQL and PostgreSQL service types)
SourceProjectName *string `json:"source_project_name,omitempty"` // Project name
SourceServiceName *string `json:"source_service_name,omitempty"` // Service name
SourceServiceUri *string `json:"source_service_uri,omitempty"` // Service URI of the source MySQL or PostgreSQL database with admin credentials. Used with migration_check.
}
MigrationCheckIn Payload to be used with migration_check
type MigrationCheckMethodType ¶ added in v0.36.0
type MigrationCheckMethodType string
const ( MigrationCheckMethodTypeDump MigrationCheckMethodType = "dump" MigrationCheckMethodTypeReplication MigrationCheckMethodType = "replication" )
type MigrationDetailOut ¶
type MigrationDetailOut struct {
Dbname string `json:"dbname"` // Migrated db name (PG, MySQL) or number (Redis, Dragonfly)
Error *string `json:"error,omitempty"` // Error message in case that migration has failed
Method MethodType `json:"method"` // The migration method to be used (currently supported only by Redis, Dragonfly, MySQL and PostgreSQL service types)
Status MigrationDetailStatusType `json:"status"` // Migration status
}
type MigrationDetailStatusType ¶ added in v0.3.0
type MigrationDetailStatusType string
const ( MigrationDetailStatusTypeDone MigrationDetailStatusType = "done" MigrationDetailStatusTypeFailed MigrationDetailStatusType = "failed" MigrationDetailStatusTypeRunning MigrationDetailStatusType = "running" MigrationDetailStatusTypeSyncing MigrationDetailStatusType = "syncing" MigrationDetailStatusTypeWaiting MigrationDetailStatusType = "waiting" )
type MigrationOut ¶
type MigrationOut struct {
Error *string `json:"error,omitempty"` // Error message in case that migration has failed
MasterLastIoSecondsAgo *int `json:"master_last_io_seconds_ago,omitempty"` // Redis only: how many seconds since last I/O with redis master
MasterLinkStatus MasterLinkStatusType `json:"master_link_status,omitempty"` // Redis only: replication master link status
Method MethodType `json:"method"` // The migration method to be used (currently supported only by Redis, Dragonfly, MySQL and PostgreSQL service types)
Status MigrationStatusType `json:"status"` // Migration status
}
MigrationOut Service migration info
type MigrationStatusType ¶ added in v0.3.0
type MigrationStatusType string
const ( MigrationStatusTypeDone MigrationStatusType = "done" MigrationStatusTypeFailed MigrationStatusType = "failed" MigrationStatusTypeRunning MigrationStatusType = "running" MigrationStatusTypeSyncing MigrationStatusType = "syncing" MigrationStatusTypeWaiting MigrationStatusType = "waiting" )
type MysqlOut ¶ added in v0.3.0
type MysqlOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
MysqlOut Service type information
type MysqlParamOut ¶ added in v0.26.0
type NodeStateOut ¶
type NodeStateOut struct {
Name string `json:"name"` // Name of the service node
ProgressUpdates []ProgressUpdateOut `json:"progress_updates,omitempty"` // Extra information regarding the progress for current state
Role RoleType `json:"role,omitempty"` // Role of this node. Only returned for a subset of service types
Shard *ShardOut `json:"shard,omitempty"` // Shard of this node. Only returned for a subset of service types
State NodeStateType `json:"state"` // Current state of the service node
}
type NodeStateType ¶ added in v0.3.0
type NodeStateType string
const ( NodeStateTypeLeaving NodeStateType = "leaving" NodeStateTypeRunning NodeStateType = "running" NodeStateTypeSettingUpVm NodeStateType = "setting_up_vm" NodeStateTypeSyncingData NodeStateType = "syncing_data" NodeStateTypeTimingOut NodeStateType = "timing_out" NodeStateTypeUnknown NodeStateType = "unknown" )
type OpensearchOut ¶ added in v0.3.0
type OpensearchOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
OpensearchOut Service type information
type OperationType ¶ added in v0.38.0
type OperationType string
const ( OperationTypeAll OperationType = "All" OperationTypeAlter OperationType = "Alter" OperationTypeAlterConfigs OperationType = "AlterConfigs" OperationTypeClusterAction OperationType = "ClusterAction" OperationTypeCreate OperationType = "Create" OperationTypeCreateTokens OperationType = "CreateTokens" OperationTypeDelete OperationType = "Delete" OperationTypeDescribe OperationType = "Describe" OperationTypeDescribeConfigs OperationType = "DescribeConfigs" OperationTypeDescribeTokens OperationType = "DescribeTokens" OperationTypeIdempotentWrite OperationType = "IdempotentWrite" OperationTypeRead OperationType = "Read" OperationTypeWrite OperationType = "Write" )
type PatternType ¶ added in v0.63.0
type PatternType string
const ( PatternTypeLiteral PatternType = "LITERAL" PatternTypePrefixed PatternType = "PREFIXED" )
type PeriodType ¶
type PeriodType string
const ( PeriodTypeHour PeriodType = "hour" PeriodTypeDay PeriodType = "day" PeriodTypeWeek PeriodType = "week" PeriodTypeMonth PeriodType = "month" PeriodTypeYear PeriodType = "year" )
type PermissionType ¶ added in v0.3.0
type PermissionType string
const ( PermissionTypeAdmin PermissionType = "admin" PermissionTypeRead PermissionType = "read" PermissionTypeReadwrite PermissionType = "readwrite" PermissionTypeWrite PermissionType = "write" )
type PgOut ¶ added in v0.3.0
type PgOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
PgOut Service type information
type PgParamOut ¶ added in v0.26.0
type PitrAdditionalRegionOut ¶ added in v0.79.0
type PitrAdditionalRegionOut struct {
Cloud string `json:"cloud"` // Target cloud
PitrRangeEnd string `json:"pitr_range_end"` // Latest timestamp usable for PITR (ISO 8601) (always set)
PitrRangeStart string `json:"pitr_range_start"` // Earliest timestamp usable for PITR (ISO 8601) (always set)
Region string `json:"region"` // Cloud storage region name
}
type PitrOut ¶ added in v0.79.0
type PitrOut struct {
AdditionalRegions []PitrAdditionalRegionOut `json:"additional_regions"` // Empty array if BTAR is not enabled or BTAR+PITR is not supported.
PrimaryRegion PrimaryRegionOut `json:"primary_region"` // Point-in-time-recovery metadata related to the primary backup location of the service.
}
PitrOut Point-in-time-recovery metadata for the service. If not set, service type does not support PITR.
type PoolModeType ¶ added in v0.3.0
type PoolModeType string
const ( PoolModeTypeSession PoolModeType = "session" PoolModeTypeTransaction PoolModeType = "transaction" PoolModeTypeStatement PoolModeType = "statement" )
type PrimaryRegionOut ¶ added in v0.79.0
type PrimaryRegionOut struct {
PitrRangeEnd string `json:"pitr_range_end"` // Latest timestamp usable for PITR (ISO 8601) (null means current time)
PitrRangeStart string `json:"pitr_range_start"` // Earliest timestamp usable for PITR (ISO 8601) (null means no available backup for PITR)
}
PrimaryRegionOut Point-in-time-recovery metadata related to the primary backup location of the service.
type ProgressUpdateOut ¶
type ProgressUpdateOut struct {
Completed bool `json:"completed"` // Indicates whether this phase has been completed or not
Current *int `json:"current,omitempty"` // Current progress for this phase. May be missing or null.
Max *int `json:"max,omitempty"` // Maximum progress value for this phase. May be missing or null. May change.
Min *int `json:"min,omitempty"` // Minimum progress value for this phase. May be missing or null.
Phase PhaseType `json:"phase"` // Key identifying this phase
Unit UnitType `json:"unit,omitempty"` // Unit for current/min/max values. New units may be added. If null should be treated as generic unit
}
type ProjectGetServiceLogsIn ¶
type ProjectGetServiceLogsIn struct {
Limit *int `json:"limit,omitempty"` // How many log entries to receive at most
Offset *string `json:"offset,omitempty"` // Opaque offset identifier
SortOrder SortOrderType `json:"sort_order,omitempty"` // Sort order for log messages
}
ProjectGetServiceLogsIn ProjectGetServiceLogsRequestBody
type ProjectGetServiceLogsOut ¶
type ProjectGetServiceLogsOut struct {
FirstLogOffset string `json:"first_log_offset"` // Opaque offset identifier of the first received log message. A null value is returned when there are no logs at all.
Logs []LogOut `json:"logs"` // List of log entries
Offset string `json:"offset"` // Opaque offset identifier. A null value is returned when there are no logs at all.
}
ProjectGetServiceLogsOut ProjectGetServiceLogsResponse
type ProjectServiceTagsReplaceIn ¶
type ProjectServiceTagsReplaceIn struct {
Tags map[string]string `json:"tags"` // Set of resource tags
}
ProjectServiceTagsReplaceIn ProjectServiceTagsReplaceRequestBody
type ProjectServiceTagsUpdateIn ¶
type ProjectServiceTagsUpdateIn struct {
Tags map[string]string `json:"tags"` // Set of resource tags
}
ProjectServiceTagsUpdateIn ProjectServiceTagsUpdateRequestBody
type QueryOut ¶
type QueryOut struct {
ActiveChannelSubscriptions *int `json:"active_channel_subscriptions,omitempty"` // Currently active channel subscriptions
ActiveDatabase *string `json:"active_database,omitempty"` // Selected database
ActivePatternMatchingChannelSubscriptions *int `json:"active_pattern_matching_channel_subscriptions,omitempty"` // Currently active channel subscriptions using pattern matching
ApplicationName *string `json:"application_name,omitempty"` // Application name when set
BackendStart *string `json:"backend_start,omitempty"` // Timestamp in ISO 8601 format, always in UTC
BackendType *string `json:"backend_type,omitempty"` // Backend type
BackendXid *int `json:"backend_xid,omitempty"` // XID for current backend
BackendXmin *int `json:"backend_xmin,omitempty"` // xmin for current backend
ClientAddr *string `json:"client_addr,omitempty"` // IP address:port pair. Not always available due to load balancers
ClientHostname *string `json:"client_hostname,omitempty"` // Client hostname
ClientPort *int `json:"client_port,omitempty"` // Client port, -1 is unknown
ConnectionAgeSeconds *float64 `json:"connection_age_seconds,omitempty"` // Connection age in seconds
ConnectionIdleSeconds *float64 `json:"connection_idle_seconds,omitempty"` // Connection idle time in seconds
Datid *int `json:"datid,omitempty"` // Database ID
Datname *string `json:"datname,omitempty"` // Database name
Flags []string `json:"flags,omitempty"` // Connection state flags
FlagsRaw *string `json:"flags_raw,omitempty"` // Raw connection flags string
Id *string `json:"id,omitempty"` // Unique connection ID
LeaderPid *int `json:"leader_pid,omitempty"` // Leader process ID
MultiExecCommands *int `json:"multi_exec_commands,omitempty"` // Number of MULTI/EXEC comands
Name *string `json:"name,omitempty"` // Connection name, if specified
OutputBuffer *int `json:"output_buffer,omitempty"` // Output buffer length (disabled if 0)
OutputBufferMemory *int `json:"output_buffer_memory,omitempty"` // Output buffer memory
OutputListLength *int `json:"output_list_length,omitempty"` // Output list, overflow for output buffering
Pid *int `json:"pid,omitempty"` // Connection process ID
Query *string `json:"query,omitempty"` // Last/current query running on this connection
QueryBuffer *int `json:"query_buffer,omitempty"` // Query buffer length (disabled if 0)
QueryBufferFree *int `json:"query_buffer_free,omitempty"` // Free bytes in query buffer, if enabled
QueryDuration *float64 `json:"query_duration,omitempty"` // Duration of the last/current query in seconds
QueryId *int `json:"query_id,omitempty"` // Hash code to identify identical normalized queries.
QueryStart *string `json:"query_start,omitempty"` // Timestamp in ISO 8601 format, always in UTC
State *string `json:"state,omitempty"` // Connection state
StateChange *string `json:"state_change,omitempty"` // Timestamp in ISO 8601 format, always in UTC
Usename *string `json:"usename,omitempty"` // Username
Usesysid *int `json:"usesysid,omitempty"` // User ID
WaitEvent *string `json:"wait_event,omitempty"` // Connection wait event
WaitEventType *string `json:"wait_event_type,omitempty"` // Connection wait event type
Waiting *bool `json:"waiting,omitempty"` // Query is waiting
XactStart *string `json:"xact_start,omitempty"` // Timestamp in ISO 8601 format, always in UTC
}
type RecoveryModeType ¶ added in v0.3.0
type RecoveryModeType string
const ( RecoveryModeTypeBasic RecoveryModeType = "basic" RecoveryModeTypePitr RecoveryModeType = "pitr" )
type RedisOut ¶ added in v0.3.0
type RedisOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
RedisOut Service type information
type ResourceType ¶ added in v0.63.0
type ResourceType string
const ( ResourceTypeCluster ResourceType = "Cluster" ResourceTypeDelegationToken ResourceType = "DelegationToken" ResourceTypeGroup ResourceType = "Group" ResourceTypeTopic ResourceType = "Topic" ResourceTypeTransactionalId ResourceType = "TransactionalId" ResourceTypeUser ResourceType = "User" )
type ResultCodeOut ¶
type SchemaRegistryAclOut ¶
type SchemaRegistryAclOut struct {
Id *string `json:"id,omitempty"` // ID
Permission SchemaRegistryAclPermissionType `json:"permission"` // ACL entry for Schema Registry
Resource string `json:"resource"` // Schema Registry ACL entry resource name pattern
Username string `json:"username"`
}
type SchemaRegistryAclPermissionType ¶ added in v0.36.0
type SchemaRegistryAclPermissionType string
const ( SchemaRegistryAclPermissionTypeSchemaRegistryRead SchemaRegistryAclPermissionType = "schema_registry_read" SchemaRegistryAclPermissionTypeSchemaRegistryWrite SchemaRegistryAclPermissionType = "schema_registry_write" )
type ServerGroupOut ¶ added in v0.51.0
type ServerGroupOut struct {
Enabled *bool `json:"enabled,omitempty"` // Flag set if server group is in use for the service
Type *string `json:"type,omitempty"` // IaaS server group type
}
ServerGroupOut Service IaaS server group
type ServiceBackupToAnotherRegionReportIn ¶
type ServiceBackupToAnotherRegionReportIn struct {
Period PeriodType `json:"period,omitempty"` // Metrics time period
}
ServiceBackupToAnotherRegionReportIn ServiceBackupToAnotherRegionReportRequestBody
type ServiceBackupsGetOut ¶ added in v0.79.0
type ServiceBackupsGetOut struct {
Backups []BackupOut `json:"backups"` // List of backups for the service
Pitr *PitrOut `json:"pitr,omitempty"` // Point-in-time-recovery metadata for the service. If not set, service type does not support PITR.
}
ServiceBackupsGetOut ServiceBackupsGetResponse
type ServiceCancelQueryIn ¶
type ServiceCancelQueryIn struct {
Pid *int `json:"pid,omitempty"` // Database server connection ID
Terminate *bool `json:"terminate,omitempty"` // Request immediate termination instead of soft cancel
}
ServiceCancelQueryIn ServiceCancelQueryRequestBody
type ServiceCreateIn ¶
type ServiceCreateIn struct {
Cloud *string `json:"cloud,omitempty"` // Target cloud
CopyTags *bool `json:"copy_tags,omitempty"` // If this is a forked service, copy tags from the source service. If request contains additional tags, the tags copied from source are updated with them.
DiskSpaceMb *int `json:"disk_space_mb,omitempty"` // Megabytes of disk space for data storage
GroupName *string `json:"group_name,omitempty"` // Service group name (DEPRECATED: do not use)
Maintenance *MaintenanceIn `json:"maintenance,omitempty"` // Automatic maintenance settings
Plan string `json:"plan"` // Subscription plan
ProjectVpcId *string `json:"project_vpc_id"` // Project VPC ID
ServiceIntegrations *[]ServiceIntegrationIn `json:"service_integrations,omitempty"` // Service integrations to enable for the service. Some integration types affect how a service is created and they must be provided as part of the creation call instead of being defined later.
ServiceName string `json:"service_name"` // Service name
ServiceType string `json:"service_type"` // Service type code
StaticIps *[]string `json:"static_ips,omitempty"` // Static IP addresses to associate with the service
Tags *map[string]string `json:"tags,omitempty"` // Set of resource tags
TechEmails *[]TechEmailIn `json:"tech_emails,omitempty"` // List of service technical email addresses
TerminationProtection *bool `json:"termination_protection,omitempty"` // Service is protected against termination and powering off
UserConfig *map[string]any `json:"user_config,omitempty"` // Service type-specific settings
}
ServiceCreateIn ServiceCreateRequestBody
type ServiceCreateOut ¶
type ServiceCreateOut struct {
Acl []AclOut `json:"acl,omitempty"` // List of Aiven ACL entries for Kafka service
Backups []BackupOut `json:"backups,omitempty"` // List of backups for the service
CloudDescription *string `json:"cloud_description,omitempty"` // Cloud provider and location
CloudName string `json:"cloud_name"` // Target cloud
Components []ComponentOut `json:"components,omitempty"` // Service component information objects
ConnectionInfo map[string]any `json:"connection_info,omitempty"` // Service-specific connection information properties
ConnectionPools []ConnectionPoolOut `json:"connection_pools,omitempty"` // PostgreSQL PGBouncer connection pools
CreateTime time.Time `json:"create_time"` // Service creation timestamp (ISO 8601)
Databases []string `json:"databases,omitempty"` // List of service's user database names
DiskSpaceMb *int `json:"disk_space_mb,omitempty"` // Megabytes of disk space for data storage
Features map[string]any `json:"features,omitempty"` // Feature flags
GroupList []string `json:"group_list"` // List of service groups the service belongs to. This field is deprecated. It is always set to single element with value 'default'
KafkaAcl []KafkaAclOut `json:"kafka_acl,omitempty"` // List of Kafka-native ACL entries
Maintenance *MaintenanceOut `json:"maintenance,omitempty"` // Automatic maintenance settings
Metadata map[string]any `json:"metadata,omitempty"` // Service type specific metadata
NodeCount *int `json:"node_count,omitempty"` // Number of service nodes in the active plan
NodeCpuCount *int `json:"node_cpu_count,omitempty"` // Number of CPUs for each node
NodeMemoryMb *float64 `json:"node_memory_mb,omitempty"` // Megabytes of memory for each node
NodeStates []NodeStateOut `json:"node_states,omitempty"` // State of individual service nodes
Plan string `json:"plan"` // Subscription plan
ProjectVpcId string `json:"project_vpc_id"` // Project VPC ID
SchemaRegistryAcl []SchemaRegistryAclOut `json:"schema_registry_acl,omitempty"` // List of Schema Registry ACL entries
ServerGroup *ServerGroupOut `json:"server_group,omitempty"` // Service IaaS server group
ServiceIntegrations []ServiceIntegrationOut `json:"service_integrations"` // Integrations with other services
ServiceName string `json:"service_name"` // Service name
ServiceNotifications []ServiceNotificationOut `json:"service_notifications,omitempty"` // Service notifications
ServiceType string `json:"service_type"` // Service type code
ServiceTypeDescription *string `json:"service_type_description,omitempty"` // Single line description of the service
ServiceUri string `json:"service_uri"` // URI for connecting to the service (may be null)
ServiceUriParams map[string]any `json:"service_uri_params,omitempty"` // service_uri parameterized into key-value pairs
State ServiceStateType `json:"state"` // State of the service
Tags map[string]string `json:"tags,omitempty"` // Set of resource tags
TechEmails []TechEmailOut `json:"tech_emails,omitempty"` // List of service technical email addresses
TerminationProtection bool `json:"termination_protection"` // Service is protected against termination and powering off
Topics []TopicOut `json:"topics,omitempty"` // Kafka topics. DEPRECATED: Use /project/$project/service/$service/topic instead
UpdateTime time.Time `json:"update_time"` // Service last update timestamp (ISO 8601)
UserConfig map[string]any `json:"user_config"` // Service type-specific settings
Users []UserOut `json:"users,omitempty"` // List of service users
}
ServiceCreateOut Service information
type ServiceDatabaseCreateIn ¶
type ServiceDatabaseCreateIn struct {
Database string `json:"database"` // Service database name
LcCollate *string `json:"lc_collate,omitempty"` // Default string sort order (LC_COLLATE) for PostgreSQL database
LcCtype *string `json:"lc_ctype,omitempty"` // Default character classification (LC_CTYPE) for PostgreSQL database
}
ServiceDatabaseCreateIn ServiceDatabaseCreateRequestBody
type ServiceGetMigrationStatusOut ¶
type ServiceGetMigrationStatusOut struct {
Migration MigrationOut `json:"migration"` // Service migration info
MigrationDetail []MigrationDetailOut `json:"migration_detail,omitempty"` // Migration status per database
}
ServiceGetMigrationStatusOut ServiceGetMigrationStatusResponse
type ServiceGetOut ¶
type ServiceGetOut struct {
Acl []AclOut `json:"acl,omitempty"` // List of Aiven ACL entries for Kafka service
Backups []BackupOut `json:"backups,omitempty"` // List of backups for the service
CloudDescription *string `json:"cloud_description,omitempty"` // Cloud provider and location
CloudName string `json:"cloud_name"` // Target cloud
Components []ComponentOut `json:"components,omitempty"` // Service component information objects
ConnectionInfo *ConnectionInfoOut `json:"connection_info,omitempty"` // Service-specific connection information properties
ConnectionPools []ConnectionPoolOut `json:"connection_pools,omitempty"` // PostgreSQL PGBouncer connection pools
CreateTime time.Time `json:"create_time"` // Service creation timestamp (ISO 8601)
Databases []string `json:"databases,omitempty"` // List of service's user database names
DiskSpaceMb *int `json:"disk_space_mb,omitempty"` // Megabytes of disk space for data storage
Features map[string]any `json:"features,omitempty"` // Feature flags
GroupList []string `json:"group_list"` // List of service groups the service belongs to. This field is deprecated. It is always set to single element with value 'default'
KafkaAcl []KafkaAclOut `json:"kafka_acl,omitempty"` // List of Kafka-native ACL entries
Maintenance *MaintenanceOut `json:"maintenance,omitempty"` // Automatic maintenance settings
Metadata map[string]any `json:"metadata,omitempty"` // Service type specific metadata
NodeCount *int `json:"node_count,omitempty"` // Number of service nodes in the active plan
NodeCpuCount *int `json:"node_cpu_count,omitempty"` // Number of CPUs for each node
NodeMemoryMb *float64 `json:"node_memory_mb,omitempty"` // Megabytes of memory for each node
NodeStates []NodeStateOut `json:"node_states,omitempty"` // State of individual service nodes
Plan string `json:"plan"` // Subscription plan
ProjectVpcId string `json:"project_vpc_id"` // Project VPC ID
SchemaRegistryAcl []SchemaRegistryAclOut `json:"schema_registry_acl,omitempty"` // List of Schema Registry ACL entries
ServerGroup *ServerGroupOut `json:"server_group,omitempty"` // Service IaaS server group
ServiceIntegrations []ServiceIntegrationOut `json:"service_integrations"` // Integrations with other services
ServiceName string `json:"service_name"` // Service name
ServiceNotifications []ServiceNotificationOut `json:"service_notifications,omitempty"` // Service notifications
ServiceType string `json:"service_type"` // Service type code
ServiceTypeDescription *string `json:"service_type_description,omitempty"` // Single line description of the service
ServiceUri string `json:"service_uri"` // URI for connecting to the service (may be null)
ServiceUriParams map[string]string `json:"service_uri_params,omitempty"` // service_uri parameterized into key-value pairs
State ServiceStateType `json:"state"` // State of the service
Tags map[string]string `json:"tags,omitempty"` // Set of resource tags
TechEmails []TechEmailOut `json:"tech_emails,omitempty"` // List of service technical email addresses
TerminationProtection bool `json:"termination_protection"` // Service is protected against termination and powering off
Topics []TopicOut `json:"topics,omitempty"` // Kafka topics. DEPRECATED: Use /project/$project/service/$service/topic instead
UpdateTime time.Time `json:"update_time"` // Service last update timestamp (ISO 8601)
UserConfig map[string]any `json:"user_config"` // Service type-specific settings
Users []UserOut `json:"users,omitempty"` // List of service users
}
ServiceGetOut Service information
type ServiceHandler ¶
type ServiceHandler struct {
// contains filtered or unexported fields
}
func NewHandler ¶
func NewHandler(doer doer) ServiceHandler
func (*ServiceHandler) ListProjectServiceTypes ¶
func (h *ServiceHandler) ListProjectServiceTypes(ctx context.Context, project string) (*ListProjectServiceTypesOut, error)
func (*ServiceHandler) ListPublicServiceTypes ¶
func (h *ServiceHandler) ListPublicServiceTypes(ctx context.Context) (*ListPublicServiceTypesOut, error)
func (*ServiceHandler) ListServiceVersions ¶
func (h *ServiceHandler) ListServiceVersions(ctx context.Context) ([]ServiceVersionOut, error)
func (*ServiceHandler) ProjectGetServiceLogs ¶
func (h *ServiceHandler) ProjectGetServiceLogs(ctx context.Context, project string, serviceName string, in *ProjectGetServiceLogsIn) (*ProjectGetServiceLogsOut, error)
func (*ServiceHandler) ProjectServiceTagsList ¶
func (*ServiceHandler) ProjectServiceTagsReplace ¶
func (h *ServiceHandler) ProjectServiceTagsReplace(ctx context.Context, project string, serviceName string, in *ProjectServiceTagsReplaceIn) error
func (*ServiceHandler) ProjectServiceTagsUpdate ¶
func (h *ServiceHandler) ProjectServiceTagsUpdate(ctx context.Context, project string, serviceName string, in *ProjectServiceTagsUpdateIn) error
func (*ServiceHandler) ServiceAlertsList ¶
func (*ServiceHandler) ServiceBackupToAnotherRegionReport ¶
func (h *ServiceHandler) ServiceBackupToAnotherRegionReport(ctx context.Context, project string, serviceName string, in *ServiceBackupToAnotherRegionReportIn) (map[string]any, error)
func (*ServiceHandler) ServiceBackupsGet ¶
func (h *ServiceHandler) ServiceBackupsGet(ctx context.Context, project string, serviceName string) (*ServiceBackupsGetOut, error)
func (*ServiceHandler) ServiceCancelQuery ¶
func (h *ServiceHandler) ServiceCancelQuery(ctx context.Context, project string, serviceName string, in *ServiceCancelQueryIn) (bool, error)
func (*ServiceHandler) ServiceCreate ¶
func (h *ServiceHandler) ServiceCreate(ctx context.Context, project string, in *ServiceCreateIn) (*ServiceCreateOut, error)
func (*ServiceHandler) ServiceDatabaseCreate ¶
func (h *ServiceHandler) ServiceDatabaseCreate(ctx context.Context, project string, serviceName string, in *ServiceDatabaseCreateIn) error
func (*ServiceHandler) ServiceDatabaseDelete ¶
func (*ServiceHandler) ServiceDatabaseList ¶
func (h *ServiceHandler) ServiceDatabaseList(ctx context.Context, project string, serviceName string) ([]DatabaseOut, error)
func (*ServiceHandler) ServiceDelete ¶
func (*ServiceHandler) ServiceEnableWrites ¶
func (*ServiceHandler) ServiceGet ¶
func (h *ServiceHandler) ServiceGet(ctx context.Context, project string, serviceName string, query ...[2]string) (*ServiceGetOut, error)
func (*ServiceHandler) ServiceGetMigrationStatus ¶
func (h *ServiceHandler) ServiceGetMigrationStatus(ctx context.Context, project string, serviceName string) (*ServiceGetMigrationStatusOut, error)
func (*ServiceHandler) ServiceInfluxDBStats ¶
func (*ServiceHandler) ServiceIntegrationCreate ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationCreate(ctx context.Context, project string, in *ServiceIntegrationCreateIn) (*ServiceIntegrationCreateOut, error)
func (*ServiceHandler) ServiceIntegrationDelete ¶ added in v0.31.0
func (*ServiceHandler) ServiceIntegrationEndpointCreate ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationEndpointCreate(ctx context.Context, project string, in *ServiceIntegrationEndpointCreateIn) (*ServiceIntegrationEndpointCreateOut, error)
func (*ServiceHandler) ServiceIntegrationEndpointDelete ¶ added in v0.31.0
func (*ServiceHandler) ServiceIntegrationEndpointGet ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationEndpointGet(ctx context.Context, project string, integrationEndpointId string, query ...[2]string) (*ServiceIntegrationEndpointGetOut, error)
func (*ServiceHandler) ServiceIntegrationEndpointList ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationEndpointList(ctx context.Context, project string) ([]ServiceIntegrationEndpointOut, error)
func (*ServiceHandler) ServiceIntegrationEndpointTypes ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationEndpointTypes(ctx context.Context, project string) ([]EndpointTypeOut, error)
func (*ServiceHandler) ServiceIntegrationEndpointUpdate ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationEndpointUpdate(ctx context.Context, project string, integrationEndpointId string, in *ServiceIntegrationEndpointUpdateIn) (*ServiceIntegrationEndpointUpdateOut, error)
func (*ServiceHandler) ServiceIntegrationGet ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationGet(ctx context.Context, project string, integrationId string) (*ServiceIntegrationGetOut, error)
func (*ServiceHandler) ServiceIntegrationList ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationList(ctx context.Context, project string, serviceName string) ([]ServiceIntegrationOut, error)
func (*ServiceHandler) ServiceIntegrationTypes ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationTypes(ctx context.Context, project string) ([]IntegrationTypeOut, error)
func (*ServiceHandler) ServiceIntegrationUpdate ¶ added in v0.31.0
func (h *ServiceHandler) ServiceIntegrationUpdate(ctx context.Context, project string, integrationId string, in *ServiceIntegrationUpdateIn) (*ServiceIntegrationUpdateOut, error)
func (*ServiceHandler) ServiceKmsGetCA ¶
func (*ServiceHandler) ServiceKmsGetKeypair ¶
func (h *ServiceHandler) ServiceKmsGetKeypair(ctx context.Context, project string, serviceName string, keypairName string) (*ServiceKmsGetKeypairOut, error)
func (*ServiceHandler) ServiceList ¶
func (h *ServiceHandler) ServiceList(ctx context.Context, project string) ([]ServiceOut, error)
func (*ServiceHandler) ServiceMaintenanceStart ¶
func (*ServiceHandler) ServiceMetricsFetch ¶
func (h *ServiceHandler) ServiceMetricsFetch(ctx context.Context, project string, serviceName string, in *ServiceMetricsFetchIn) (map[string]any, error)
func (*ServiceHandler) ServiceQueryActivity ¶
func (h *ServiceHandler) ServiceQueryActivity(ctx context.Context, project string, serviceName string, in *ServiceQueryActivityIn) ([]QueryOut, error)
func (*ServiceHandler) ServiceQueryStatisticsReset ¶
func (*ServiceHandler) ServiceTaskCreate ¶
func (h *ServiceHandler) ServiceTaskCreate(ctx context.Context, project string, serviceName string, in *ServiceTaskCreateIn) (*ServiceTaskCreateOut, error)
func (*ServiceHandler) ServiceTaskGet ¶
func (h *ServiceHandler) ServiceTaskGet(ctx context.Context, project string, serviceName string, taskId string) (*ServiceTaskGetOut, error)
func (*ServiceHandler) ServiceUpdate ¶
func (h *ServiceHandler) ServiceUpdate(ctx context.Context, project string, serviceName string, in *ServiceUpdateIn, query ...[2]string) (*ServiceUpdateOut, error)
func (*ServiceHandler) ServiceUserCreate ¶ added in v0.38.0
func (h *ServiceHandler) ServiceUserCreate(ctx context.Context, project string, serviceName string, in *ServiceUserCreateIn) (*ServiceUserCreateOut, error)
func (*ServiceHandler) ServiceUserCredentialsModify ¶ added in v0.38.0
func (h *ServiceHandler) ServiceUserCredentialsModify(ctx context.Context, project string, serviceName string, serviceUsername string, in *ServiceUserCredentialsModifyIn) (*ServiceUserCredentialsModifyOut, error)
func (*ServiceHandler) ServiceUserCredentialsReset ¶ added in v0.38.0
func (h *ServiceHandler) ServiceUserCredentialsReset(ctx context.Context, project string, serviceName string, serviceUsername string) (*ServiceUserCredentialsResetOut, error)
func (*ServiceHandler) ServiceUserDelete ¶ added in v0.38.0
func (*ServiceHandler) ServiceUserGet ¶ added in v0.38.0
func (h *ServiceHandler) ServiceUserGet(ctx context.Context, project string, serviceName string, serviceUsername string) (*ServiceUserGetOut, error)
type ServiceIntegrationCreateIn ¶ added in v0.31.0
type ServiceIntegrationCreateIn struct {
DestEndpointId *string `json:"dest_endpoint_id,omitempty"` // Integration destination endpoint ID
DestProject *string `json:"dest_project,omitempty"` // Defaults to project in the request path
DestService *string `json:"dest_service,omitempty"` // Destination service name
IntegrationType IntegrationType `json:"integration_type"` // Service integration type
SourceEndpointId *string `json:"source_endpoint_id,omitempty"` // Integration source endpoint ID
SourceProject *string `json:"source_project,omitempty"` // Defaults to project in the request path
SourceService *string `json:"source_service,omitempty"` // Source service name
UserConfig *map[string]any `json:"user_config,omitempty"` // Service type-specific settings
}
ServiceIntegrationCreateIn ServiceIntegrationCreateRequestBody
type ServiceIntegrationCreateOut ¶ added in v0.31.0
type ServiceIntegrationCreateOut struct {
Active bool `json:"active"` // True when integration is active
Description string `json:"description"` // Description of the integration
DestEndpoint *string `json:"dest_endpoint,omitempty"` // Destination endpoint name
DestEndpointId *string `json:"dest_endpoint_id,omitempty"` // Destination endpoint id
DestProject string `json:"dest_project"` // Project name
DestService *string `json:"dest_service,omitempty"` // Destination service name
DestServiceType string `json:"dest_service_type"` // Service type code
Enabled bool `json:"enabled"` // True when integration is enabled
IntegrationStatus *IntegrationStatusOut `json:"integration_status,omitempty"` // Integration status
IntegrationType IntegrationType `json:"integration_type"` // Service integration type
ServiceIntegrationId string `json:"service_integration_id"` // Integration ID
SourceEndpoint *string `json:"source_endpoint,omitempty"` // Source endpoint name
SourceEndpointId *string `json:"source_endpoint_id,omitempty"` // Source endpoint ID
SourceProject string `json:"source_project"` // Project name
SourceService string `json:"source_service"` // Source service name
SourceServiceType string `json:"source_service_type"` // Service type code
UserConfig map[string]any `json:"user_config,omitempty"` // Service integration settings
}
ServiceIntegrationCreateOut Service integration
type ServiceIntegrationEndpointCreateIn ¶ added in v0.31.0
type ServiceIntegrationEndpointCreateIn struct {
EndpointName string `json:"endpoint_name"` // Integration endpoint name
EndpointType EndpointType `json:"endpoint_type"` // Service integration endpoint type
UserConfig map[string]any `json:"user_config"` // Service integration endpoint settings
}
ServiceIntegrationEndpointCreateIn ServiceIntegrationEndpointCreateRequestBody
type ServiceIntegrationEndpointCreateOut ¶ added in v0.31.0
type ServiceIntegrationEndpointCreateOut struct {
EndpointConfig map[string]any `json:"endpoint_config"` // Service integration endpoint backend settings
EndpointId string `json:"endpoint_id"` // Integration endpoint ID
EndpointName string `json:"endpoint_name"` // Integration endpoint name
EndpointType EndpointType `json:"endpoint_type"` // Integration endpoint type
UserConfig map[string]any `json:"user_config"` // Service integration endpoint settings
}
ServiceIntegrationEndpointCreateOut Service integration endpoint
type ServiceIntegrationEndpointGetOut ¶ added in v0.31.0
type ServiceIntegrationEndpointGetOut struct {
EndpointConfig map[string]any `json:"endpoint_config"` // Service integration endpoint backend settings
EndpointId string `json:"endpoint_id"` // Integration endpoint ID
EndpointName string `json:"endpoint_name"` // Integration endpoint name
EndpointType EndpointType `json:"endpoint_type"` // Integration endpoint type
UserConfig map[string]any `json:"user_config"` // Service integration endpoint settings
}
ServiceIntegrationEndpointGetOut Service integration endpoint
type ServiceIntegrationEndpointOut ¶ added in v0.31.0
type ServiceIntegrationEndpointOut struct {
EndpointConfig map[string]any `json:"endpoint_config"` // Service integration endpoint backend settings
EndpointId string `json:"endpoint_id"` // Integration endpoint ID
EndpointName string `json:"endpoint_name"` // Integration endpoint name
EndpointType EndpointType `json:"endpoint_type"` // Integration endpoint type
UserConfig map[string]any `json:"user_config"` // Service integration endpoint settings
}
type ServiceIntegrationEndpointUpdateIn ¶ added in v0.31.0
type ServiceIntegrationEndpointUpdateIn struct {
UserConfig map[string]any `json:"user_config"` // Service integration endpoint settings
}
ServiceIntegrationEndpointUpdateIn ServiceIntegrationEndpointUpdateRequestBody
type ServiceIntegrationEndpointUpdateOut ¶ added in v0.31.0
type ServiceIntegrationEndpointUpdateOut struct {
EndpointConfig map[string]any `json:"endpoint_config"` // Service integration endpoint backend settings
EndpointId string `json:"endpoint_id"` // Integration endpoint ID
EndpointName string `json:"endpoint_name"` // Integration endpoint name
EndpointType EndpointType `json:"endpoint_type"` // Integration endpoint type
UserConfig map[string]any `json:"user_config"` // Service integration endpoint settings
}
ServiceIntegrationEndpointUpdateOut Service integration endpoint
type ServiceIntegrationGetOut ¶ added in v0.31.0
type ServiceIntegrationGetOut struct {
Active bool `json:"active"` // True when integration is active
Description string `json:"description"` // Description of the integration
DestEndpoint *string `json:"dest_endpoint,omitempty"` // Destination endpoint name
DestEndpointId *string `json:"dest_endpoint_id,omitempty"` // Destination endpoint id
DestProject string `json:"dest_project"` // Project name
DestService *string `json:"dest_service,omitempty"` // Destination service name
DestServiceType string `json:"dest_service_type"` // Service type code
Enabled bool `json:"enabled"` // True when integration is enabled
IntegrationStatus *IntegrationStatusOut `json:"integration_status,omitempty"` // Integration status
IntegrationType IntegrationType `json:"integration_type"` // Service integration type
ServiceIntegrationId string `json:"service_integration_id"` // Integration ID
SourceEndpoint *string `json:"source_endpoint,omitempty"` // Source endpoint name
SourceEndpointId *string `json:"source_endpoint_id,omitempty"` // Source endpoint ID
SourceProject string `json:"source_project"` // Project name
SourceService string `json:"source_service"` // Source service name
SourceServiceType string `json:"source_service_type"` // Service type code
UserConfig map[string]any `json:"user_config,omitempty"` // Service integration settings
}
ServiceIntegrationGetOut Service integration
type ServiceIntegrationIn ¶
type ServiceIntegrationIn struct {
DestEndpointId *string `json:"dest_endpoint_id,omitempty"` // Integration destination endpoint ID
DestProject *string `json:"dest_project,omitempty"` // Defaults to project in the request path
DestService *string `json:"dest_service,omitempty"` // Destination service name
IntegrationType IntegrationType `json:"integration_type"` // Service integration type
SourceEndpointId *string `json:"source_endpoint_id,omitempty"` // Integration source endpoint ID
SourceProject *string `json:"source_project,omitempty"` // Defaults to project in the request path
SourceService *string `json:"source_service,omitempty"` // Source service name
UserConfig *map[string]any `json:"user_config,omitempty"` // Service type-specific settings
}
type ServiceIntegrationOut ¶
type ServiceIntegrationOut struct {
Active bool `json:"active"` // True when integration is active
Description string `json:"description"` // Description of the integration
DestEndpoint *string `json:"dest_endpoint,omitempty"` // Destination endpoint name
DestEndpointId *string `json:"dest_endpoint_id,omitempty"` // Destination endpoint id
DestProject string `json:"dest_project"` // Project name
DestService *string `json:"dest_service,omitempty"` // Destination service name
DestServiceType string `json:"dest_service_type"` // Service type code
Enabled bool `json:"enabled"` // True when integration is enabled
IntegrationStatus *IntegrationStatusOut `json:"integration_status,omitempty"` // Integration status
IntegrationType IntegrationType `json:"integration_type"` // Service integration type
ServiceIntegrationId string `json:"service_integration_id"` // Integration ID
SourceEndpoint *string `json:"source_endpoint,omitempty"` // Source endpoint name
SourceEndpointId *string `json:"source_endpoint_id,omitempty"` // Source endpoint ID
SourceProject string `json:"source_project"` // Project name
SourceService string `json:"source_service"` // Source service name
SourceServiceType string `json:"source_service_type"` // Service type code
UserConfig map[string]any `json:"user_config,omitempty"` // Service integration settings
}
type ServiceIntegrationUpdateIn ¶ added in v0.31.0
type ServiceIntegrationUpdateIn struct {
UserConfig map[string]any `json:"user_config"` // Service integration settings
}
ServiceIntegrationUpdateIn ServiceIntegrationUpdateRequestBody
type ServiceIntegrationUpdateOut ¶ added in v0.31.0
type ServiceIntegrationUpdateOut struct {
Active bool `json:"active"` // True when integration is active
Description string `json:"description"` // Description of the integration
DestEndpoint *string `json:"dest_endpoint,omitempty"` // Destination endpoint name
DestEndpointId *string `json:"dest_endpoint_id,omitempty"` // Destination endpoint id
DestProject string `json:"dest_project"` // Project name
DestService *string `json:"dest_service,omitempty"` // Destination service name
DestServiceType string `json:"dest_service_type"` // Service type code
Enabled bool `json:"enabled"` // True when integration is enabled
IntegrationStatus *IntegrationStatusOut `json:"integration_status,omitempty"` // Integration status
IntegrationType string `json:"integration_type"` // Type of the integration
ServiceIntegrationId string `json:"service_integration_id"` // Integration ID
SourceEndpoint *string `json:"source_endpoint,omitempty"` // Source endpoint name
SourceEndpointId *string `json:"source_endpoint_id,omitempty"` // Source endpoint ID
SourceProject string `json:"source_project"` // Project name
SourceService string `json:"source_service"` // Source service name
SourceServiceType string `json:"source_service_type"` // Service type code
UserConfig map[string]any `json:"user_config,omitempty"` // Service integration settings
}
ServiceIntegrationUpdateOut Service integration
type ServiceKmsGetKeypairOut ¶
type ServiceKmsGetKeypairOut struct {
Certificate string `json:"certificate"` // PEM encoded certificate
Key string `json:"key"` // PEM encoded private key
}
ServiceKmsGetKeypairOut ServiceKmsGetKeypairResponse
type ServiceMetricsFetchIn ¶
type ServiceMetricsFetchIn struct {
Period PeriodType `json:"period,omitempty"` // Metrics time period
}
ServiceMetricsFetchIn ServiceMetricsFetchRequestBody
type ServiceNotificationOut ¶
type ServiceNotificationOut struct {
Level LevelType `json:"level"` // Notification level
Message string `json:"message"` // Human notification message
Metadata MetadataOut `json:"metadata"` // Notification metadata
Type ServiceNotificationType `json:"type"` // Notification type
}
type ServiceNotificationType ¶ added in v0.3.0
type ServiceNotificationType string
const ( ServiceNotificationTypeServiceEndOfLife ServiceNotificationType = "service_end_of_life" ServiceNotificationTypeServicePoweredOffRemoval ServiceNotificationType = "service_powered_off_removal" )
type ServiceOut ¶
type ServiceOut struct {
Acl []AclOut `json:"acl,omitempty"` // List of Aiven ACL entries for Kafka service
Backups []BackupOut `json:"backups,omitempty"` // List of backups for the service
CloudDescription *string `json:"cloud_description,omitempty"` // Cloud provider and location
CloudName string `json:"cloud_name"` // Target cloud
Components []ComponentOut `json:"components,omitempty"` // Service component information objects
ConnectionInfo map[string]any `json:"connection_info,omitempty"` // Service-specific connection information properties
ConnectionPools []ConnectionPoolOut `json:"connection_pools,omitempty"` // PostgreSQL PGBouncer connection pools
CreateTime time.Time `json:"create_time"` // Service creation timestamp (ISO 8601)
Databases []string `json:"databases,omitempty"` // List of service's user database names
DiskSpaceMb *int `json:"disk_space_mb,omitempty"` // Megabytes of disk space for data storage
Features map[string]any `json:"features,omitempty"` // Feature flags
GroupList []string `json:"group_list"` // List of service groups the service belongs to. This field is deprecated. It is always set to single element with value 'default'
KafkaAcl []KafkaAclOut `json:"kafka_acl,omitempty"` // List of Kafka-native ACL entries
Maintenance *MaintenanceOut `json:"maintenance,omitempty"` // Automatic maintenance settings
Metadata map[string]any `json:"metadata,omitempty"` // Service type specific metadata
NodeCount *int `json:"node_count,omitempty"` // Number of service nodes in the active plan
NodeCpuCount *int `json:"node_cpu_count,omitempty"` // Number of CPUs for each node
NodeMemoryMb *float64 `json:"node_memory_mb,omitempty"` // Megabytes of memory for each node
NodeStates []NodeStateOut `json:"node_states,omitempty"` // State of individual service nodes
Plan string `json:"plan"` // Subscription plan
ProjectVpcId string `json:"project_vpc_id"` // Project VPC ID
SchemaRegistryAcl []SchemaRegistryAclOut `json:"schema_registry_acl,omitempty"` // List of Schema Registry ACL entries
ServerGroup *ServerGroupOut `json:"server_group,omitempty"` // Service IaaS server group
ServiceIntegrations []ServiceIntegrationOut `json:"service_integrations"` // Integrations with other services
ServiceName string `json:"service_name"` // Service name
ServiceNotifications []ServiceNotificationOut `json:"service_notifications,omitempty"` // Service notifications
ServiceType string `json:"service_type"` // Service type code
ServiceTypeDescription *string `json:"service_type_description,omitempty"` // Single line description of the service
ServiceUri string `json:"service_uri"` // URI for connecting to the service (may be null)
ServiceUriParams map[string]any `json:"service_uri_params,omitempty"` // service_uri parameterized into key-value pairs
State ServiceStateType `json:"state"` // State of the service
Tags map[string]string `json:"tags,omitempty"` // Set of resource tags
TechEmails []TechEmailOut `json:"tech_emails,omitempty"` // List of service technical email addresses
TerminationProtection bool `json:"termination_protection"` // Service is protected against termination and powering off
Topics []TopicOut `json:"topics,omitempty"` // Kafka topics. DEPRECATED: Use /project/$project/service/$service/topic instead
UpdateTime time.Time `json:"update_time"` // Service last update timestamp (ISO 8601)
UserConfig map[string]any `json:"user_config"` // Service type-specific settings
Users []UserOut `json:"users,omitempty"` // List of service users
}
type ServicePlanOut ¶
type ServicePlanOut struct {
BackupConfig BackupConfigOut `json:"backup_config"` // Backup configuration for this service plan
MaxMemoryPercent *int `json:"max_memory_percent,omitempty"` // Maximum amount of system memory as a percentage (0-100) the service can actually use after taking into account management overhead. This is relevant for memory bound services for which some service management operations require allocating proportional amount of memory on top the basic load.
NodeCount *int `json:"node_count,omitempty"` // Number of nodes in this service plan
Regions map[string]any `json:"regions,omitempty"` // Service plan hourly price per cloud region
ServicePlan string `json:"service_plan"` // Subscription plan
ServiceType string `json:"service_type"` // Service type code
ShardCount *int `json:"shard_count,omitempty"` // Number of shards in this service plan
}
type ServiceQueryActivityIn ¶
type ServiceQueryActivityIn struct {
Limit *int `json:"limit,omitempty"` // Limit for number of results
Offset *int `json:"offset,omitempty"` // Offset for retrieved results based on sort order
OrderBy *string `json:"order_by,omitempty"` // Sort order can be either asc or desc and multiple comma separated columns with their own order can be specified: :asc,:desc.
}
ServiceQueryActivityIn ServiceQueryActivityRequestBody
type ServiceStateType ¶ added in v0.3.0
type ServiceStateType string
const ( ServiceStateTypePoweroff ServiceStateType = "POWEROFF" ServiceStateTypeRebalancing ServiceStateType = "REBALANCING" ServiceStateTypeRebuilding ServiceStateType = "REBUILDING" ServiceStateTypeRunning ServiceStateType = "RUNNING" )
type ServiceTaskCreateIn ¶
type ServiceTaskCreateIn struct {
CreateUserBackup *CreateUserBackupIn `json:"create_user_backup,omitempty"` // Payload to be used with create_user_backup
DatasetImport *DatasetImportIn `json:"dataset_import,omitempty"` // Payload to be used with dataset_import
MigrationCheck *MigrationCheckIn `json:"migration_check,omitempty"` // Payload to be used with migration_check
TargetVersion TargetVersionType `json:"target_version,omitempty"` // Target version used with upgrade_check
TaskType TaskType `json:"task_type"` // Service task type
}
ServiceTaskCreateIn ServiceTaskCreateRequestBody
type ServiceTaskCreateOut ¶
type ServiceTaskCreateOut struct {
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
Result string `json:"result"` // Task result
ResultCodes []ResultCodeOut `json:"result_codes,omitempty"` // List of result codes
Success bool `json:"success"` // Task success
TaskId string `json:"task_id"` // Unique identifier for the task
TaskType string `json:"task_type"` // Task type
}
ServiceTaskCreateOut Task info
type ServiceTaskGetOut ¶
type ServiceTaskGetOut struct {
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
Result string `json:"result"` // Task result
ResultCodes []ResultCodeOut `json:"result_codes,omitempty"` // List of result codes
Success bool `json:"success"` // Task success
TaskId string `json:"task_id"` // Unique identifier for the task
TaskType string `json:"task_type"` // Task type
}
ServiceTaskGetOut Task info
type ServiceUpdateIn ¶
type ServiceUpdateIn struct {
Cloud *string `json:"cloud,omitempty"` // Target cloud
DiskSpaceMb *int `json:"disk_space_mb,omitempty"` // Megabytes of disk space for data storage
GroupName *string `json:"group_name,omitempty"` // Service group name (DEPRECATED: do not use)
Karapace *bool `json:"karapace,omitempty"` // Switch the service to use Karapace for schema registry and REST proxy
Maintenance *MaintenanceIn `json:"maintenance,omitempty"` // Automatic maintenance settings
Plan *string `json:"plan,omitempty"` // Subscription plan
Powered *bool `json:"powered,omitempty"` // Power-on the service (true) or power-off (false)
ProjectVpcId *string `json:"project_vpc_id"` // Project VPC ID
SchemaRegistryAuthz *bool `json:"schema_registry_authz,omitempty"` // Enable or disable Schema Registry authorization
TechEmails *[]TechEmailIn `json:"tech_emails,omitempty"` // List of service technical email addresses
TerminationProtection *bool `json:"termination_protection,omitempty"` // Service is protected against termination and powering off
UserConfig *map[string]any `json:"user_config,omitempty"` // Service type-specific settings
}
ServiceUpdateIn ServiceUpdateRequestBody
type ServiceUpdateOut ¶
type ServiceUpdateOut struct {
Acl []AclOut `json:"acl,omitempty"` // List of Aiven ACL entries for Kafka service
Backups []BackupOut `json:"backups,omitempty"` // List of backups for the service
CloudDescription *string `json:"cloud_description,omitempty"` // Cloud provider and location
CloudName string `json:"cloud_name"` // Target cloud
Components []ComponentOut `json:"components,omitempty"` // Service component information objects
ConnectionInfo map[string]any `json:"connection_info,omitempty"` // Service-specific connection information properties
ConnectionPools []ConnectionPoolOut `json:"connection_pools,omitempty"` // PostgreSQL PGBouncer connection pools
CreateTime time.Time `json:"create_time"` // Service creation timestamp (ISO 8601)
Databases []string `json:"databases,omitempty"` // List of service's user database names
DiskSpaceMb *int `json:"disk_space_mb,omitempty"` // Megabytes of disk space for data storage
Features map[string]any `json:"features,omitempty"` // Feature flags
GroupList []string `json:"group_list"` // List of service groups the service belongs to. This field is deprecated. It is always set to single element with value 'default'
KafkaAcl []KafkaAclOut `json:"kafka_acl,omitempty"` // List of Kafka-native ACL entries
Maintenance *MaintenanceOut `json:"maintenance,omitempty"` // Automatic maintenance settings
Metadata map[string]any `json:"metadata,omitempty"` // Service type specific metadata
NodeCount *int `json:"node_count,omitempty"` // Number of service nodes in the active plan
NodeCpuCount *int `json:"node_cpu_count,omitempty"` // Number of CPUs for each node
NodeMemoryMb *float64 `json:"node_memory_mb,omitempty"` // Megabytes of memory for each node
NodeStates []NodeStateOut `json:"node_states,omitempty"` // State of individual service nodes
Plan string `json:"plan"` // Subscription plan
ProjectVpcId string `json:"project_vpc_id"` // Project VPC ID
SchemaRegistryAcl []SchemaRegistryAclOut `json:"schema_registry_acl,omitempty"` // List of Schema Registry ACL entries
ServerGroup *ServerGroupOut `json:"server_group,omitempty"` // Service IaaS server group
ServiceIntegrations []ServiceIntegrationOut `json:"service_integrations"` // Integrations with other services
ServiceName string `json:"service_name"` // Service name
ServiceNotifications []ServiceNotificationOut `json:"service_notifications,omitempty"` // Service notifications
ServiceType string `json:"service_type"` // Service type code
ServiceTypeDescription *string `json:"service_type_description,omitempty"` // Single line description of the service
ServiceUri string `json:"service_uri"` // URI for connecting to the service (may be null)
ServiceUriParams map[string]any `json:"service_uri_params,omitempty"` // service_uri parameterized into key-value pairs
State ServiceStateType `json:"state"` // State of the service
Tags map[string]string `json:"tags,omitempty"` // Set of resource tags
TechEmails []TechEmailOut `json:"tech_emails,omitempty"` // List of service technical email addresses
TerminationProtection bool `json:"termination_protection"` // Service is protected against termination and powering off
Topics []TopicOut `json:"topics,omitempty"` // Kafka topics. DEPRECATED: Use /project/$project/service/$service/topic instead
UpdateTime time.Time `json:"update_time"` // Service last update timestamp (ISO 8601)
UserConfig map[string]any `json:"user_config"` // Service type-specific settings
Users []UserOut `json:"users,omitempty"` // List of service users
}
ServiceUpdateOut Service information
type ServiceUserCreateIn ¶ added in v0.38.0
type ServiceUserCreateIn struct {
AccessControl *AccessControlIn `json:"access_control,omitempty"` // Service type specific access control rules for user. Currently only used for configuring user ACLs for Redis version 6 and above.
Authentication AuthenticationType `json:"authentication,omitempty"` // Service specific authentication details. Currently only used for MySQL where accepted options are 'mysql_native_password' and 'caching_sha2_password', latter being default when this is not explicitly set.
Username string `json:"username"` // Service username
}
ServiceUserCreateIn ServiceUserCreateRequestBody
type ServiceUserCreateOut ¶ added in v0.38.0
type ServiceUserCreateOut struct {
AccessCert *string `json:"access_cert,omitempty"` // Access certificate for TLS client authentication
AccessCertNotValidAfterTime *time.Time `json:"access_cert_not_valid_after_time,omitempty"` // Validity end time (ISO8601) for the current access certificate
AccessControl *AccessControlOut `json:"access_control,omitempty"` // Service type specific access control rules for user. Currently only used for configuring user ACLs for Redis version 6 and above.
AccessKey *string `json:"access_key,omitempty"` // Access key for TLS client authentication
Authentication AuthenticationType `json:"authentication,omitempty"` // Service specific authentication details. Currently only used for MySQL where accepted options are 'mysql_native_password' and 'caching_sha2_password', latter being default when this is not explicitly set.
ExpiringCertNotValidAfterTime *time.Time `json:"expiring_cert_not_valid_after_time,omitempty"` // When the existing certificate is nearing expiration and a new certificate has been generated, the validity end time (ISO8601) for the expiring certificate
Password string `json:"password"` // Account password. A null value indicates a user overridden password.
Type string `json:"type"` // Account type
Username string `json:"username"` // Account username
}
ServiceUserCreateOut Service user account
type ServiceUserCredentialsModifyIn ¶ added in v0.38.0
type ServiceUserCredentialsModifyIn struct {
AccessControl *AccessControlIn `json:"access_control,omitempty"` // Service type specific access control rules for user. Currently only used for configuring user ACLs for Redis version 6 and above.
Authentication AuthenticationType `json:"authentication,omitempty"` // Service specific authentication details. Currently only used for MySQL where accepted options are 'mysql_native_password' and 'caching_sha2_password', latter being default when this is not explicitly set.
NewPassword *string `json:"new_password,omitempty"` // New password
Operation ServiceUserCredentialsModifyOperationType `json:"operation"` // Operation type
}
ServiceUserCredentialsModifyIn ServiceUserCredentialsModifyRequestBody
type ServiceUserCredentialsModifyOperationType ¶ added in v0.63.0
type ServiceUserCredentialsModifyOperationType string
const ( ServiceUserCredentialsModifyOperationTypeAcknowledgeRenewal ServiceUserCredentialsModifyOperationType = "acknowledge-renewal" ServiceUserCredentialsModifyOperationTypeResetCredentials ServiceUserCredentialsModifyOperationType = "reset-credentials" ServiceUserCredentialsModifyOperationTypeSetAccessControl ServiceUserCredentialsModifyOperationType = "set-access-control" )
type ServiceUserCredentialsModifyOut ¶ added in v0.38.0
type ServiceUserCredentialsModifyOut struct {
Acl []AclOut `json:"acl,omitempty"` // List of Aiven ACL entries for Kafka service
Backups []BackupOut `json:"backups,omitempty"` // List of backups for the service
CloudDescription *string `json:"cloud_description,omitempty"` // Cloud provider and location
CloudName string `json:"cloud_name"` // Target cloud
Components []ComponentOut `json:"components,omitempty"` // Service component information objects
ConnectionInfo map[string]any `json:"connection_info,omitempty"` // Service-specific connection information properties
ConnectionPools []ConnectionPoolOut `json:"connection_pools,omitempty"` // PostgreSQL PGBouncer connection pools
CreateTime time.Time `json:"create_time"` // Service creation timestamp (ISO 8601)
Databases []string `json:"databases,omitempty"` // List of service's user database names
DiskSpaceMb *int `json:"disk_space_mb,omitempty"` // Megabytes of disk space for data storage
Features map[string]any `json:"features,omitempty"` // Feature flags
GroupList []string `json:"group_list"` // List of service groups the service belongs to. This field is deprecated. It is always set to single element with value 'default'
KafkaAcl []KafkaAclOut `json:"kafka_acl,omitempty"` // List of Kafka-native ACL entries
Maintenance *MaintenanceOut `json:"maintenance,omitempty"` // Automatic maintenance settings
Metadata map[string]any `json:"metadata,omitempty"` // Service type specific metadata
NodeCount *int `json:"node_count,omitempty"` // Number of service nodes in the active plan
NodeCpuCount *int `json:"node_cpu_count,omitempty"` // Number of CPUs for each node
NodeMemoryMb *float64 `json:"node_memory_mb,omitempty"` // Megabytes of memory for each node
NodeStates []NodeStateOut `json:"node_states,omitempty"` // State of individual service nodes
Plan string `json:"plan"` // Subscription plan
ProjectVpcId string `json:"project_vpc_id"` // Project VPC ID
SchemaRegistryAcl []SchemaRegistryAclOut `json:"schema_registry_acl,omitempty"` // List of Schema Registry ACL entries
ServerGroup *ServerGroupOut `json:"server_group,omitempty"` // Service IaaS server group
ServiceIntegrations []ServiceIntegrationOut `json:"service_integrations"` // Integrations with other services
ServiceName string `json:"service_name"` // Service name
ServiceNotifications []ServiceNotificationOut `json:"service_notifications,omitempty"` // Service notifications
ServiceType string `json:"service_type"` // Service type code
ServiceTypeDescription *string `json:"service_type_description,omitempty"` // Single line description of the service
ServiceUri string `json:"service_uri"` // URI for connecting to the service (may be null)
ServiceUriParams map[string]any `json:"service_uri_params,omitempty"` // service_uri parameterized into key-value pairs
State ServiceStateType `json:"state"` // State of the service
Tags map[string]string `json:"tags,omitempty"` // Set of resource tags
TechEmails []TechEmailOut `json:"tech_emails,omitempty"` // List of service technical email addresses
TerminationProtection bool `json:"termination_protection"` // Service is protected against termination and powering off
Topics []TopicOut `json:"topics,omitempty"` // Kafka topics. DEPRECATED: Use /project/$project/service/$service/topic instead
UpdateTime time.Time `json:"update_time"` // Service last update timestamp (ISO 8601)
UserConfig map[string]any `json:"user_config"` // Service type-specific settings
Users []UserOut `json:"users,omitempty"` // List of service users
}
ServiceUserCredentialsModifyOut Service information
type ServiceUserCredentialsResetOut ¶ added in v0.38.0
type ServiceUserCredentialsResetOut struct {
Acl []AclOut `json:"acl,omitempty"` // List of Aiven ACL entries for Kafka service
Backups []BackupOut `json:"backups,omitempty"` // List of backups for the service
CloudDescription *string `json:"cloud_description,omitempty"` // Cloud provider and location
CloudName string `json:"cloud_name"` // Target cloud
Components []ComponentOut `json:"components,omitempty"` // Service component information objects
ConnectionInfo map[string]any `json:"connection_info,omitempty"` // Service-specific connection information properties
ConnectionPools []ConnectionPoolOut `json:"connection_pools,omitempty"` // PostgreSQL PGBouncer connection pools
CreateTime time.Time `json:"create_time"` // Service creation timestamp (ISO 8601)
Databases []string `json:"databases,omitempty"` // List of service's user database names
DiskSpaceMb *int `json:"disk_space_mb,omitempty"` // Megabytes of disk space for data storage
Features map[string]any `json:"features,omitempty"` // Feature flags
GroupList []string `json:"group_list"` // List of service groups the service belongs to. This field is deprecated. It is always set to single element with value 'default'
KafkaAcl []KafkaAclOut `json:"kafka_acl,omitempty"` // List of Kafka-native ACL entries
Maintenance *MaintenanceOut `json:"maintenance,omitempty"` // Automatic maintenance settings
Metadata map[string]any `json:"metadata,omitempty"` // Service type specific metadata
NodeCount *int `json:"node_count,omitempty"` // Number of service nodes in the active plan
NodeCpuCount *int `json:"node_cpu_count,omitempty"` // Number of CPUs for each node
NodeMemoryMb *float64 `json:"node_memory_mb,omitempty"` // Megabytes of memory for each node
NodeStates []NodeStateOut `json:"node_states,omitempty"` // State of individual service nodes
Plan string `json:"plan"` // Subscription plan
ProjectVpcId string `json:"project_vpc_id"` // Project VPC ID
SchemaRegistryAcl []SchemaRegistryAclOut `json:"schema_registry_acl,omitempty"` // List of Schema Registry ACL entries
ServerGroup *ServerGroupOut `json:"server_group,omitempty"` // Service IaaS server group
ServiceIntegrations []ServiceIntegrationOut `json:"service_integrations"` // Integrations with other services
ServiceName string `json:"service_name"` // Service name
ServiceNotifications []ServiceNotificationOut `json:"service_notifications,omitempty"` // Service notifications
ServiceType string `json:"service_type"` // Service type code
ServiceTypeDescription *string `json:"service_type_description,omitempty"` // Single line description of the service
ServiceUri string `json:"service_uri"` // URI for connecting to the service (may be null)
ServiceUriParams map[string]any `json:"service_uri_params,omitempty"` // service_uri parameterized into key-value pairs
State ServiceStateType `json:"state"` // State of the service
Tags map[string]string `json:"tags,omitempty"` // Set of resource tags
TechEmails []TechEmailOut `json:"tech_emails,omitempty"` // List of service technical email addresses
TerminationProtection bool `json:"termination_protection"` // Service is protected against termination and powering off
Topics []TopicOut `json:"topics,omitempty"` // Kafka topics. DEPRECATED: Use /project/$project/service/$service/topic instead
UpdateTime time.Time `json:"update_time"` // Service last update timestamp (ISO 8601)
UserConfig map[string]any `json:"user_config"` // Service type-specific settings
Users []UserOut `json:"users,omitempty"` // List of service users
}
ServiceUserCredentialsResetOut Service information
type ServiceUserGetOut ¶ added in v0.38.0
type ServiceUserGetOut struct {
AccessCert *string `json:"access_cert,omitempty"` // Access certificate for TLS client authentication
AccessCertNotValidAfterTime *time.Time `json:"access_cert_not_valid_after_time,omitempty"` // Validity end time (ISO8601) for the current access certificate
AccessControl *AccessControlOut `json:"access_control,omitempty"` // Service type specific access control rules for user. Currently only used for configuring user ACLs for Redis version 6 and above.
AccessKey *string `json:"access_key,omitempty"` // Access key for TLS client authentication
Authentication AuthenticationType `json:"authentication,omitempty"` // Service specific authentication details. Currently only used for MySQL where accepted options are 'mysql_native_password' and 'caching_sha2_password', latter being default when this is not explicitly set.
ExpiringCertNotValidAfterTime *time.Time `json:"expiring_cert_not_valid_after_time,omitempty"` // When the existing certificate is nearing expiration and a new certificate has been generated, the validity end time (ISO8601) for the expiring certificate
Password string `json:"password"` // Account password. A null value indicates a user overridden password.
Type string `json:"type"` // Account type
Username string `json:"username"` // Account username
}
ServiceUserGetOut Service user account
type ServiceVersionOut ¶
type ServiceVersionOut struct {
AivenEndOfLifeTime *time.Time `json:"aiven_end_of_life_time,omitempty"` // Aiven end-of-life timestamp (ISO 8601)
AvailabilityEndTime *time.Time `json:"availability_end_time,omitempty"` // Availability end timestamp (ISO 8601)
AvailabilityStartTime *time.Time `json:"availability_start_time,omitempty"` // Availability start timestamp (ISO 8601)
EndOfLifeHelpArticleUrl *string `json:"end_of_life_help_article_url,omitempty"` // Link to the help article
MajorVersion *string `json:"major_version,omitempty"` // Service version
ServiceType *string `json:"service_type,omitempty"` // Service type code
State ServiceVersionStateType `json:"state,omitempty"` // Service state
TerminationTime *time.Time `json:"termination_time,omitempty"` // Termination timestamp (ISO 8601)
UpgradeToServiceType *string `json:"upgrade_to_service_type,omitempty"` // If the customer takes no action, the service is updated to this service type when end of life is reached on the Aiven platform. If it is the same as the service type, the platform only upgrades the version.
UpgradeToVersion *string `json:"upgrade_to_version,omitempty"` // The version to which the service will be updated at the end of life on the Aiven platform if the user does not take any action
UpstreamEndOfLifeTime *time.Time `json:"upstream_end_of_life_time,omitempty"` // Upstream end-of-life timestamp (ISO 8601)
}
type ServiceVersionStateType ¶ added in v0.3.0
type ServiceVersionStateType string
const ( ServiceVersionStateTypeAvailable ServiceVersionStateType = "available" ServiceVersionStateTypeEol ServiceVersionStateType = "eol" ServiceVersionStateTypePreview ServiceVersionStateType = "preview" ServiceVersionStateTypeTerminated ServiceVersionStateType = "terminated" )
type ShardOut ¶
type ShardOut struct {
Name *string `json:"name,omitempty"` // Name of the shard.
Position *int `json:"position,omitempty"` // Position of this shard within the service
}
ShardOut Shard of this node. Only returned for a subset of service types
type SortOrderType ¶
type SortOrderType string
const ( SortOrderTypeDesc SortOrderType = "desc" SortOrderTypeAsc SortOrderType = "asc" )
type StateOut ¶
type StateOut struct {
Errors []string `json:"errors"`
LikelyErrorCause LikelyErrorCauseType `json:"likely_error_cause,omitempty"` // Most likely cause of the errors
Nodes map[string]any `json:"nodes"`
Status IntegrationStatusType `json:"status"` // Service integration status
}
StateOut Service integration state
type TargetVersionType ¶
type TargetVersionType string
const ( TargetVersionType13 TargetVersionType = "13" TargetVersionType14 TargetVersionType = "14" TargetVersionType15 TargetVersionType = "15" TargetVersionType16 TargetVersionType = "16" TargetVersionType17 TargetVersionType = "17" )
type TechEmailIn ¶
type TechEmailIn struct {
Email string `json:"email"` // User email address
}
type TechEmailOut ¶
type TechEmailOut struct {
Email string `json:"email"` // User email address
}
type ThanosOut ¶ added in v0.44.0
type ThanosOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
ThanosOut Service type information
type TopicOut ¶
type TopicOut struct {
CleanupPolicy string `json:"cleanup_policy"` // The retention policy to use on old segments. Possible values include 'delete', 'compact', or a comma-separated list of them. The default policy ('delete') will discard old segments when their retention time or size limit has been reached. The 'compact' setting will enable log compaction on the topic.
MinInsyncReplicas int `json:"min_insync_replicas"` // When a producer sets acks to 'all' (or '-1'), this configuration specifies the minimum number of replicas that must acknowledge a write for the write to be considered successful. If this minimum cannot be met, then the producer will raise an exception (either NotEnoughReplicas or NotEnoughReplicasAfterAppend). When used together, min.insync.replicas and acks allow you to enforce greater durability guarantees. A typical scenario would be to create a topic with a replication factor of 3, set min.insync.replicas to 2, and produce with acks of 'all'. This will ensure that the producer raises an exception if a majority of replicas do not receive a write.
Partitions int `json:"partitions"` // Number of partitions
Replication int `json:"replication"` // Number of replicas
RetentionBytes int `json:"retention_bytes"` // This configuration controls the maximum size a partition (which consists of log segments) can grow to before we will discard old log segments to free up space if we are using the 'delete' retention policy. By default there is no size limit only a time limit. Since this limit is enforced at the partition level, multiply it by the number of partitions to compute the topic retention in bytes.
RetentionHours int `json:"retention_hours"` // Retention period (hours)
State TopicStateType `json:"state,omitempty"` // Topic state
TopicName string `json:"topic_name"` // Topic name
}
type TopicStateType ¶ added in v0.3.0
type TopicStateType string
const ( TopicStateTypeActive TopicStateType = "ACTIVE" TopicStateTypeConfiguring TopicStateType = "CONFIGURING" TopicStateTypeDeleting TopicStateType = "DELETING" )
type UpdateOut ¶
type UpdateOut struct {
Deadline *string `json:"deadline,omitempty"` // Deadline for installing the update
Description *string `json:"description,omitempty"` // Description of the update
DocumentationLink *string `json:"documentation_link,omitempty"` // Optional link
Impact *string `json:"impact,omitempty"` // Impact statement of the update
ImpactPortableText *string `json:"impact_portable_text,omitempty"` // Impact statement in portable text format
StartAfter *string `json:"start_after,omitempty"` // The earliest time the update will be automatically applied
StartAt *time.Time `json:"start_at,omitempty"` // The time when the update will be automatically applied
}
type UserOut ¶
type UserOut struct {
AccessCert *string `json:"access_cert,omitempty"` // Access certificate for TLS client authentication
AccessCertNotValidAfterTime *time.Time `json:"access_cert_not_valid_after_time,omitempty"` // Validity end time (ISO8601) for the current access certificate
AccessControl *AccessControlOut `json:"access_control,omitempty"` // Service type specific access control rules for user. Currently only used for configuring user ACLs for Redis version 6 and above.
AccessKey *string `json:"access_key,omitempty"` // Access key for TLS client authentication
Authentication AuthenticationType `json:"authentication,omitempty"` // Service specific authentication details. Currently only used for MySQL where accepted options are 'mysql_native_password' and 'caching_sha2_password', latter being default when this is not explicitly set.
ExpiringCertNotValidAfterTime *time.Time `json:"expiring_cert_not_valid_after_time,omitempty"` // When the existing certificate is nearing expiration and a new certificate has been generated, the validity end time (ISO8601) for the expiring certificate
Password string `json:"password"` // Account password. A null value indicates a user overridden password.
Type string `json:"type"` // Account type
Username string `json:"username"` // Account username
}
type ValkeyOut ¶ added in v0.14.0
type ValkeyOut struct {
DefaultVersion *string `json:"default_version,omitempty"` // Default version of the service if no explicit version is defined
Description string `json:"description"` // Single line description of the service
LatestAvailableVersion *string `json:"latest_available_version,omitempty"` // Latest available version of the service
ServicePlans []ServicePlanOut `json:"service_plans"` // List of plans available for this type of service
UserConfigSchema map[string]any `json:"user_config_schema"` // JSON-Schema for the 'user_config' properties
}
ValkeyOut Service type information