blob: 46fc3e3e289251aa3cccc600184667a319b443f1 [file] [log] [blame]
// Copyright 2020 Google LLC.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Code generated file. DO NOT EDIT.
// Package sqladmin provides access to the Cloud SQL Admin API.
//
// For product documentation, see: https://developers.google.com/cloud-sql/
//
// Creating a client
//
// Usage example:
//
// import "google.golang.org/api/sqladmin/v1beta4"
// ...
// ctx := context.Background()
// sqladminService, err := sqladmin.NewService(ctx)
//
// In this example, Google Application Default Credentials are used for authentication.
//
// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
//
// Other authentication options
//
// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:
//
// sqladminService, err := sqladmin.NewService(ctx, option.WithScopes(sqladmin.SqlserviceAdminScope))
//
// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
//
// sqladminService, err := sqladmin.NewService(ctx, option.WithAPIKey("AIza..."))
//
// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
//
// config := &oauth2.Config{...}
// // ...
// token, err := config.Exchange(ctx, ...)
// sqladminService, err := sqladmin.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See https://godoc.org/google.golang.org/api/option/ for details on options.
package sqladmin // import "google.golang.org/api/sqladmin/v1beta4"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
googleapi "google.golang.org/api/googleapi"
gensupport "google.golang.org/api/internal/gensupport"
option "google.golang.org/api/option"
internaloption "google.golang.org/api/option/internaloption"
htransport "google.golang.org/api/transport/http"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
var _ = internaloption.WithDefaultEndpoint
const apiId = "sql:v1beta4"
const apiName = "sql"
const apiVersion = "v1beta4"
const basePath = "https://sqladmin.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
// Manage your Google SQL Service instances
SqlserviceAdminScope = "https://www.googleapis.com/auth/sqlservice.admin"
)
// NewService creates a new Service.
func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
scopesOption := option.WithScopes(
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/sqlservice.admin",
)
// NOTE: prepend, so we don't override user-specified scopes.
opts = append([]option.ClientOption{scopesOption}, opts...)
opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
client, endpoint, err := htransport.NewClient(ctx, opts...)
if err != nil {
return nil, err
}
s, err := New(client)
if err != nil {
return nil, err
}
if endpoint != "" {
s.BasePath = endpoint
}
return s, nil
}
// New creates a new Service. It uses the provided http.Client for requests.
//
// Deprecated: please use NewService instead.
// To provide a custom HTTP client, use option.WithHTTPClient.
// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.BackupRuns = NewBackupRunsService(s)
s.Databases = NewDatabasesService(s)
s.Flags = NewFlagsService(s)
s.Instances = NewInstancesService(s)
s.Operations = NewOperationsService(s)
s.Projects = NewProjectsService(s)
s.SslCerts = NewSslCertsService(s)
s.Tiers = NewTiersService(s)
s.Users = NewUsersService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
BackupRuns *BackupRunsService
Databases *DatabasesService
Flags *FlagsService
Instances *InstancesService
Operations *OperationsService
Projects *ProjectsService
SslCerts *SslCertsService
Tiers *TiersService
Users *UsersService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewBackupRunsService(s *Service) *BackupRunsService {
rs := &BackupRunsService{s: s}
return rs
}
type BackupRunsService struct {
s *Service
}
func NewDatabasesService(s *Service) *DatabasesService {
rs := &DatabasesService{s: s}
return rs
}
type DatabasesService struct {
s *Service
}
func NewFlagsService(s *Service) *FlagsService {
rs := &FlagsService{s: s}
return rs
}
type FlagsService struct {
s *Service
}
func NewInstancesService(s *Service) *InstancesService {
rs := &InstancesService{s: s}
return rs
}
type InstancesService struct {
s *Service
}
func NewOperationsService(s *Service) *OperationsService {
rs := &OperationsService{s: s}
return rs
}
type OperationsService struct {
s *Service
}
func NewProjectsService(s *Service) *ProjectsService {
rs := &ProjectsService{s: s}
rs.Instances = NewProjectsInstancesService(s)
rs.Locations = NewProjectsLocationsService(s)
return rs
}
type ProjectsService struct {
s *Service
Instances *ProjectsInstancesService
Locations *ProjectsLocationsService
}
func NewProjectsInstancesService(s *Service) *ProjectsInstancesService {
rs := &ProjectsInstancesService{s: s}
return rs
}
type ProjectsInstancesService struct {
s *Service
}
func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
rs := &ProjectsLocationsService{s: s}
rs.Instances = NewProjectsLocationsInstancesService(s)
return rs
}
type ProjectsLocationsService struct {
s *Service
Instances *ProjectsLocationsInstancesService
}
func NewProjectsLocationsInstancesService(s *Service) *ProjectsLocationsInstancesService {
rs := &ProjectsLocationsInstancesService{s: s}
return rs
}
type ProjectsLocationsInstancesService struct {
s *Service
}
func NewSslCertsService(s *Service) *SslCertsService {
rs := &SslCertsService{s: s}
return rs
}
type SslCertsService struct {
s *Service
}
func NewTiersService(s *Service) *TiersService {
rs := &TiersService{s: s}
return rs
}
type TiersService struct {
s *Service
}
func NewUsersService(s *Service) *UsersService {
rs := &UsersService{s: s}
return rs
}
type UsersService struct {
s *Service
}
// AclEntry: An entry for an Access Control list.
type AclEntry struct {
// ExpirationTime: The time when this access control entry expires in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>.
ExpirationTime string `json:"expirationTime,omitempty"`
// Kind: This is always <code>sql#aclEntry</code>.
Kind string `json:"kind,omitempty"`
// Name: Optional. A label to identify this entry.
Name string `json:"name,omitempty"`
// Value: The whitelisted value for the access control list.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExpirationTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ExpirationTime") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AclEntry) MarshalJSON() ([]byte, error) {
type NoMethod AclEntry
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ApiWarning: An Admin API warning message.
type ApiWarning struct {
// Code: Code to uniquely identify the warning type.
//
// Possible values:
// "SQL_API_WARNING_CODE_UNSPECIFIED" - An unknown or unset warning
// type from Cloud SQL API.
// "REGION_UNREACHABLE" - Warning when one or more regions are not
// reachable. The returned result
// set may be incomplete.
Code string `json:"code,omitempty"`
// Message: The warning message.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ApiWarning) MarshalJSON() ([]byte, error) {
type NoMethod ApiWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BackupConfiguration: Database instance backup configuration.
type BackupConfiguration struct {
// BinaryLogEnabled: Whether binary log is enabled. If backup
// configuration is disabled, binary
// log must be disabled as well.
BinaryLogEnabled bool `json:"binaryLogEnabled,omitempty"`
// Enabled: Whether this configuration is enabled.
Enabled bool `json:"enabled,omitempty"`
// Kind: This is always <code>sql#backupConfiguration</code>.
Kind string `json:"kind,omitempty"`
// Location: Location of the backup
Location string `json:"location,omitempty"`
// PointInTimeRecoveryEnabled: Reserved for future use.
PointInTimeRecoveryEnabled bool `json:"pointInTimeRecoveryEnabled,omitempty"`
// ReplicationLogArchivingEnabled: Reserved for future use.
ReplicationLogArchivingEnabled bool `json:"replicationLogArchivingEnabled,omitempty"`
// StartTime: Start time for the daily backup configuration in UTC
// timezone in the 24
// hour format - <code>HH:MM</code>.
StartTime string `json:"startTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "BinaryLogEnabled") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BinaryLogEnabled") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *BackupConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod BackupConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BackupRun: A BackupRun resource.
type BackupRun struct {
// Description: The description of this run, only applicable to
// on-demand backups.
Description string `json:"description,omitempty"`
// DiskEncryptionConfiguration: Encryption configuration specific to a
// backup.
// Applies only to Second Generation instances.
DiskEncryptionConfiguration *DiskEncryptionConfiguration `json:"diskEncryptionConfiguration,omitempty"`
// DiskEncryptionStatus: Encryption status specific to a backup.
// Applies only to Second Generation instances.
DiskEncryptionStatus *DiskEncryptionStatus `json:"diskEncryptionStatus,omitempty"`
// EndTime: The time the backup operation completed in UTC timezone in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>.
EndTime string `json:"endTime,omitempty"`
// EnqueuedTime: The time the run was enqueued in UTC timezone in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>.
EnqueuedTime string `json:"enqueuedTime,omitempty"`
// Error: Information about why the backup operation failed. This is
// only present if
// the run has the FAILED status.
Error *OperationError `json:"error,omitempty"`
// Id: The identifier for this backup run. Unique only for a specific
// Cloud SQL
// instance.
Id int64 `json:"id,omitempty,string"`
// Instance: Name of the database instance.
Instance string `json:"instance,omitempty"`
// Kind: This is always <code>sql#backupRun</code>.
Kind string `json:"kind,omitempty"`
// Location: Location of the backups.
Location string `json:"location,omitempty"`
// SelfLink: The URI of this resource.
SelfLink string `json:"selfLink,omitempty"`
// StartTime: The time the backup operation actually started in UTC
// timezone in <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>.
StartTime string `json:"startTime,omitempty"`
// Status: The status of this run.
//
// Possible values:
// "SQL_BACKUP_RUN_STATUS_UNSPECIFIED" - The status of the run is
// unknown.
// "ENQUEUED" - The backup operation was enqueued.
// "OVERDUE" - The backup is overdue across a given backup window.
// Indicates a
// problem. Example: Long-running operation in progress during
// the whole window.
// "RUNNING" - The backup is in progress.
// "FAILED" - The backup failed.
// "SUCCESSFUL" - The backup was successful.
// "SKIPPED" - The backup was skipped (without problems) for a given
// backup
// window. Example: Instance was idle.
// "DELETION_PENDING" - The backup is about to be deleted.
// "DELETION_FAILED" - The backup deletion failed.
// "DELETED" - The backup has been deleted.
Status string `json:"status,omitempty"`
// Type: The type of this run; can be either "AUTOMATED" or "ON_DEMAND".
//
// Possible values:
// "SQL_BACKUP_RUN_TYPE_UNSPECIFIED" - This is an unknown BackupRun
// type.
// "AUTOMATED" - The backup schedule automatically triggers a backup.
// "ON_DEMAND" - The user manually triggers a backup.
Type string `json:"type,omitempty"`
// WindowStartTime: The start time of the backup window during which
// this the backup was
// attempted in <a href="https://tools.ietf.org/html/rfc3339">RFC
// 3339</a>
// format, for example <code>2012-11-15T16:19:00.094Z</code>.
WindowStartTime string `json:"windowStartTime,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Description") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Description") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BackupRun) MarshalJSON() ([]byte, error) {
type NoMethod BackupRun
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BackupRunsListResponse: Backup run list results.
type BackupRunsListResponse struct {
// Items: A list of backup runs in reverse chronological order of the
// enqueued time.
Items []*BackupRun `json:"items,omitempty"`
// Kind: This is always <code>sql#backupRunsList</code>.
Kind string `json:"kind,omitempty"`
// NextPageToken: The continuation token, used to page through large
// result sets. Provide
// this value in a subsequent request to return the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Items") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Items") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BackupRunsListResponse) MarshalJSON() ([]byte, error) {
type NoMethod BackupRunsListResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BinLogCoordinates: Binary log coordinates.
type BinLogCoordinates struct {
// BinLogFileName: Name of the binary log file for a Cloud SQL instance.
BinLogFileName string `json:"binLogFileName,omitempty"`
// BinLogPosition: Position (offset) within the binary log file.
BinLogPosition int64 `json:"binLogPosition,omitempty,string"`
// Kind: This is always <code>sql#binLogCoordinates</code>.
Kind string `json:"kind,omitempty"`
// ForceSendFields is a list of field names (e.g. "BinLogFileName") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BinLogFileName") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *BinLogCoordinates) MarshalJSON() ([]byte, error) {
type NoMethod BinLogCoordinates
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CloneContext: Database instance clone context.
type CloneContext struct {
// BinLogCoordinates: Binary log coordinates, if specified, identify the
// position up to which the
// source instance should be cloned. If not specified, the source
// instance is
// cloned up to the most recent binary log coordinates.
BinLogCoordinates *BinLogCoordinates `json:"binLogCoordinates,omitempty"`
// DestinationInstanceName: Name of the Cloud SQL instance to be created
// as a clone.
DestinationInstanceName string `json:"destinationInstanceName,omitempty"`
// Kind: This is always <code>sql#cloneContext</code>.
Kind string `json:"kind,omitempty"`
// PitrTimestampMs: Reserved for future use.
PitrTimestampMs int64 `json:"pitrTimestampMs,omitempty,string"`
// PointInTime: Reserved for future use.
PointInTime string `json:"pointInTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "BinLogCoordinates")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BinLogCoordinates") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *CloneContext) MarshalJSON() ([]byte, error) {
type NoMethod CloneContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Database: Represents a SQL database on the Cloud SQL instance.
type Database struct {
// Charset: The MySQL charset value.
Charset string `json:"charset,omitempty"`
// Collation: The MySQL collation value.
Collation string `json:"collation,omitempty"`
// Etag: This field is deprecated and will be removed from a future
// version of the
// API.
Etag string `json:"etag,omitempty"`
// Instance: The name of the Cloud SQL instance. This does not include
// the project ID.
Instance string `json:"instance,omitempty"`
// Kind: This is always <code>sql#database</code>.
Kind string `json:"kind,omitempty"`
// Name: The name of the database in the Cloud SQL instance. This does
// not include
// the project ID or instance name.
Name string `json:"name,omitempty"`
// Project: The project ID of the project containing the Cloud SQL
// database. The Google
// apps domain is prefixed if applicable.
Project string `json:"project,omitempty"`
// SelfLink: The URI of this resource.
SelfLink string `json:"selfLink,omitempty"`
SqlserverDatabaseDetails *SqlServerDatabaseDetails `json:"sqlserverDatabaseDetails,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Charset") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Charset") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Database) MarshalJSON() ([]byte, error) {
type NoMethod Database
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DatabaseFlags: Database flags for Cloud SQL instances.
type DatabaseFlags struct {
// Name: The name of the flag. These flags are passed at instance
// startup, so
// include both server options and system variables for MySQL. Flags
// should be
// specified with underscores, not hyphens. For more information, see
// <a
// href="/sql/docs/mysql/flags">Configuring Database Flags</a> in the
// Cloud
// SQL documentation.
Name string `json:"name,omitempty"`
// Value: The value of the flag. Booleans should be set to
// <code>on</code> for true
// and <code>off</code> for false. This field must be omitted if the
// flag
// doesn't take a value.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Name") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Name") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DatabaseFlags) MarshalJSON() ([]byte, error) {
type NoMethod DatabaseFlags
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DatabaseInstance: A Cloud SQL instance resource.
type DatabaseInstance struct {
// BackendType: <code>FIRST_GEN</code>: First Generation instance. MySQL
// only. <br
// /><code>SECOND_GEN</code>: Second Generation instance or
// PostgreSQL
// instance. <br /><code>EXTERNAL</code>: A database server that is
// not
// managed by Google. <br>This property is read-only; use
// the
// <code>tier</code> property in the <code>settings</code> object to
// determine
// the database type and Second or First Generation.
//
// Possible values:
// "SQL_BACKEND_TYPE_UNSPECIFIED" - This is an unknown backend type
// for instance.
// "FIRST_GEN" - V1 speckle instance.
// "SECOND_GEN" - V2 speckle instance.
// "EXTERNAL" - On premises instance.
BackendType string `json:"backendType,omitempty"`
// ConnectionName: Connection name of the Cloud SQL instance used in
// connection strings.
ConnectionName string `json:"connectionName,omitempty"`
// CurrentDiskSize: The current disk usage of the instance in bytes.
// This property has been
// deprecated. Users should use
// the
// "cloudsql.googleapis.com/database/disk/bytes_used" metric in
// Cloud
// Monitoring API instead. Please see
// <a
// href="https://groups.google.com/d/msg/google-cloud-sql-announce/I_7
// -F9EBhT0/BtvFtdFeAgAJ">this
// announcement</a> for details.
CurrentDiskSize int64 `json:"currentDiskSize,omitempty,string"`
// DatabaseVersion: The database engine type and version. The
// <code>databaseVersion</code>
// field can not be changed after instance creation. MySQL Second
// Generation
// instances: <code>MYSQL_5_7</code> (default) or
// <code>MYSQL_5_6</code>.
// PostgreSQL instances: <code>POSTGRES_9_6</code> (default)
// or
// <code>POSTGRES_11 Beta</code> MySQL First Generation
// instances: <code>MYSQL_5_6</code> (default) or <code>MYSQL_5_5</code>
//
// Possible values:
// "SQL_DATABASE_VERSION_UNSPECIFIED" - This is an unknown database
// version.
// "MYSQL_5_1" - The database version is MySQL 5.1.
// "MYSQL_5_5" - The database version is MySQL 5.5.
// "MYSQL_5_6" - The database version is MySQL 5.6.
// "MYSQL_5_7" - The database version is MySQL 5.7.
// "POSTGRES_9_6" - The database version is PostgreSQL 9.6.
// "POSTGRES_11" - The database version is PostgreSQL 11.
// "SQLSERVER_2017_STANDARD" - The database version is SQL Server 2017
// Standard.
// "SQLSERVER_2017_ENTERPRISE" - The database version is SQL Server
// 2017 Enterprise.
// "SQLSERVER_2017_EXPRESS" - The database version is SQL Server 2017
// Express.
// "SQLSERVER_2017_WEB" - The database version is SQL Server 2017 Web.
// "POSTGRES_10" - The database version is PostgreSQL 10.
DatabaseVersion string `json:"databaseVersion,omitempty"`
// DiskEncryptionConfiguration: Disk encryption configuration specific
// to an instance.
// Applies only to Second Generation instances.
DiskEncryptionConfiguration *DiskEncryptionConfiguration `json:"diskEncryptionConfiguration,omitempty"`
// DiskEncryptionStatus: Disk encryption status specific to an
// instance.
// Applies only to Second Generation instances.
DiskEncryptionStatus *DiskEncryptionStatus `json:"diskEncryptionStatus,omitempty"`
// Etag: This field is deprecated and will be removed from a future
// version of the
// API. Use the <code>settings.settingsVersion</code> field instead.
Etag string `json:"etag,omitempty"`
// FailoverReplica: The name and status of the failover replica. This
// property is applicable
// only to Second Generation instances.
FailoverReplica *DatabaseInstanceFailoverReplica `json:"failoverReplica,omitempty"`
// GceZone: The Compute Engine zone that the instance is currently
// serving from. This
// value could be different from the zone that was specified when the
// instance
// was created if the instance has failed over to its secondary zone.
GceZone string `json:"gceZone,omitempty"`
// InstanceType: The instance type. This can be one of the
// following.
// <br><code>CLOUD_SQL_INSTANCE</code>: A Cloud SQL instance that is
// not
// replicating from a master. <br><code>ON_PREMISES_INSTANCE</code>:
// An
// instance running on the
// customer's premises. <br><code>READ_REPLICA_INSTANCE</code>: A Cloud
// SQL
// instance configured as a read-replica.
//
// Possible values:
// "SQL_INSTANCE_TYPE_UNSPECIFIED" - This is an unknown Cloud SQL
// instance type.
// "CLOUD_SQL_INSTANCE" - A regular Cloud SQL instance.
// "ON_PREMISES_INSTANCE" - An instance running on the customer's
// premises that is not managed by
// Cloud SQL.
// "READ_REPLICA_INSTANCE" - A Cloud SQL instance acting as a
// read-replica.
InstanceType string `json:"instanceType,omitempty"`
// IpAddresses: The assigned IP addresses for the instance.
IpAddresses []*IpMapping `json:"ipAddresses,omitempty"`
// Ipv6Address: The IPv6 address assigned to the instance. This property
// is applicable only
// to First Generation instances.
Ipv6Address string `json:"ipv6Address,omitempty"`
// Kind: This is always <code>sql#instance</code>.
Kind string `json:"kind,omitempty"`
// MasterInstanceName: The name of the instance which will act as master
// in the replication setup.
MasterInstanceName string `json:"masterInstanceName,omitempty"`
// MaxDiskSize: The maximum disk size of the instance in bytes.
MaxDiskSize int64 `json:"maxDiskSize,omitempty,string"`
// Name: Name of the Cloud SQL instance. This does not include the
// project ID.
Name string `json:"name,omitempty"`
// OnPremisesConfiguration: Configuration specific to on-premises
// instances.
OnPremisesConfiguration *OnPremisesConfiguration `json:"onPremisesConfiguration,omitempty"`
// Project: The project ID of the project containing the Cloud SQL
// instance. The Google
// apps domain is prefixed if applicable.
Project string `json:"project,omitempty"`
// Region: The geographical region. Can be
// <code>us-central</code>
// (<code>FIRST_GEN</code> instances only),
// <code>us-central1</code>
// (<code>SECOND_GEN</code> instances only), <code>asia-east1</code>
// or
// <code>europe-west1</code>. Defaults to <code>us-central</code>
// or
// <code>us-central1</code> depending on the instance type (First
// Generation
// or Second Generation). The region can not be changed after
// instance
// creation.
Region string `json:"region,omitempty"`
// ReplicaConfiguration: Configuration specific to failover replicas and
// read replicas.
ReplicaConfiguration *ReplicaConfiguration `json:"replicaConfiguration,omitempty"`
// ReplicaNames: The replicas of the instance.
ReplicaNames []string `json:"replicaNames,omitempty"`
// RootPassword: Initial root password. Use only on creation.
RootPassword string `json:"rootPassword,omitempty"`
// ScheduledMaintenance: The start time of any upcoming scheduled
// maintenance for this instance.
ScheduledMaintenance *SqlScheduledMaintenance `json:"scheduledMaintenance,omitempty"`
// SelfLink: The URI of this resource.
SelfLink string `json:"selfLink,omitempty"`
// ServerCaCert: SSL configuration.
ServerCaCert *SslCert `json:"serverCaCert,omitempty"`
// ServiceAccountEmailAddress: The service account email address
// assigned to the instance. This property
// is applicable only to Second Generation instances.
ServiceAccountEmailAddress string `json:"serviceAccountEmailAddress,omitempty"`
// Settings: The user settings.
Settings *Settings `json:"settings,omitempty"`
// State: The current serving state of the Cloud SQL instance. This can
// be one of the
// following. <br><code>RUNNABLE</code>: The instance is running, or is
// ready
// to run when accessed. <br><code>SUSPENDED</code>: The instance is
// not
// available, for example due to problems with
// billing.
// <br><code>PENDING_CREATE</code>: The instance is being
// created.
// <br><code>MAINTENANCE</code>: The instance is down for
// maintenance.
// <br><code>FAILED</code>: The instance creation
// failed.
// <br><code>UNKNOWN_STATE</code>: The state of the instance is unknown.
//
// Possible values:
// "SQL_INSTANCE_STATE_UNSPECIFIED" - The state of the instance is
// unknown.
// "RUNNABLE" - The instance is running.
// "SUSPENDED" - The instance is currently offline, but it may run
// again in the future.
// "PENDING_DELETE" - The instance is being deleted.
// "PENDING_CREATE" - The instance is being created.
// "MAINTENANCE" - The instance is down for maintenance.
// "FAILED" - The instance failed to be created.
State string `json:"state,omitempty"`
// SuspensionReason: If the instance state is SUSPENDED, the reason for
// the suspension.
//
// Possible values:
// "SQL_SUSPENSION_REASON_UNSPECIFIED" - This is an unknown suspension
// reason.
// "BILLING_ISSUE" - The instance is suspended due to billing issues
// (e.g., GCP account issue)
// "LEGAL_ISSUE" - The instance is suspended due to illegal content
// (e.g., child pornography,
// copyrighted material, etc.).
// "OPERATIONAL_ISSUE" - The instance is causing operational issues
// (e.g., causing the database
// to crash).
// "KMS_KEY_ISSUE" - The KMS key used by the instance is either
// revoked or denied access to
SuspensionReason []string `json:"suspensionReason,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "BackendType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BackendType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DatabaseInstance) MarshalJSON() ([]byte, error) {
type NoMethod DatabaseInstance
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DatabaseInstanceFailoverReplica: The name and status of the failover
// replica. This property is applicable
// only to Second Generation instances.
type DatabaseInstanceFailoverReplica struct {
// Available: The availability status of the failover replica. A false
// status indicates
// that the failover replica is out of sync. The master can only
// failover to
// the failover replica when the status is true.
Available bool `json:"available,omitempty"`
// Name: The name of the failover replica. If specified at instance
// creation, a
// failover replica is created for the instance. The name
// doesn't include the project ID. This property is applicable only
// to
// Second Generation instances.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Available") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Available") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DatabaseInstanceFailoverReplica) MarshalJSON() ([]byte, error) {
type NoMethod DatabaseInstanceFailoverReplica
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DatabasesListResponse: Database list response.
type DatabasesListResponse struct {
// Items: List of database resources in the instance.
Items []*Database `json:"items,omitempty"`
// Kind: This is always <code>sql#databasesList</code>.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Items") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Items") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DatabasesListResponse) MarshalJSON() ([]byte, error) {
type NoMethod DatabasesListResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DemoteMasterConfiguration: Read-replica configuration for connecting
// to the on-premises master.
type DemoteMasterConfiguration struct {
// Kind: This is always <code>sql#demoteMasterConfiguration</code>.
Kind string `json:"kind,omitempty"`
// MysqlReplicaConfiguration: MySQL specific configuration when
// replicating from a MySQL on-premises
// master. Replication configuration information such as the
// username,
// password, certificates, and keys are not stored in the instance
// metadata.
// The configuration information is used only to set up the
// replication
// connection and is stored by MySQL in a file named
// <code>master.info</code>
// in the data directory.
MysqlReplicaConfiguration *DemoteMasterMySqlReplicaConfiguration `json:"mysqlReplicaConfiguration,omitempty"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DemoteMasterConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod DemoteMasterConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DemoteMasterContext: Database instance demote master context.
type DemoteMasterContext struct {
// Kind: This is always <code>sql#demoteMasterContext</code>.
Kind string `json:"kind,omitempty"`
// MasterInstanceName: The name of the instance which will act as
// on-premises master in the
// replication setup.
MasterInstanceName string `json:"masterInstanceName,omitempty"`
// ReplicaConfiguration: Configuration specific to read-replicas
// replicating from the on-premises
// master.
ReplicaConfiguration *DemoteMasterConfiguration `json:"replicaConfiguration,omitempty"`
// VerifyGtidConsistency: Verify GTID consistency for demote operation.
// Default value:
// <code>True</code>. Second Generation instances only. Setting this
// flag to
// false enables you to bypass GTID consistency check between
// on-premises
// master and Cloud SQL instance during the demotion operation but
// also
// exposes you to the risk of future replication failures. Change the
// value
// only if you know the reason for the GTID divergence and are confident
// that
// doing so will not cause any replication issues.
VerifyGtidConsistency bool `json:"verifyGtidConsistency,omitempty"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DemoteMasterContext) MarshalJSON() ([]byte, error) {
type NoMethod DemoteMasterContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DemoteMasterMySqlReplicaConfiguration: Read-replica configuration
// specific to MySQL databases.
type DemoteMasterMySqlReplicaConfiguration struct {
// CaCertificate: PEM representation of the trusted CA's x509
// certificate.
CaCertificate string `json:"caCertificate,omitempty"`
// ClientCertificate: PEM representation of the slave's x509
// certificate.
ClientCertificate string `json:"clientCertificate,omitempty"`
// ClientKey: PEM representation of the slave's private key. The
// corresponsing public key
// is encoded in the client's certificate. The format of the slave's
// private
// key can be either PKCS #1 or PKCS #8.
ClientKey string `json:"clientKey,omitempty"`
// Kind: This is always
// <code>sql#demoteMasterMysqlReplicaConfiguration</code>.
Kind string `json:"kind,omitempty"`
// Password: The password for the replication connection.
Password string `json:"password,omitempty"`
// Username: The username for the replication connection.
Username string `json:"username,omitempty"`
// ForceSendFields is a list of field names (e.g. "CaCertificate") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CaCertificate") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DemoteMasterMySqlReplicaConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod DemoteMasterMySqlReplicaConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DiskEncryptionConfiguration: Disk encryption configuration for an
// instance.
type DiskEncryptionConfiguration struct {
// Kind: This is always <code>sql#diskEncryptionConfiguration</code>.
Kind string `json:"kind,omitempty"`
// KmsKeyName: Resource name of KMS key for disk encryption
KmsKeyName string `json:"kmsKeyName,omitempty"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DiskEncryptionConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod DiskEncryptionConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DiskEncryptionStatus: Disk encryption status for an instance.
type DiskEncryptionStatus struct {
// Kind: This is always <code>sql#diskEncryptionStatus</code>.
Kind string `json:"kind,omitempty"`
// KmsKeyVersionName: KMS key version used to encrypt the Cloud SQL
// instance resource
KmsKeyVersionName string `json:"kmsKeyVersionName,omitempty"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DiskEncryptionStatus) MarshalJSON() ([]byte, error) {
type NoMethod DiskEncryptionStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ExportContext: Database instance export context.
type ExportContext struct {
// CsvExportOptions: Options for exporting data as CSV.
CsvExportOptions *ExportContextCsvExportOptions `json:"csvExportOptions,omitempty"`
// Databases: Databases to be exported. <br /> <b>MySQL instances:</b>
// If
// <code>fileType</code> is <code>SQL</code> and no database is
// specified, all
// databases are exported, except for the <code>mysql</code> system
// database.
// If <code>fileType</code> is <code>CSV</code>, you can specify one
// database,
// either by using this property or by using
// the
// <code>csvExportOptions.selectQuery</code> property, which takes
// precedence
// over this property. <br /> <b>PostgreSQL instances:</b> You must
// specify
// one database to be exported. If <code>fileType</code> is
// <code>CSV</code>,
// this database must match the one specified in
// the
// <code>csvExportOptions.selectQuery</code> property.
Databases []string `json:"databases,omitempty"`
// FileType: The file type for the specified uri. <br><code>SQL</code>:
// The file
// contains SQL statements. <br><code>CSV</code>: The file contains CSV
// data.
//
// Possible values:
// "SQL_FILE_TYPE_UNSPECIFIED" - Unknown file type.
// "SQL" - File containing SQL statements.
// "CSV" - File in CSV format.
// "BAK"
FileType string `json:"fileType,omitempty"`
// Kind: This is always <code>sql#exportContext</code>.
Kind string `json:"kind,omitempty"`
// SqlExportOptions: Options for exporting data as SQL statements.
SqlExportOptions *ExportContextSqlExportOptions `json:"sqlExportOptions,omitempty"`
// Uri: The path to the file in Google Cloud Storage where the export
// will be
// stored. The URI is in the form
// <code>gs:
// //bucketName/fileName</code>. If the file already exists, the
// requests
// // succeeds, but the operation fails. If <code>fileType</code> is
// // <code>SQL</code> and the filename ends with .gz, the contents
// are
// // compressed.
Uri string `json:"uri,omitempty"`
// ForceSendFields is a list of field names (e.g. "CsvExportOptions") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CsvExportOptions") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ExportContext) MarshalJSON() ([]byte, error) {
type NoMethod ExportContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ExportContextCsvExportOptions: Options for exporting data as CSV.
type ExportContextCsvExportOptions struct {
// SelectQuery: The select query used to extract the data.
SelectQuery string `json:"selectQuery,omitempty"`
// ForceSendFields is a list of field names (e.g. "SelectQuery") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "SelectQuery") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ExportContextCsvExportOptions) MarshalJSON() ([]byte, error) {
type NoMethod ExportContextCsvExportOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ExportContextSqlExportOptions: Options for exporting data as SQL
// statements.
type ExportContextSqlExportOptions struct {
// MysqlExportOptions: Options for exporting from MySQL.
MysqlExportOptions *ExportContextSqlExportOptionsMysqlExportOptions `json:"mysqlExportOptions,omitempty"`
// SchemaOnly: Export only schemas.
SchemaOnly bool `json:"schemaOnly,omitempty"`
// Tables: Tables to export, or that were exported, from the specified
// database. If
// you specify tables, specify one and only one database. For
// PostgreSQL
// instances, you can specify only one table.
Tables []string `json:"tables,omitempty"`
// ForceSendFields is a list of field names (e.g. "MysqlExportOptions")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "MysqlExportOptions") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ExportContextSqlExportOptions) MarshalJSON() ([]byte, error) {
type NoMethod ExportContextSqlExportOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ExportContextSqlExportOptionsMysqlExportOptions: Options for
// exporting from MySQL.
type ExportContextSqlExportOptionsMysqlExportOptions struct {
// MasterData: Option to include SQL statement required to set up
// replication.
// If set to <code>1</code>, the dump file includes
// a CHANGE MASTER TO statement with the binary log coordinates.
// If set to <code>2</code>, the CHANGE MASTER TO statement is written
// as
// a SQL comment, and has no effect.
// All other values are ignored.
MasterData int64 `json:"masterData,omitempty"`
// ForceSendFields is a list of field names (e.g. "MasterData") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "MasterData") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ExportContextSqlExportOptionsMysqlExportOptions) MarshalJSON() ([]byte, error) {
type NoMethod ExportContextSqlExportOptionsMysqlExportOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FailoverContext: Database instance failover context.
type FailoverContext struct {
// Kind: This is always <code>sql#failoverContext</code>.
Kind string `json:"kind,omitempty"`
// SettingsVersion: The current settings version of this instance.
// Request will be rejected if
// this version doesn't match the current settings version.
SettingsVersion int64 `json:"settingsVersion,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *FailoverContext) MarshalJSON() ([]byte, error) {
type NoMethod FailoverContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Flag: A flag resource.
type Flag struct {
// AllowedIntValues: Use this field if only certain integers are
// accepted. Can be combined
// with min_value and max_value to add additional values.
AllowedIntValues googleapi.Int64s `json:"allowedIntValues,omitempty"`
// AllowedStringValues: For <code>STRING</code> flags, a list of strings
// that the value can be set
// to.
AllowedStringValues []string `json:"allowedStringValues,omitempty"`
// AppliesTo: The database version this flag applies to. Can be
// <code>MYSQL_5_5</code>,
// <code>MYSQL_5_6</code>, or <code>MYSQL_5_7</code>.
// <code>MYSQL_5_7</code>
// is applicable only to Second Generation instances.
//
// Possible values:
// "SQL_DATABASE_VERSION_UNSPECIFIED" - This is an unknown database
// version.
// "MYSQL_5_1" - The database version is MySQL 5.1.
// "MYSQL_5_5" - The database version is MySQL 5.5.
// "MYSQL_5_6" - The database version is MySQL 5.6.
// "MYSQL_5_7" - The database version is MySQL 5.7.
// "POSTGRES_9_6" - The database version is PostgreSQL 9.6.
// "POSTGRES_11" - The database version is PostgreSQL 11.
// "SQLSERVER_2017_STANDARD" - The database version is SQL Server 2017
// Standard.
// "SQLSERVER_2017_ENTERPRISE" - The database version is SQL Server
// 2017 Enterprise.
// "SQLSERVER_2017_EXPRESS" - The database version is SQL Server 2017
// Express.
// "SQLSERVER_2017_WEB" - The database version is SQL Server 2017 Web.
// "POSTGRES_10" - The database version is PostgreSQL 10.
AppliesTo []string `json:"appliesTo,omitempty"`
// InBeta: Whether or not the flag is considered in beta.
InBeta bool `json:"inBeta,omitempty"`
// Kind: This is always <code>sql#flag</code>.
Kind string `json:"kind,omitempty"`
// MaxValue: For <code>INTEGER</code> flags, the maximum allowed value.
MaxValue int64 `json:"maxValue,omitempty,string"`
// MinValue: For <code>INTEGER</code> flags, the minimum allowed value.
MinValue int64 `json:"minValue,omitempty,string"`
// Name: This is the name of the flag. Flag names always use
// underscores, not
// hyphens, e.g. <code>max_allowed_packet</code>
Name string `json:"name,omitempty"`
// RequiresRestart: Indicates whether changing this flag will trigger a
// database restart. Only
// applicable to Second Generation instances.
RequiresRestart bool `json:"requiresRestart,omitempty"`
// Type: The type of the flag. Flags are typed to being
// <code>BOOLEAN</code>,
// <code>STRING</code>, <code>INTEGER</code> or
// <code>NONE</code>.
// <code>NONE</code> is used for flags which do not take a value, such
// as
// <code>skip_grant_tables</code>.
//
// Possible values:
// "SQL_FLAG_TYPE_UNSPECIFIED" - This is an unknown flag type.
// "BOOLEAN" - Boolean type flag.
// "STRING" - String type flag.
// "INTEGER" - Integer type flag.
// "NONE" - Flag type used for a server startup option.
// "MYSQL_TIMEZONE_OFFSET" - Type introduced specically for MySQL
// TimeZone offset. Accept a string value
// with the format [-12:59, 13:00].
// "FLOAT" - Float type flag.
// "REPEATED_STRING" - Comma-separated list of the strings in a
// SqlFlagType enum.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "AllowedIntValues") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AllowedIntValues") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Flag) MarshalJSON() ([]byte, error) {
type NoMethod Flag
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FlagsListResponse: Flags list response.
type FlagsListResponse struct {
// Items: List of flags.
Items []*Flag `json:"items,omitempty"`
// Kind: This is always <code>sql#flagsList</code>.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Items") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Items") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *FlagsListResponse) MarshalJSON() ([]byte, error) {
type NoMethod FlagsListResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ImportContext: Database instance import context.
type ImportContext struct {
// BakImportOptions: Import parameters specific to SQL Server .BAK files
BakImportOptions *ImportContextBakImportOptions `json:"bakImportOptions,omitempty"`
// CsvImportOptions: Options for importing data as CSV.
CsvImportOptions *ImportContextCsvImportOptions `json:"csvImportOptions,omitempty"`
// Database: The target database for the import. If
// <code>fileType</code> is
// <code>SQL</code>, this field is required only if the import file does
// not
// specify a database, and is overridden by any database specification
// in the
// import file. If <code>fileType</code> is <code>CSV</code>, one
// database
// must be specified.
Database string `json:"database,omitempty"`
// FileType: The file type for the specified uri. <br><code>SQL</code>:
// The file
// contains SQL statements. <br><code>CSV</code>: The file contains CSV
// data.
//
// Possible values:
// "SQL_FILE_TYPE_UNSPECIFIED" - Unknown file type.
// "SQL" - File containing SQL statements.
// "CSV" - File in CSV format.
// "BAK"
FileType string `json:"fileType,omitempty"`
// ImportUser: The PostgreSQL user for this import operation. PostgreSQL
// instances only.
ImportUser string `json:"importUser,omitempty"`
// Kind: This is always <code>sql#importContext</code>.
Kind string `json:"kind,omitempty"`
// Uri: Path to the import file in Cloud Storage, in the
// form
// <code>gs:
// //bucketName/fileName</code>. Compressed gzip files (.gz) are
// supported
// // when <code>fileType</code> is <code>SQL</code>. The instance must
// have
// // write permissions to the bucket and read access to the file.
Uri string `json:"uri,omitempty"`
// ForceSendFields is a list of field names (e.g. "BakImportOptions") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BakImportOptions") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ImportContext) MarshalJSON() ([]byte, error) {
type NoMethod ImportContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ImportContextBakImportOptions: Import parameters specific to SQL
// Server .BAK files
type ImportContextBakImportOptions struct {
EncryptionOptions *ImportContextBakImportOptionsEncryptionOptions `json:"encryptionOptions,omitempty"`
// ForceSendFields is a list of field names (e.g. "EncryptionOptions")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EncryptionOptions") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ImportContextBakImportOptions) MarshalJSON() ([]byte, error) {
type NoMethod ImportContextBakImportOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ImportContextBakImportOptionsEncryptionOptions struct {
// CertPath: Path to the Certificate (.cer) in Cloud Storage, in the
// form
// <code>gs://bucketName/fileName</code>. The instance must have
// write permissions to the bucket and read access to the file.
CertPath string `json:"certPath,omitempty"`
// PvkPassword: Password that encrypts the private key
PvkPassword string `json:"pvkPassword,omitempty"`
// PvkPath: Path to the Certificate Private Key (.pvk) in Cloud
// Storage, in the
// form <code>gs://bucketName/fileName</code>. The instance must
// have
// write permissions to the bucket and read access to the file.
PvkPath string `json:"pvkPath,omitempty"`
// ForceSendFields is a list of field names (e.g. "CertPath") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CertPath") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ImportContextBakImportOptionsEncryptionOptions) MarshalJSON() ([]byte, error) {
type NoMethod ImportContextBakImportOptionsEncryptionOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ImportContextCsvImportOptions: Options for importing data as CSV.
type ImportContextCsvImportOptions struct {
// Columns: The columns to which CSV data is imported. If not specified,
// all columns
// of the database table are loaded with CSV data.
Columns []string `json:"columns,omitempty"`
// Table: The table to which CSV data is imported.
Table string `json:"table,omitempty"`
// ForceSendFields is a list of field names (e.g. "Columns") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Columns") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ImportContextCsvImportOptions) MarshalJSON() ([]byte, error) {
type NoMethod ImportContextCsvImportOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesCloneRequest: Database instance clone request.
type InstancesCloneRequest struct {
// CloneContext: Contains details about the clone operation.
CloneContext *CloneContext `json:"cloneContext,omitempty"`
// ForceSendFields is a list of field names (e.g. "CloneContext") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CloneContext") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *InstancesCloneRequest) MarshalJSON() ([]byte, error) {
type NoMethod InstancesCloneRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesDemoteMasterRequest: Database demote master request.
type InstancesDemoteMasterRequest struct {
// DemoteMasterContext: Contains details about the demoteMaster
// operation.
DemoteMasterContext *DemoteMasterContext `json:"demoteMasterContext,omitempty"`
// ForceSendFields is a list of field names (e.g. "DemoteMasterContext")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DemoteMasterContext") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *InstancesDemoteMasterRequest) MarshalJSON() ([]byte, error) {
type NoMethod InstancesDemoteMasterRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesExportRequest: Database instance export request.
type InstancesExportRequest struct {
// ExportContext: Contains details about the export operation.
ExportContext *ExportContext `json:"exportContext,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExportContext") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ExportContext") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *InstancesExportRequest) MarshalJSON() ([]byte, error) {
type NoMethod InstancesExportRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesFailoverRequest: Instance failover request.
type InstancesFailoverRequest struct {
// FailoverContext: Failover Context.
FailoverContext *FailoverContext `json:"failoverContext,omitempty"`
// ForceSendFields is a list of field names (e.g. "FailoverContext") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FailoverContext") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *InstancesFailoverRequest) MarshalJSON() ([]byte, error) {
type NoMethod InstancesFailoverRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesImportRequest: Database instance import request.
type InstancesImportRequest struct {
// ImportContext: Contains details about the import operation.
ImportContext *ImportContext `json:"importContext,omitempty"`
// ForceSendFields is a list of field names (e.g. "ImportContext") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ImportContext") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *InstancesImportRequest) MarshalJSON() ([]byte, error) {
type NoMethod InstancesImportRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesListResponse: Database instances list response.
type InstancesListResponse struct {
// Items: List of database instance resources.
Items []*DatabaseInstance `json:"items,omitempty"`
// Kind: This is always <code>sql#instancesList</code>.
Kind string `json:"kind,omitempty"`
// NextPageToken: The continuation token, used to page through large
// result sets. Provide
// this value in a subsequent request to return the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// Warnings: List of warnings that occurred while handling the request.
Warnings []*ApiWarning `json:"warnings,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Items") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Items") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *InstancesListResponse) MarshalJSON() ([]byte, error) {
type NoMethod InstancesListResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesListServerCasResponse: Instances ListServerCas response.
type InstancesListServerCasResponse struct {
ActiveVersion string `json:"activeVersion,omitempty"`
// Certs: List of server CA certificates for the instance.
Certs []*SslCert `json:"certs,omitempty"`
// Kind: This is always <code>sql#instancesListServerCas</code>.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ActiveVersion") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ActiveVersion") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *InstancesListServerCasResponse) MarshalJSON() ([]byte, error) {
type NoMethod InstancesListServerCasResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesRestoreBackupRequest: Database instance restore backup
// request.
type InstancesRestoreBackupRequest struct {
// RestoreBackupContext: Parameters required to perform the restore
// backup operation.
RestoreBackupContext *RestoreBackupContext `json:"restoreBackupContext,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "RestoreBackupContext") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "RestoreBackupContext") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *InstancesRestoreBackupRequest) MarshalJSON() ([]byte, error) {
type NoMethod InstancesRestoreBackupRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesRotateServerCaRequest: Rotate Server CA request.
type InstancesRotateServerCaRequest struct {
// RotateServerCaContext: Contains details about the rotate server CA
// operation.
RotateServerCaContext *RotateServerCaContext `json:"rotateServerCaContext,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "RotateServerCaContext") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "RotateServerCaContext") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *InstancesRotateServerCaRequest) MarshalJSON() ([]byte, error) {
type NoMethod InstancesRotateServerCaRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// InstancesTruncateLogRequest: Instance truncate log request.
type InstancesTruncateLogRequest struct {
// TruncateLogContext: Contains details about the truncate log
// operation.
TruncateLogContext *TruncateLogContext `json:"truncateLogContext,omitempty"`
// ForceSendFields is a list of field names (e.g. "TruncateLogContext")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TruncateLogContext") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *InstancesTruncateLogRequest) MarshalJSON() ([]byte, error) {
type NoMethod InstancesTruncateLogRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// IpConfiguration: IP Management configuration.
type IpConfiguration struct {
// AuthorizedNetworks: The list of external networks that are allowed to
// connect to the instance
// using the IP. In
// <a
// href="http://en.wikipedia.org/wiki/CIDR_notation#CIDR_notation">CID
// R
// notation</a>, also known as 'slash' notation
// (e.g.
// <code>192.168.100.0/24</code>).
AuthorizedNetworks []*AclEntry `json:"authorizedNetworks,omitempty"`
// Ipv4Enabled: Whether the instance should be assigned an IP address or
// not.
Ipv4Enabled bool `json:"ipv4Enabled,omitempty"`
// PrivateNetwork: The resource link for the VPC network from which the
// Cloud SQL instance is
// accessible for private IP. For
// example,
// <code>/projects/myProject/global/networks/default</code>. This
// setting can
// be updated, but it cannot be removed after it is set.
PrivateNetwork string `json:"privateNetwork,omitempty"`
// RequireSsl: Whether SSL connections over IP should be enforced or
// not.
RequireSsl bool `json:"requireSsl,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuthorizedNetworks")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuthorizedNetworks") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *IpConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod IpConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// IpMapping: Database instance IP Mapping.
type IpMapping struct {
// IpAddress: The IP address assigned.
IpAddress string `json:"ipAddress,omitempty"`
// TimeToRetire: The due time for this IP to be retired in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>. This field is only available
// when
// the IP is scheduled to be retired.
TimeToRetire string `json:"timeToRetire,omitempty"`
// Type: The type of this IP address. A <code>PRIMARY</code> address is
// a public
// address that can accept incoming connections. A
// <code>PRIVATE</code>
// address is a private address that can accept incoming connections.
// An
// <code>OUTGOING</code> address is the source address of
// connections
// originating from the instance, if supported.
//
// Possible values:
// "SQL_IP_ADDRESS_TYPE_UNSPECIFIED" - This is an unknown IP address
// type.
// "PRIMARY" - IP address the customer is supposed to connect to.
// Usually this is the
// load balancer's IP address
// "OUTGOING" - Source IP address of the connection a read replica
// establishes to its
// external master. This IP address can be whitelisted by the
// customer
// in case it has a firewall that filters incoming connection to its
// on premises master.
// "PRIVATE" - Private IP used when using private IPs and network
// peering.
// "MIGRATED_1ST_GEN" - V1 IP of a migrated instance. We want the user
// to
// decommission this IP as soon as the migration is complete.
// Note: V1 instances with V1 ip addresses will be counted as PRIMARY.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "IpAddress") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "IpAddress") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *IpMapping) MarshalJSON() ([]byte, error) {
type NoMethod IpMapping
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// LocationPreference: Preferred location. This specifies where a Cloud
// SQL instance should
// preferably be located, either in a specific Compute Engine zone,
// or
// co-located with an App Engine application. Note that if the
// preferred
// location is not available, the instance will be located as close as
// possible
// within the region. Only one location may be specified.
type LocationPreference struct {
// FollowGaeApplication: The AppEngine application to follow, it must be
// in the same region as the
// Cloud SQL instance.
FollowGaeApplication string `json:"followGaeApplication,omitempty"`
// Kind: This is always <code>sql#locationPreference</code>.
Kind string `json:"kind,omitempty"`
// Zone: The preferred Compute Engine zone (e.g. us-central1-a,
// us-central1-b,
// etc.).
Zone string `json:"zone,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "FollowGaeApplication") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FollowGaeApplication") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *LocationPreference) MarshalJSON() ([]byte, error) {
type NoMethod LocationPreference
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// MaintenanceWindow: Maintenance window. This specifies when a v2 Cloud
// SQL instance should
// preferably be restarted for system maintenance purposes.
type MaintenanceWindow struct {
// Day: day of week (1-7), starting on Monday.
Day int64 `json:"day,omitempty"`
// Hour: hour of day - 0 to 23.
Hour int64 `json:"hour,omitempty"`
// Kind: This is always <code>sql#maintenanceWindow</code>.
Kind string `json:"kind,omitempty"`
// UpdateTrack: Maintenance timing setting: <code>canary</code>
// (Earlier) or
// <code>stable</code> (Later). <br
// /><a
// href="/sql/docs/db_path/instance-settings#maintenance-timing-2ndg
// en">
// Learn more</a>.
//
// Possible values:
// "SQL_UPDATE_TRACK_UNSPECIFIED" - This is an unknown maintenance
// timing preference.
// "canary" - For instance update that requires a restart, this update
// track indicates
// your instance prefer to restart for new version early in
// maintenance
// window.
// "stable" - For instance update that requires a restart, this update
// track indicates
// your instance prefer to let Cloud SQL choose the timing of restart
// (within
// its Maintenance window, if applicable).
UpdateTrack string `json:"updateTrack,omitempty"`
// ForceSendFields is a list of field names (e.g. "Day") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Day") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *MaintenanceWindow) MarshalJSON() ([]byte, error) {
type NoMethod MaintenanceWindow
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// MySqlReplicaConfiguration: Read-replica configuration specific to
// MySQL databases.
type MySqlReplicaConfiguration struct {
// CaCertificate: PEM representation of the trusted CA's x509
// certificate.
CaCertificate string `json:"caCertificate,omitempty"`
// ClientCertificate: PEM representation of the slave's x509
// certificate.
ClientCertificate string `json:"clientCertificate,omitempty"`
// ClientKey: PEM representation of the slave's private key. The
// corresponsing public key
// is encoded in the client's certificate.
ClientKey string `json:"clientKey,omitempty"`
// ConnectRetryInterval: Seconds to wait between connect retries.
// MySQL's default is 60 seconds.
ConnectRetryInterval int64 `json:"connectRetryInterval,omitempty"`
// DumpFilePath: Path to a SQL dump file in Google Cloud Storage from
// which the slave
// instance is to be created. The URI is in the form
// gs:
// //bucketName/fileName. Compressed gzip files (.gz) are also
// supported.
// // Dumps should have the binlog co-ordinates from which replication
// should
// // begin. This can be accomplished by setting --master-data to 1 when
// using
// // mysqldump.
DumpFilePath string `json:"dumpFilePath,omitempty"`
// Kind: This is always <code>sql#mysqlReplicaConfiguration</code>.
Kind string `json:"kind,omitempty"`
// MasterHeartbeatPeriod: Interval in milliseconds between replication
// heartbeats.
MasterHeartbeatPeriod int64 `json:"masterHeartbeatPeriod,omitempty,string"`
// Password: The password for the replication connection.
Password string `json:"password,omitempty"`
// SslCipher: A list of permissible ciphers to use for SSL encryption.
SslCipher string `json:"sslCipher,omitempty"`
// Username: The username for the replication connection.
Username string `json:"username,omitempty"`
// VerifyServerCertificate: Whether or not to check the master's Common
// Name value in the certificate
// that it sends during the SSL handshake.
VerifyServerCertificate bool `json:"verifyServerCertificate,omitempty"`
// ForceSendFields is a list of field names (e.g. "CaCertificate") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CaCertificate") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *MySqlReplicaConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod MySqlReplicaConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// OnPremisesConfiguration: On-premises instance configuration.
type OnPremisesConfiguration struct {
// CaCertificate: PEM representation of the trusted CA's x509
// certificate.
CaCertificate string `json:"caCertificate,omitempty"`
// ClientCertificate: PEM representation of the slave's x509
// certificate.
ClientCertificate string `json:"clientCertificate,omitempty"`
// ClientKey: PEM representation of the slave's private key. The
// corresponsing public key
// is encoded in the client's certificate.
ClientKey string `json:"clientKey,omitempty"`
// DumpFilePath: The dump file to create the Cloud SQL replica.
DumpFilePath string `json:"dumpFilePath,omitempty"`
// HostPort: The host and port of the on-premises instance in host:port
// format
HostPort string `json:"hostPort,omitempty"`
// Kind: This is always <code>sql#onPremisesConfiguration</code>.
Kind string `json:"kind,omitempty"`
// Password: The password for connecting to on-premises instance.
Password string `json:"password,omitempty"`
// Username: The username for connecting to on-premises instance.
Username string `json:"username,omitempty"`
// ForceSendFields is a list of field names (e.g. "CaCertificate") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CaCertificate") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *OnPremisesConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod OnPremisesConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Operation: An Operation resource.&nbsp;For successful operations that
// return an
// Operation resource, only the fields relevant to the operation are
// populated
// in the resource.
type Operation struct {
// EndTime: The time this operation finished in UTC timezone in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>.
EndTime string `json:"endTime,omitempty"`
// Error: If errors occurred during processing of this operation, this
// field will be
// populated.
Error *OperationErrors `json:"error,omitempty"`
// ExportContext: The context for export operation, if applicable.
ExportContext *ExportContext `json:"exportContext,omitempty"`
// ImportContext: The context for import operation, if applicable.
ImportContext *ImportContext `json:"importContext,omitempty"`
// InsertTime: The time this operation was enqueued in UTC timezone in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>.
InsertTime string `json:"insertTime,omitempty"`
// Kind: This is always <code>sql#operation</code>.
Kind string `json:"kind,omitempty"`
// Name: An identifier that uniquely identifies the operation. You can
// use this
// identifier to retrieve the Operations resource that has information
// about
// the operation.
Name string `json:"name,omitempty"`
// OperationType: The type of the operation. Valid values are
// <code>CREATE</code>,
// <code>DELETE</code>, <code>UPDATE</code>,
// <code>RESTART</code>,
// <code>IMPORT</code>, <code>EXPORT</code>,
// <code>BACKUP_VOLUME</code>,
// <code>RESTORE_VOLUME</code>,
// <code>CREATE_USER</code>,
// <code>DELETE_USER</code>,
// <code>CREATE_DATABASE</code>,
// <code>DELETE_DATABASE</code> .
//
// Possible values:
// "SQL_OPERATION_TYPE_UNSPECIFIED" - Unknown operation type.
// "IMPORT" - Imports data into a Cloud SQL instance.
// "EXPORT" - Exports data from a Cloud SQL instance to a Cloud
// Storage
// bucket.
// "CREATE" - Creates a new Cloud SQL instance.
// "UPDATE" - Updates the settings of a Cloud SQL instance.
// "DELETE" - Deletes a Cloud SQL instance.
// "RESTART" - Restarts the Cloud SQL instance.
// "BACKUP"
// "SNAPSHOT"
// "BACKUP_VOLUME" - Performs instance backup.
// "DELETE_VOLUME" - Deletes an instance backup.
// "RESTORE_VOLUME" - Restores an instance backup.
// "INJECT_USER" - Injects a privileged user in mysql for MOB
// instances.
// "CLONE" - Clones a Cloud SQL instance.
// "STOP_REPLICA" - Stops replication on a Cloud SQL read replica
// instance.
// "START_REPLICA" - Starts replication on a Cloud SQL read replica
// instance.
// "PROMOTE_REPLICA" - Promotes a Cloud SQL replica instance.
// "CREATE_REPLICA" - Creates a Cloud SQL replica instance.
// "CREATE_USER" - Creates a new user in a Cloud SQL instance.
// "DELETE_USER" - Deletes a user from a Cloud SQL instance.
// "UPDATE_USER" - Updates an existing user in a Cloud SQL instance.
// "CREATE_DATABASE" - Creates a database in the Cloud SQL instance.
// "DELETE_DATABASE" - Deletes a database in the Cloud SQL instance.
// "UPDATE_DATABASE" - Updates a database in the Cloud SQL instance.
// "FAILOVER" - Performs failover of an HA-enabled Cloud SQL
// failover replica.
// "DELETE_BACKUP" - Deletes the backup taken by a backup run.
// "RECREATE_REPLICA"
// "TRUNCATE_LOG" - Truncates a general or slow log table in MySQL.
// "DEMOTE_MASTER" - Demotes the stand-alone instance to be a Cloud
// SQL
// read replica for an external database server.
// "MAINTENANCE" - Indicates that the instance is currently in
// maintenance. Maintenance
// typically causes the instance to be unavailable for 1-3 minutes.
// "ENABLE_PRIVATE_IP" - This field is deprecated, and will be removed
// in future version of API.
// "DEFER_MAINTENANCE"
// "CREATE_CLONE" - Creates clone instance.
// "RESCHEDULE_MAINTENANCE" - Reschedule maintenance to another time.
// "START_EXTERNAL_SYNC" - Starts external sync of a Cloud SQL EM
// replica to an external master.
OperationType string `json:"operationType,omitempty"`
// SelfLink: The URI of this resource.
SelfLink string `json:"selfLink,omitempty"`
// StartTime: The time this operation actually started in UTC timezone
// in <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>.
StartTime string `json:"startTime,omitempty"`
// Status: The status of an operation. Valid values are
// <code>PENDING</code>,
// <code>RUNNING</code>,
// <code>DONE</code>,
// <code>SQL_OPERATION_STATUS_UNSPECIFIED</code>.
//
// Possible values:
// "SQL_OPERATION_STATUS_UNSPECIFIED" - The state of the operation is
// unknown.
// "PENDING" - The operation has been queued, but has not started yet.
// "RUNNING" - The operation is running.
// "DONE" - The operation completed.
Status string `json:"status,omitempty"`
// TargetId: Name of the database instance related to this operation.
TargetId string `json:"targetId,omitempty"`
TargetLink string `json:"targetLink,omitempty"`
// TargetProject: The project ID of the target instance related to this
// operation.
TargetProject string `json:"targetProject,omitempty"`
// User: The email address of the user who initiated this operation.
User string `json:"user,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "EndTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EndTime") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Operation) MarshalJSON() ([]byte, error) {
type NoMethod Operation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// OperationError: Database instance operation error.
type OperationError struct {
// Code: Identifies the specific error that occurred.
Code string `json:"code,omitempty"`
// Kind: This is always <code>sql#operationError</code>.
Kind string `json:"kind,omitempty"`
// Message: Additional information about the error encountered.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *OperationError) MarshalJSON() ([]byte, error) {
type NoMethod OperationError
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// OperationErrors: Database instance operation errors list wrapper.
type OperationErrors struct {
// Errors: The list of errors encountered while processing this
// operation.
Errors []*OperationError `json:"errors,omitempty"`
// Kind: This is always <code>sql#operationErrors</code>.
Kind string `json:"kind,omitempty"`
// ForceSendFields is a list of field names (e.g. "Errors") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Errors") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *OperationErrors) MarshalJSON() ([]byte, error) {
type NoMethod OperationErrors
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// OperationsListResponse: Database instance list operations response.
type OperationsListResponse struct {
// Items: List of operation resources.
Items []*Operation `json:"items,omitempty"`
// Kind: This is always <code>sql#operationsList</code>.
Kind string `json:"kind,omitempty"`
// NextPageToken: The continuation token, used to page through large
// result sets. Provide
// this value in a subsequent request to return the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Items") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Items") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *OperationsListResponse) MarshalJSON() ([]byte, error) {
type NoMethod OperationsListResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ReplicaConfiguration: Read-replica configuration for connecting to
// the master.
type ReplicaConfiguration struct {
// FailoverTarget: Specifies if the replica is the failover target. If
// the field is set to
// <code>true</code> the replica will be designated as a failover
// replica. In
// case the master instance fails, the replica instance will be promoted
// as
// the new master instance. <p>Only one replica can be specified as
// failover
// target, and the replica has to be in different zone with the
// master
// instance.
FailoverTarget bool `json:"failoverTarget,omitempty"`
// Kind: This is always <code>sql#replicaConfiguration</code>.
Kind string `json:"kind,omitempty"`
// MysqlReplicaConfiguration: MySQL specific configuration when
// replicating from a MySQL on-premises
// master. Replication configuration information such as the
// username,
// password, certificates, and keys are not stored in the instance
// metadata.
// The configuration information is used only to set up the
// replication
// connection and is stored by MySQL in a file named
// <code>master.info</code>
// in the data directory.
MysqlReplicaConfiguration *MySqlReplicaConfiguration `json:"mysqlReplicaConfiguration,omitempty"`
// ForceSendFields is a list of field names (e.g. "FailoverTarget") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FailoverTarget") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ReplicaConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod ReplicaConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type Reschedule struct {
// RescheduleType: Required. The type of the reschedule.
//
// Possible values:
// "RESCHEDULE_TYPE_UNSPECIFIED"
// "IMMEDIATE" - If the user wants to schedule the maintenance to
// happen now.
// "NEXT_AVAILABLE_WINDOW" - If the user wants to use the existing
// maintenance policy to find the
// next available window.
// "SPECIFIC_TIME" - If the user wants to reschedule the maintenance
// to a specific time.
RescheduleType string `json:"rescheduleType,omitempty"`
// ScheduleTime: Optional. Timestamp when the maintenance shall be
// rescheduled to if
// reschedule_type=SPECIFIC_TIME, in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format,
// for
// example <code>2012-11-15T16:19:00.094Z</code>.
ScheduleTime string `json:"scheduleTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "RescheduleType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "RescheduleType") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Reschedule) MarshalJSON() ([]byte, error) {
type NoMethod Reschedule
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RestoreBackupContext: Database instance restore from backup
// context.
// Backup context contains source instance id and project id.
type RestoreBackupContext struct {
// BackupRunId: The ID of the backup run to restore from.
BackupRunId int64 `json:"backupRunId,omitempty,string"`
// InstanceId: The ID of the instance that the backup was taken from.
InstanceId string `json:"instanceId,omitempty"`
// Kind: This is always <code>sql#restoreBackupContext</code>.
Kind string `json:"kind,omitempty"`
// Project: The full project ID of the source instance.
Project string `json:"project,omitempty"`
// ForceSendFields is a list of field names (e.g. "BackupRunId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BackupRunId") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *RestoreBackupContext) MarshalJSON() ([]byte, error) {
type NoMethod RestoreBackupContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RotateServerCaContext: Instance rotate server CA context.
type RotateServerCaContext struct {
// Kind: This is always <code>sql#rotateServerCaContext</code>.
Kind string `json:"kind,omitempty"`
// NextVersion: The fingerprint of the next version to be rotated to. If
// left unspecified,
// will be rotated to the most recently added server CA version.
NextVersion string `json:"nextVersion,omitempty"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *RotateServerCaContext) MarshalJSON() ([]byte, error) {
type NoMethod RotateServerCaContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Settings: Database instance settings.
type Settings struct {
// ActivationPolicy: The activation policy specifies when the instance
// is activated; it is
// applicable only when the instance state is <code>RUNNABLE</code>.
// Valid
// values: <br><code>ALWAYS</code>: The instance is on, and remains so
// even in
// the absence of connection requests. <br><code>NEVER</code>: The
// instance is
// off; it is not activated, even if a connection request
// arrives.
// <br><code>ON_DEMAND</code>: First Generation instances only. The
// instance
// responds to incoming requests, and turns itself off when not in
// use.
// Instances with <code>PER_USE</code> pricing turn off after 15 minutes
// of
// inactivity. Instances with <code>PER_PACKAGE</code> pricing turn off
// after
// 12 hours of inactivity.
//
// Possible values:
// "SQL_ACTIVATION_POLICY_UNSPECIFIED" - Unknown activation plan.
// "ALWAYS" - The instance is always up and running.
// "NEVER" - The instance should never spin up.
// "ON_DEMAND" - The instance spins up upon receiving requests.
ActivationPolicy string `json:"activationPolicy,omitempty"`
// AuthorizedGaeApplications: The App Engine app IDs that can access
// this instance. First Generation
// instances only.
AuthorizedGaeApplications []string `json:"authorizedGaeApplications,omitempty"`
// AvailabilityType: Availability type (PostgreSQL instances only).
// Potential values:
// <br><code>ZONAL</code>: The instance serves data from only one
// zone.
// Outages in that zone affect data accessibility.
// <br><code>REGIONAL</code>:
// The instance can serve data from more than one zone in a region (it
// is
// highly available). <br>For more information, see
// <a
// href="https://cloud.google.com/sql/docs/postgres/high-availability"
// >Overview
// of the High Availability Configuration</a>.
//
// Possible values:
// "SQL_AVAILABILITY_TYPE_UNSPECIFIED" - This is an unknown
// Availability type.
// "ZONAL" - Zonal available instance.
// "REGIONAL" - Regional available instance.
AvailabilityType string `json:"availabilityType,omitempty"`
// BackupConfiguration: The daily backup configuration for the instance.
BackupConfiguration *BackupConfiguration `json:"backupConfiguration,omitempty"`
// CrashSafeReplicationEnabled: Configuration specific to read replica
// instances. Indicates whether
// database flags for crash-safe replication are enabled. This property
// is
// only applicable to First Generation instances.
CrashSafeReplicationEnabled bool `json:"crashSafeReplicationEnabled,omitempty"`
// DataDiskSizeGb: The size of data disk, in GB. The data disk size
// minimum is 10GB. Not used
// for First Generation instances.
DataDiskSizeGb int64 `json:"dataDiskSizeGb,omitempty,string"`
// DataDiskType: The type of data disk: <code>PD_SSD</code> (default)
// or
// <code>PD_HDD</code>. Not used for First Generation instances.
//
// Possible values:
// "SQL_DATA_DISK_TYPE_UNSPECIFIED" - This is an unknown data disk
// type.
// "PD_SSD" - An SSD data disk.
// "PD_HDD" - An HDD data disk.
// "OBSOLETE_LOCAL_SSD" - This field is deprecated and will be removed
// from a future version of the
// API.
DataDiskType string `json:"dataDiskType,omitempty"`
// DatabaseFlags: The database flags passed to the instance at startup.
DatabaseFlags []*DatabaseFlags `json:"databaseFlags,omitempty"`
// DatabaseReplicationEnabled: Configuration specific to read replica
// instances. Indicates whether
// replication is enabled or not.
DatabaseReplicationEnabled bool `json:"databaseReplicationEnabled,omitempty"`
// IpConfiguration: The settings for IP Management. This allows to
// enable or disable the
// instance IP and manage which external networks can connect to the
// instance.
// The IPv4 address cannot be disabled for Second Generation instances.
IpConfiguration *IpConfiguration `json:"ipConfiguration,omitempty"`
// Kind: This is always <code>sql#settings</code>.
Kind string `json:"kind,omitempty"`
// LocationPreference: The location preference settings. This allows the
// instance to be located as
// near as possible to either an App Engine app or Compute Engine zone
// for
// better performance. App Engine co-location is only applicable to
// First
// Generation instances.
LocationPreference *LocationPreference `json:"locationPreference,omitempty"`
// MaintenanceWindow: The maintenance window for this instance. This
// specifies when the instance
// can be restarted for maintenance purposes. Not used for First
// Generation
// instances.
MaintenanceWindow *MaintenanceWindow `json:"maintenanceWindow,omitempty"`
// PricingPlan: The pricing plan for this instance. This can be either
// <code>PER_USE</code>
// or <code>PACKAGE</code>. Only <code>PER_USE</code> is supported for
// Second
// Generation instances.
//
// Possible values:
// "SQL_PRICING_PLAN_UNSPECIFIED" - This is an unknown pricing plan
// for this instance.
// "PACKAGE" - The instance is billed at a monthly flat rate.
// "PER_USE" - The instance is billed per usage.
PricingPlan string `json:"pricingPlan,omitempty"`
// ReplicationType: The type of replication this instance uses. This can
// be either
// <code>ASYNCHRONOUS</code> or <code>SYNCHRONOUS</code>. This property
// is
// only applicable to First Generation instances.
//
// Possible values:
// "SQL_REPLICATION_TYPE_UNSPECIFIED" - This is an unknown replication
// type for a Cloud SQL instance.
// "SYNCHRONOUS" - The synchronous replication mode for First
// Generation instances. It is the
// default value.
// "ASYNCHRONOUS" - The asynchronous replication mode for First
// Generation instances. It
// provides a slight performance gain, but if an outage occurs while
// this
// option is set to asynchronous, you can lose up to a few seconds of
// updates
// to your data.
ReplicationType string `json:"replicationType,omitempty"`
// SettingsVersion: The version of instance settings. This is a required
// field for update
// method to make sure concurrent updates are handled properly. During
// update,
// use the most recent settingsVersion value for this instance and do
// not try
// to update this value.
SettingsVersion int64 `json:"settingsVersion,omitempty,string"`
// StorageAutoResize: Configuration to increase storage size
// automatically. The default value is
// true. Not used for First Generation instances.
StorageAutoResize *bool `json:"storageAutoResize,omitempty"`
// StorageAutoResizeLimit: The maximum size to which storage capacity
// can be automatically increased.
// The default value is 0, which specifies that there is no limit. Not
// used
// for First Generation instances.
StorageAutoResizeLimit int64 `json:"storageAutoResizeLimit,omitempty,string"`
// Tier: The tier (or machine type) for this instance, for
// example
// <code>db-n1-standard-1</code> (MySQL instances)
// or
// <code>db-custom-1-3840</code> (PostgreSQL instances). For MySQL
// instances,
// this property determines whether the instance is First or
// Second
// Generation. For more information, see
// <a
// href="/sql/docs/db_path/instance-settings">Instance Settings</a>.
Tier string `json:"tier,omitempty"`
// UserLabels: User-provided labels, represented as a dictionary where
// each label is a
// single key value pair.
UserLabels map[string]string `json:"userLabels,omitempty"`
// ForceSendFields is a list of field names (e.g. "ActivationPolicy") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ActivationPolicy") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Settings) MarshalJSON() ([]byte, error) {
type NoMethod Settings
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SqlExternalSyncSettingError: External master migration setting error.
type SqlExternalSyncSettingError struct {
// Detail: Additional information about the error encountered.
Detail string `json:"detail,omitempty"`
// Kind: This is always <code>sql#migrationSettingError</code>.
Kind string `json:"kind,omitempty"`
// Type: Identifies the specific error that occurred.
//
// Possible values:
// "SQL_EXTERNAL_SYNC_SETTING_ERROR_TYPE_UNSPECIFIED"
// "CONNECTION_FAILURE"
// "BINLOG_NOT_ENABLED"
// "INCOMPATIBLE_DATABASE_VERSION"
// "REPLICA_ALREADY_SETUP"
// "INSUFFICIENT_PRIVILEGE"
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Detail") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Detail") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SqlExternalSyncSettingError) MarshalJSON() ([]byte, error) {
type NoMethod SqlExternalSyncSettingError
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SqlInstancesRescheduleMaintenanceRequestBody: Reschedule options for
// maintenance windows.
type SqlInstancesRescheduleMaintenanceRequestBody struct {
// Reschedule: Required. The type of the reschedule the user wants.
Reschedule *Reschedule `json:"reschedule,omitempty"`
// ForceSendFields is a list of field names (e.g. "Reschedule") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Reschedule") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SqlInstancesRescheduleMaintenanceRequestBody) MarshalJSON() ([]byte, error) {
type NoMethod SqlInstancesRescheduleMaintenanceRequestBody
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SqlInstancesVerifyExternalSyncSettingsResponse: Instance verify
// external sync settings response.
type SqlInstancesVerifyExternalSyncSettingsResponse struct {
// Errors: List of migration violations.
Errors []*SqlExternalSyncSettingError `json:"errors,omitempty"`
// Kind: This is always <code>sql#migrationSettingErrorList</code>.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Errors") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Errors") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SqlInstancesVerifyExternalSyncSettingsResponse) MarshalJSON() ([]byte, error) {
type NoMethod SqlInstancesVerifyExternalSyncSettingsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SqlScheduledMaintenance: Any scheduled maintenancce for this
// instance.
type SqlScheduledMaintenance struct {
CanDefer bool `json:"canDefer,omitempty"`
// CanReschedule: If the scheduled maintenance can be rescheduled.
CanReschedule bool `json:"canReschedule,omitempty"`
// StartTime: The start time of any upcoming scheduled maintenance for
// this instance.
StartTime string `json:"startTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "CanDefer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CanDefer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SqlScheduledMaintenance) MarshalJSON() ([]byte, error) {
type NoMethod SqlScheduledMaintenance
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SqlServerDatabaseDetails: Represents a Sql Server database on the
// Cloud SQL instance.
type SqlServerDatabaseDetails struct {
// CompatibilityLevel: The version of SQL Server with which the database
// is to be made compatible
CompatibilityLevel int64 `json:"compatibilityLevel,omitempty"`
// RecoveryModel: The recovery model of a SQL Server database
RecoveryModel string `json:"recoveryModel,omitempty"`
// ForceSendFields is a list of field names (e.g. "CompatibilityLevel")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CompatibilityLevel") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *SqlServerDatabaseDetails) MarshalJSON() ([]byte, error) {
type NoMethod SqlServerDatabaseDetails
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SqlServerUserDetails: Represents a Sql Server user on the Cloud SQL
// instance.
type SqlServerUserDetails struct {
// Disabled: If the user has been disabled
Disabled bool `json:"disabled,omitempty"`
// ServerRoles: The server roles for this user
ServerRoles []string `json:"serverRoles,omitempty"`
// ForceSendFields is a list of field names (e.g. "Disabled") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Disabled") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SqlServerUserDetails) MarshalJSON() ([]byte, error) {
type NoMethod SqlServerUserDetails
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SslCert: SslCerts Resource
type SslCert struct {
// Cert: PEM representation.
Cert string `json:"cert,omitempty"`
// CertSerialNumber: Serial number, as extracted from the certificate.
CertSerialNumber string `json:"certSerialNumber,omitempty"`
// CommonName: User supplied name. Constrained to [a-zA-Z.-_ ]+.
CommonName string `json:"commonName,omitempty"`
// CreateTime: The time when the certificate was created in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>
CreateTime string `json:"createTime,omitempty"`
// ExpirationTime: The time when the certificate expires in
// <a
// href="https://tools.ietf.org/html/rfc3339">RFC 3339</a> format, for
// example
// <code>2012-11-15T16:19:00.094Z</code>.
ExpirationTime string `json:"expirationTime,omitempty"`
// Instance: Name of the database instance.
Instance string `json:"instance,omitempty"`
// Kind: This is always <code>sql#sslCert</code>.
Kind string `json:"kind,omitempty"`
// SelfLink: The URI of this resource.
SelfLink string `json:"selfLink,omitempty"`
// Sha1Fingerprint: Sha1 Fingerprint.
Sha1Fingerprint string `json:"sha1Fingerprint,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Cert") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of wh