// Package datastore provides access to the Cloud Datastore API. // // See https://cloud.google.com/datastore/ // // Usage example: // // import "google.golang.org/api/datastore/v1beta3" // ... // datastoreService, err := datastore.New(oauthHttpClient) package datastore // import "google.golang.org/api/datastore/v1beta3" import ( "bytes" "encoding/json" "errors" "fmt" context "golang.org/x/net/context" ctxhttp "golang.org/x/net/context/ctxhttp" gensupport "google.golang.org/api/gensupport" googleapi "google.golang.org/api/googleapi" "io" "net/http" "net/url" "strconv" "strings" ) // 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 _ = ctxhttp.Do const apiId = "datastore:v1beta3" const apiName = "datastore" const apiVersion = "v1beta3" const basePath = "https://datastore.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" // View and manage your Google Cloud Datastore data DatastoreScope = "https://www.googleapis.com/auth/datastore" ) func New(client *http.Client) (*Service, error) { if client == nil { return nil, errors.New("client is nil") } s := &Service{client: client, BasePath: basePath} s.Projects = NewProjectsService(s) return s, nil } type Service struct { client *http.Client BasePath string // API endpoint base URL UserAgent string // optional additional User-Agent fragment Projects *ProjectsService } func (s *Service) userAgent() string { if s.UserAgent == "" { return googleapi.UserAgent } return googleapi.UserAgent + " " + s.UserAgent } func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} return rs } type ProjectsService struct { s *Service } // AllocateIdsRequest: The request for Datastore.AllocateIds. type AllocateIdsRequest struct { // Keys: A list of keys with incomplete key paths for which to allocate // IDs. // No key may be reserved/read-only. Keys []*Key `json:"keys,omitempty"` // ForceSendFields is a list of field names (e.g. "Keys") 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. "Keys") 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 *AllocateIdsRequest) MarshalJSON() ([]byte, error) { type NoMethod AllocateIdsRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // AllocateIdsResponse: The response for Datastore.AllocateIds. type AllocateIdsResponse struct { // Keys: The keys specified in the request (in the same order), each // with // its key path completed with a newly allocated ID. Keys []*Key `json:"keys,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Keys") 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. "Keys") 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 *AllocateIdsResponse) MarshalJSON() ([]byte, error) { type NoMethod AllocateIdsResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // ArrayValue: An array value. type ArrayValue struct { // Values: Values in the array. // The order of this array may not be preserved if it contains a mix // of // indexed and unindexed values. Values []*Value `json:"values,omitempty"` // ForceSendFields is a list of field names (e.g. "Values") 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. "Values") 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 *ArrayValue) MarshalJSON() ([]byte, error) { type NoMethod ArrayValue raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // BeginTransactionRequest: The request for Datastore.BeginTransaction. type BeginTransactionRequest struct { // TransactionOptions: Options for a new transaction. TransactionOptions *TransactionOptions `json:"transactionOptions,omitempty"` // ForceSendFields is a list of field names (e.g. "TransactionOptions") // 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. "TransactionOptions") 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 *BeginTransactionRequest) MarshalJSON() ([]byte, error) { type NoMethod BeginTransactionRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // BeginTransactionResponse: The response for // Datastore.BeginTransaction. type BeginTransactionResponse struct { // Transaction: The transaction identifier (always present). Transaction string `json:"transaction,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Transaction") 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. "Transaction") 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 *BeginTransactionResponse) MarshalJSON() ([]byte, error) { type NoMethod BeginTransactionResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // CommitRequest: The request for Datastore.Commit. type CommitRequest struct { // Mode: The type of commit to perform. Defaults to `TRANSACTIONAL`. // // Possible values: // "MODE_UNSPECIFIED" - Unspecified. This value must not be used. // "TRANSACTIONAL" - Transactional: The mutations are either all // applied, or none are applied. // Learn about transactions // [here](https://cloud.google.com/datastore/docs/concepts/transactions). // "NON_TRANSACTIONAL" - Non-transactional: The mutations may not // apply as all or none. Mode string `json:"mode,omitempty"` // Mutations: The mutations to perform. // // When mode is `TRANSACTIONAL`, mutations affecting a single entity // are // applied in order. The following sequences of mutations affecting a // single // entity are not permitted in a single `Commit` request: // // - `insert` followed by `insert` // - `update` followed by `insert` // - `upsert` followed by `insert` // - `delete` followed by `update` // // When mode is `NON_TRANSACTIONAL`, no two mutations may affect a // single // entity. Mutations []*Mutation `json:"mutations,omitempty"` // Transaction: The identifier of the transaction associated with the // commit. A // transaction identifier is returned by a call // to // Datastore.BeginTransaction. Transaction string `json:"transaction,omitempty"` // ForceSendFields is a list of field names (e.g. "Mode") 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. "Mode") 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 *CommitRequest) MarshalJSON() ([]byte, error) { type NoMethod CommitRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // CommitResponse: The response for Datastore.Commit. type CommitResponse struct { // IndexUpdates: The number of index entries updated during the commit, // or zero if none were // updated. IndexUpdates int64 `json:"indexUpdates,omitempty"` // MutationResults: The result of performing the mutations. // The i-th mutation result corresponds to the i-th mutation in the // request. MutationResults []*MutationResult `json:"mutationResults,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "IndexUpdates") 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. "IndexUpdates") 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 *CommitResponse) MarshalJSON() ([]byte, error) { type NoMethod CommitResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // CompositeFilter: A filter that merges multiple other filters using // the given operator. type CompositeFilter struct { // Filters: The list of filters to combine. // Must contain at least one filter. Filters []*Filter `json:"filters,omitempty"` // Op: The operator for combining multiple filters. // // Possible values: // "OPERATOR_UNSPECIFIED" - Unspecified. This value must not be used. // "AND" - The results are required to satisfy each of the combined // filters. Op string `json:"op,omitempty"` // ForceSendFields is a list of field names (e.g. "Filters") 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. "Filters") 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 *CompositeFilter) MarshalJSON() ([]byte, error) { type NoMethod CompositeFilter raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // Entity: A Datastore data object. // // An entity is limited to 1 megabyte when stored. That // _roughly_ // corresponds to a limit of 1 megabyte for the serialized form of // this // message. type Entity struct { // Key: The entity's key. // // An entity must have a key, unless otherwise documented (for // example, // an entity in `Value.entity_value` may have no key). // An entity's kind is its key path's last element's kind, // or null if it has no key. Key *Key `json:"key,omitempty"` // Properties: The entity's properties. // The map's keys are property names. // A property name matching regex `__.*__` is reserved. // A reserved property name is forbidden in certain documented // contexts. // The name must not contain more than 500 characters. // The name cannot be "". Properties map[string]Value `json:"properties,omitempty"` // ForceSendFields is a list of field names (e.g. "Key") 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. "Key") 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 *Entity) MarshalJSON() ([]byte, error) { type NoMethod Entity raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // EntityResult: The result of fetching an entity from Datastore. type EntityResult struct { // Cursor: A cursor that points to the position after the result // entity. // Set only when the `EntityResult` is part of a `QueryResultBatch` // message. Cursor string `json:"cursor,omitempty"` // Entity: The resulting entity. Entity *Entity `json:"entity,omitempty"` // Version: The version of the entity, a strictly positive number that // monotonically // increases with changes to the entity. // // This field is set for `FULL` entity // results. // // For missing entities in `LookupResponse`, this // is the version of the snapshot that was used to look up the entity, // and it // is always set except for eventually consistent reads. Version int64 `json:"version,omitempty,string"` // ForceSendFields is a list of field names (e.g. "Cursor") 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. "Cursor") 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 *EntityResult) MarshalJSON() ([]byte, error) { type NoMethod EntityResult raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // Filter: A holder for any type of filter. type Filter struct { // CompositeFilter: A composite filter. CompositeFilter *CompositeFilter `json:"compositeFilter,omitempty"` // PropertyFilter: A filter on a property. PropertyFilter *PropertyFilter `json:"propertyFilter,omitempty"` // ForceSendFields is a list of field names (e.g. "CompositeFilter") 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. "CompositeFilter") 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 *Filter) MarshalJSON() ([]byte, error) { type NoMethod Filter raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1CommonMetadata: Metadata common to all // Datastore Admin operations. type GoogleDatastoreAdminV1CommonMetadata struct { // EndTime: The time the operation ended, either successfully or // otherwise. EndTime string `json:"endTime,omitempty"` // Labels: The client-assigned labels which were provided when the // operation was // created. May also include additional labels. Labels map[string]string `json:"labels,omitempty"` // OperationType: The type of the operation. Can be used as a filter // in // ListOperationsRequest. // // Possible values: // "OPERATION_TYPE_UNSPECIFIED" - Unspecified. // "EXPORT_ENTITIES" - ExportEntities. // "IMPORT_ENTITIES" - ImportEntities. OperationType string `json:"operationType,omitempty"` // StartTime: The time that work began on the operation. StartTime string `json:"startTime,omitempty"` // State: The current state of the Operation. // // Possible values: // "STATE_UNSPECIFIED" - Unspecified. // "INITIALIZING" - Request is being prepared for processing. // "PROCESSING" - Request is actively being processed. // "CANCELLING" - Request is in the process of being cancelled after // user called // google.longrunning.Operations.CancelOperation on the operation. // "FINALIZING" - Request has been processed and is in its // finalization stage. // "SUCCESSFUL" - Request has completed successfully. // "FAILED" - Request has finished being processed, but encountered an // error. // "CANCELLED" - Request has finished being cancelled after user // called // google.longrunning.Operations.CancelOperation. State string `json:"state,omitempty"` // 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 *GoogleDatastoreAdminV1CommonMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1CommonMetadata raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1EntityFilter: Identifies a subset of entities // in a project. This is specified as // combinations of kinds and namespaces (either or both of which may be // all, as // described in the following examples). // Example usage: // // Entire project: // kinds=[], namespace_ids=[] // // Kinds Foo and Bar in all namespaces: // kinds=['Foo', 'Bar'], namespace_ids=[] // // Kinds Foo and Bar only in the default namespace: // kinds=['Foo', 'Bar'], namespace_ids=[''] // // Kinds Foo and Bar in both the default and Baz namespaces: // kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz'] // // The entire Baz namespace: // kinds=[], namespace_ids=['Baz'] type GoogleDatastoreAdminV1EntityFilter struct { // Kinds: If empty, then this represents all kinds. Kinds []string `json:"kinds,omitempty"` // NamespaceIds: An empty list represents all namespaces. This is the // preferred // usage for projects that don't use namespaces. // // An empty string element represents the default namespace. This should // be // used if the project has data in non-default namespaces, but doesn't // want to // include them. // Each namespace in this list must be unique. NamespaceIds []string `json:"namespaceIds,omitempty"` // ForceSendFields is a list of field names (e.g. "Kinds") 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. "Kinds") 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 *GoogleDatastoreAdminV1EntityFilter) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1EntityFilter raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1ExportEntitiesMetadata: Metadata for // ExportEntities operations. type GoogleDatastoreAdminV1ExportEntitiesMetadata struct { // Common: Metadata common to all Datastore Admin operations. Common *GoogleDatastoreAdminV1CommonMetadata `json:"common,omitempty"` // EntityFilter: Description of which entities are being exported. EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` // OutputUrlPrefix: Location for the export metadata and data files. // This will be the same // value as // the // google.datastore.admin.v1.ExportEntitiesRequest.output_url_prefix // // field. The final output location is provided // in // google.datastore.admin.v1.ExportEntitiesResponse.output_url. OutputUrlPrefix string `json:"outputUrlPrefix,omitempty"` // ProgressBytes: An estimate of the number of bytes processed. ProgressBytes *GoogleDatastoreAdminV1Progress `json:"progressBytes,omitempty"` // ProgressEntities: An estimate of the number of entities processed. ProgressEntities *GoogleDatastoreAdminV1Progress `json:"progressEntities,omitempty"` // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *GoogleDatastoreAdminV1ExportEntitiesMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1ExportEntitiesMetadata raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1ExportEntitiesResponse: The response // for // google.datastore.admin.v1.DatastoreAdmin.ExportEntities. type GoogleDatastoreAdminV1ExportEntitiesResponse struct { // OutputUrl: Location of the output metadata file. This can be used to // begin an import // into Cloud Datastore (this project or another project). // See // google.datastore.admin.v1.ImportEntitiesRequest.input_url. // Only present if the operation completed successfully. OutputUrl string `json:"outputUrl,omitempty"` // ForceSendFields is a list of field names (e.g. "OutputUrl") 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. "OutputUrl") 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 *GoogleDatastoreAdminV1ExportEntitiesResponse) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1ExportEntitiesResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1ImportEntitiesMetadata: Metadata for // ImportEntities operations. type GoogleDatastoreAdminV1ImportEntitiesMetadata struct { // Common: Metadata common to all Datastore Admin operations. Common *GoogleDatastoreAdminV1CommonMetadata `json:"common,omitempty"` // EntityFilter: Description of which entities are being imported. EntityFilter *GoogleDatastoreAdminV1EntityFilter `json:"entityFilter,omitempty"` // InputUrl: The location of the import metadata file. This will be the // same value as // the google.datastore.admin.v1.ExportEntitiesResponse.output_url // field. InputUrl string `json:"inputUrl,omitempty"` // ProgressBytes: An estimate of the number of bytes processed. ProgressBytes *GoogleDatastoreAdminV1Progress `json:"progressBytes,omitempty"` // ProgressEntities: An estimate of the number of entities processed. ProgressEntities *GoogleDatastoreAdminV1Progress `json:"progressEntities,omitempty"` // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *GoogleDatastoreAdminV1ImportEntitiesMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1ImportEntitiesMetadata raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1Progress: Measures the progress of a particular // metric. type GoogleDatastoreAdminV1Progress struct { // WorkCompleted: The amount of work that has been completed. Note that // this may be greater // than work_estimated. WorkCompleted int64 `json:"workCompleted,omitempty,string"` // WorkEstimated: An estimate of how much work needs to be performed. // May be zero if the // work estimate is unavailable. WorkEstimated int64 `json:"workEstimated,omitempty,string"` // ForceSendFields is a list of field names (e.g. "WorkCompleted") 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. "WorkCompleted") 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 *GoogleDatastoreAdminV1Progress) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1Progress raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1beta1CommonMetadata: Metadata common to all // Datastore Admin operations. type GoogleDatastoreAdminV1beta1CommonMetadata struct { // EndTime: The time the operation ended, either successfully or // otherwise. EndTime string `json:"endTime,omitempty"` // Labels: The client-assigned labels which were provided when the // operation was // created. May also include additional labels. Labels map[string]string `json:"labels,omitempty"` // OperationType: The type of the operation. Can be used as a filter // in // ListOperationsRequest. // // Possible values: // "OPERATION_TYPE_UNSPECIFIED" - Unspecified. // "EXPORT_ENTITIES" - ExportEntities. // "IMPORT_ENTITIES" - ImportEntities. OperationType string `json:"operationType,omitempty"` // StartTime: The time that work began on the operation. StartTime string `json:"startTime,omitempty"` // State: The current state of the Operation. // // Possible values: // "STATE_UNSPECIFIED" - Unspecified. // "INITIALIZING" - Request is being prepared for processing. // "PROCESSING" - Request is actively being processed. // "CANCELLING" - Request is in the process of being cancelled after // user called // google.longrunning.Operations.CancelOperation on the operation. // "FINALIZING" - Request has been processed and is in its // finalization stage. // "SUCCESSFUL" - Request has completed successfully. // "FAILED" - Request has finished being processed, but encountered an // error. // "CANCELLED" - Request has finished being cancelled after user // called // google.longrunning.Operations.CancelOperation. State string `json:"state,omitempty"` // 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 *GoogleDatastoreAdminV1beta1CommonMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1beta1CommonMetadata raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1beta1EntityFilter: Identifies a subset of // entities in a project. This is specified as // combinations of kinds and namespaces (either or both of which may be // all, as // described in the following examples). // Example usage: // // Entire project: // kinds=[], namespace_ids=[] // // Kinds Foo and Bar in all namespaces: // kinds=['Foo', 'Bar'], namespace_ids=[] // // Kinds Foo and Bar only in the default namespace: // kinds=['Foo', 'Bar'], namespace_ids=[''] // // Kinds Foo and Bar in both the default and Baz namespaces: // kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz'] // // The entire Baz namespace: // kinds=[], namespace_ids=['Baz'] type GoogleDatastoreAdminV1beta1EntityFilter struct { // Kinds: If empty, then this represents all kinds. Kinds []string `json:"kinds,omitempty"` // NamespaceIds: An empty list represents all namespaces. This is the // preferred // usage for projects that don't use namespaces. // // An empty string element represents the default namespace. This should // be // used if the project has data in non-default namespaces, but doesn't // want to // include them. // Each namespace in this list must be unique. NamespaceIds []string `json:"namespaceIds,omitempty"` // ForceSendFields is a list of field names (e.g. "Kinds") 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. "Kinds") 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 *GoogleDatastoreAdminV1beta1EntityFilter) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1beta1EntityFilter raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1beta1ExportEntitiesMetadata: Metadata for // ExportEntities operations. type GoogleDatastoreAdminV1beta1ExportEntitiesMetadata struct { // Common: Metadata common to all Datastore Admin operations. Common *GoogleDatastoreAdminV1beta1CommonMetadata `json:"common,omitempty"` // EntityFilter: Description of which entities are being exported. EntityFilter *GoogleDatastoreAdminV1beta1EntityFilter `json:"entityFilter,omitempty"` // OutputUrlPrefix: Location for the export metadata and data files. // This will be the same // value as // the // google.datastore.admin.v1beta1.ExportEntitiesRequest.output_url_pr // efix // field. The final output location is provided // in // google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url. OutputUrlPrefix string `json:"outputUrlPrefix,omitempty"` // ProgressBytes: An estimate of the number of bytes processed. ProgressBytes *GoogleDatastoreAdminV1beta1Progress `json:"progressBytes,omitempty"` // ProgressEntities: An estimate of the number of entities processed. ProgressEntities *GoogleDatastoreAdminV1beta1Progress `json:"progressEntities,omitempty"` // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *GoogleDatastoreAdminV1beta1ExportEntitiesMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1beta1ExportEntitiesMetadata raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1beta1ExportEntitiesResponse: The response // for // google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities. type GoogleDatastoreAdminV1beta1ExportEntitiesResponse struct { // OutputUrl: Location of the output metadata file. This can be used to // begin an import // into Cloud Datastore (this project or another project). // See // google.datastore.admin.v1beta1.ImportEntitiesRequest.input_url. // On // ly present if the operation completed successfully. OutputUrl string `json:"outputUrl,omitempty"` // ForceSendFields is a list of field names (e.g. "OutputUrl") 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. "OutputUrl") 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 *GoogleDatastoreAdminV1beta1ExportEntitiesResponse) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1beta1ExportEntitiesResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1beta1ImportEntitiesMetadata: Metadata for // ImportEntities operations. type GoogleDatastoreAdminV1beta1ImportEntitiesMetadata struct { // Common: Metadata common to all Datastore Admin operations. Common *GoogleDatastoreAdminV1beta1CommonMetadata `json:"common,omitempty"` // EntityFilter: Description of which entities are being imported. EntityFilter *GoogleDatastoreAdminV1beta1EntityFilter `json:"entityFilter,omitempty"` // InputUrl: The location of the import metadata file. This will be the // same value as // the // google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url // field // . InputUrl string `json:"inputUrl,omitempty"` // ProgressBytes: An estimate of the number of bytes processed. ProgressBytes *GoogleDatastoreAdminV1beta1Progress `json:"progressBytes,omitempty"` // ProgressEntities: An estimate of the number of entities processed. ProgressEntities *GoogleDatastoreAdminV1beta1Progress `json:"progressEntities,omitempty"` // ForceSendFields is a list of field names (e.g. "Common") 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. "Common") 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 *GoogleDatastoreAdminV1beta1ImportEntitiesMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1beta1ImportEntitiesMetadata raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GoogleDatastoreAdminV1beta1Progress: Measures the progress of a // particular metric. type GoogleDatastoreAdminV1beta1Progress struct { // WorkCompleted: The amount of work that has been completed. Note that // this may be greater // than work_estimated. WorkCompleted int64 `json:"workCompleted,omitempty,string"` // WorkEstimated: An estimate of how much work needs to be performed. // May be zero if the // work estimate is unavailable. WorkEstimated int64 `json:"workEstimated,omitempty,string"` // ForceSendFields is a list of field names (e.g. "WorkCompleted") 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. "WorkCompleted") 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 *GoogleDatastoreAdminV1beta1Progress) MarshalJSON() ([]byte, error) { type NoMethod GoogleDatastoreAdminV1beta1Progress raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GqlQuery: A [GQL // query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference) // . type GqlQuery struct { // AllowLiterals: When false, the query string must not contain any // literals and instead must // bind all values. For example, // `SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, // while // `SELECT * FROM Kind WHERE a = @value` is. AllowLiterals bool `json:"allowLiterals,omitempty"` // NamedBindings: For each non-reserved named binding site in the query // string, there must be // a named parameter with that name, but not necessarily the // inverse. // // Key must match regex `A-Za-z_$*`, must not match regex // `__.*__`, and must not be "". NamedBindings map[string]GqlQueryParameter `json:"namedBindings,omitempty"` // PositionalBindings: Numbered binding site @1 references the first // numbered parameter, // effectively using 1-based indexing, rather than the usual 0. // // For each binding site numbered i in `query_string`, there must be an // i-th // numbered parameter. The inverse must also be true. PositionalBindings []*GqlQueryParameter `json:"positionalBindings,omitempty"` // QueryString: A string of the format // described // [here](https://cloud.google.com/datastore/docs/apis/gql/gql_ // reference). QueryString string `json:"queryString,omitempty"` // ForceSendFields is a list of field names (e.g. "AllowLiterals") 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. "AllowLiterals") 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 *GqlQuery) MarshalJSON() ([]byte, error) { type NoMethod GqlQuery raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // GqlQueryParameter: A binding parameter for a GQL query. type GqlQueryParameter struct { // Cursor: A query cursor. Query cursors are returned in query // result batches. Cursor string `json:"cursor,omitempty"` // Value: A value parameter. Value *Value `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "Cursor") 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. "Cursor") 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 *GqlQueryParameter) MarshalJSON() ([]byte, error) { type NoMethod GqlQueryParameter raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // Key: A unique identifier for an entity. // If a key's partition ID or any of its path kinds or names // are // reserved/read-only, the key is reserved/read-only. // A reserved/read-only key is forbidden in certain documented contexts. type Key struct { // PartitionId: Entities are partitioned into subsets, currently // identified by a project // ID and namespace ID. // Queries are scoped to a single partition. PartitionId *PartitionId `json:"partitionId,omitempty"` // Path: The entity path. // An entity path consists of one or more elements composed of a kind // and a // string or numerical identifier, which identify entities. The // first // element identifies a _root entity_, the second element identifies // a _child_ of the root entity, the third element identifies a child of // the // second entity, and so forth. The entities identified by all prefixes // of // the path are called the element's _ancestors_. // // An entity path is always fully complete: *all* of the entity's // ancestors // are required to be in the path along with the entity identifier // itself. // The only exception is that in some documented cases, the identifier // in the // last path element (for the entity) itself may be omitted. For // example, // the last path element of the key of `Mutation.insert` may have // no // identifier. // // A path can never be empty, and a path can have at most 100 elements. Path []*PathElement `json:"path,omitempty"` // ForceSendFields is a list of field names (e.g. "PartitionId") 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. "PartitionId") 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 *Key) MarshalJSON() ([]byte, error) { type NoMethod Key raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // KindExpression: A representation of a kind. type KindExpression struct { // Name: The name of the kind. Name string `json:"name,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 *KindExpression) MarshalJSON() ([]byte, error) { type NoMethod KindExpression raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // LatLng: An object representing a latitude/longitude pair. This is // expressed as a pair // of doubles representing degrees latitude and degrees longitude. // Unless // specified otherwise, this must conform to the // WGS84 // st // andard. Values must be within normalized ranges. type LatLng struct { // Latitude: The latitude in degrees. It must be in the range [-90.0, // +90.0]. Latitude float64 `json:"latitude,omitempty"` // Longitude: The longitude in degrees. It must be in the range [-180.0, // +180.0]. Longitude float64 `json:"longitude,omitempty"` // ForceSendFields is a list of field names (e.g. "Latitude") 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. "Latitude") 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 *LatLng) MarshalJSON() ([]byte, error) { type NoMethod LatLng raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *LatLng) UnmarshalJSON(data []byte) error { type NoMethod LatLng var s1 struct { Latitude gensupport.JSONFloat64 `json:"latitude"` Longitude gensupport.JSONFloat64 `json:"longitude"` *NoMethod } s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } s.Latitude = float64(s1.Latitude) s.Longitude = float64(s1.Longitude) return nil } // LookupRequest: The request for Datastore.Lookup. type LookupRequest struct { // Keys: Keys of entities to look up. Keys []*Key `json:"keys,omitempty"` // ReadOptions: The options for this lookup request. ReadOptions *ReadOptions `json:"readOptions,omitempty"` // ForceSendFields is a list of field names (e.g. "Keys") 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. "Keys") 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 *LookupRequest) MarshalJSON() ([]byte, error) { type NoMethod LookupRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // LookupResponse: The response for Datastore.Lookup. type LookupResponse struct { // Deferred: A list of keys that were not looked up due to resource // constraints. The // order of results in this field is undefined and has no relation to // the // order of the keys in the input. Deferred []*Key `json:"deferred,omitempty"` // Found: Entities found as `ResultType.FULL` entities. The order of // results in this // field is undefined and has no relation to the order of the keys in // the // input. Found []*EntityResult `json:"found,omitempty"` // Missing: Entities not found as `ResultType.KEY_ONLY` entities. The // order of results // in this field is undefined and has no relation to the order of the // keys // in the input. Missing []*EntityResult `json:"missing,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Deferred") 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. "Deferred") 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 *LookupResponse) MarshalJSON() ([]byte, error) { type NoMethod LookupResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // Mutation: A mutation to apply to an entity. type Mutation struct { // BaseVersion: The version of the entity that this mutation is being // applied to. If this // does not match the current version on the server, the mutation // conflicts. BaseVersion int64 `json:"baseVersion,omitempty,string"` // Delete: The key of the entity to delete. The entity may or may not // already exist. // Must have a complete key path and must not be reserved/read-only. Delete *Key `json:"delete,omitempty"` // Insert: The entity to insert. The entity must not already exist. // The entity key's final path element may be incomplete. Insert *Entity `json:"insert,omitempty"` // Update: The entity to update. The entity must already exist. // Must have a complete key path. Update *Entity `json:"update,omitempty"` // Upsert: The entity to upsert. The entity may or may not already // exist. // The entity key's final path element may be incomplete. Upsert *Entity `json:"upsert,omitempty"` // ForceSendFields is a list of field names (e.g. "BaseVersion") 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. "BaseVersion") 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 *Mutation) MarshalJSON() ([]byte, error) { type NoMethod Mutation raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // MutationResult: The result of applying a mutation. type MutationResult struct { // ConflictDetected: Whether a conflict was detected for this mutation. // Always false when a // conflict detection strategy field is not set in the mutation. ConflictDetected bool `json:"conflictDetected,omitempty"` // Key: The automatically allocated key. // Set only when the mutation allocated a key. Key *Key `json:"key,omitempty"` // Version: The version of the entity on the server after processing the // mutation. If // the mutation doesn't change anything on the server, then the version // will // be the version of the current entity or, if no entity is present, a // version // that is strictly greater than the version of any previous entity and // less // than the version of any possible future entity. Version int64 `json:"version,omitempty,string"` // ForceSendFields is a list of field names (e.g. "ConflictDetected") 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. "ConflictDetected") 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 *MutationResult) MarshalJSON() ([]byte, error) { type NoMethod MutationResult raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // PartitionId: A partition ID identifies a grouping of entities. The // grouping is always // by project and namespace, however the namespace ID may be empty. // // A partition ID contains several dimensions: // project ID and namespace ID. // // Partition dimensions: // // - May be "". // - Must be valid UTF-8 bytes. // - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` // If the value of any dimension matches regex `__.*__`, the partition // is // reserved/read-only. // A reserved/read-only partition ID is forbidden in certain // documented // contexts. // // Foreign partition IDs (in which the project ID does // not match the context project ID ) are discouraged. // Reads and writes of foreign partition IDs may fail if the project is // not in an active state. type PartitionId struct { // NamespaceId: If not empty, the ID of the namespace to which the // entities belong. NamespaceId string `json:"namespaceId,omitempty"` // ProjectId: The ID of the project to which the entities belong. ProjectId string `json:"projectId,omitempty"` // ForceSendFields is a list of field names (e.g. "NamespaceId") 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. "NamespaceId") 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 *PartitionId) MarshalJSON() ([]byte, error) { type NoMethod PartitionId raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // PathElement: A (kind, ID/name) pair used to construct a key path. // // If either name or ID is set, the element is complete. // If neither is set, the element is incomplete. type PathElement struct { // Id: The auto-allocated ID of the entity. // Never equal to zero. Values less than zero are discouraged and may // not // be supported in the future. Id int64 `json:"id,omitempty,string"` // Kind: The kind of the entity. // A kind matching regex `__.*__` is reserved/read-only. // A kind must not contain more than 1500 bytes when UTF-8 // encoded. // Cannot be "". Kind string `json:"kind,omitempty"` // Name: The name of the entity. // A name matching regex `__.*__` is reserved/read-only. // A name must not be more than 1500 bytes when UTF-8 encoded. // Cannot be "". Name string `json:"name,omitempty"` // ForceSendFields is a list of field names (e.g. "Id") 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. "Id") 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 *PathElement) MarshalJSON() ([]byte, error) { type NoMethod PathElement raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // Projection: A representation of a property in a projection. type Projection struct { // Property: The property to project. Property *PropertyReference `json:"property,omitempty"` // ForceSendFields is a list of field names (e.g. "Property") 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. "Property") 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 *Projection) MarshalJSON() ([]byte, error) { type NoMethod Projection raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // PropertyFilter: A filter on a specific property. type PropertyFilter struct { // Op: The operator to filter by. // // Possible values: // "OPERATOR_UNSPECIFIED" - Unspecified. This value must not be used. // "LESS_THAN" - Less than. // "LESS_THAN_OR_EQUAL" - Less than or equal. // "GREATER_THAN" - Greater than. // "GREATER_THAN_OR_EQUAL" - Greater than or equal. // "EQUAL" - Equal. // "HAS_ANCESTOR" - Has ancestor. Op string `json:"op,omitempty"` // Property: The property to filter by. Property *PropertyReference `json:"property,omitempty"` // Value: The value to compare the property to. Value *Value `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "Op") 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. "Op") 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 *PropertyFilter) MarshalJSON() ([]byte, error) { type NoMethod PropertyFilter raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // PropertyOrder: The desired order for a specific property. type PropertyOrder struct { // Direction: The direction to order by. Defaults to `ASCENDING`. // // Possible values: // "DIRECTION_UNSPECIFIED" - Unspecified. This value must not be used. // "ASCENDING" - Ascending. // "DESCENDING" - Descending. Direction string `json:"direction,omitempty"` // Property: The property to order by. Property *PropertyReference `json:"property,omitempty"` // ForceSendFields is a list of field names (e.g. "Direction") 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. "Direction") 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 *PropertyOrder) MarshalJSON() ([]byte, error) { type NoMethod PropertyOrder raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // PropertyReference: A reference to a property relative to the kind // expressions. type PropertyReference struct { // Name: The name of the property. // If name includes "."s, it may be interpreted as a property name path. Name string `json:"name,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 *PropertyReference) MarshalJSON() ([]byte, error) { type NoMethod PropertyReference raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // Query: A query for entities. type Query struct { // DistinctOn: The properties to make distinct. The query results will // contain the first // result for each distinct combination of values for the given // properties // (if empty, all results are returned). DistinctOn []*PropertyReference `json:"distinctOn,omitempty"` // EndCursor: An ending point for the query results. Query cursors // are // returned in query result batches and // [can only be used to limit the same // query](https://cloud.google.com/datastore/docs/concepts/queries#cursor // s_limits_and_offsets). EndCursor string `json:"endCursor,omitempty"` // Filter: The filter to apply. Filter *Filter `json:"filter,omitempty"` // Kind: The kinds to query (if empty, returns entities of all // kinds). // Currently at most 1 kind may be specified. Kind []*KindExpression `json:"kind,omitempty"` // Limit: The maximum number of results to return. Applies after all // other // constraints. Optional. // Unspecified is interpreted as no limit. // Must be >= 0 if specified. Limit int64 `json:"limit,omitempty"` // Offset: The number of results to skip. Applies before limit, but // after all other // constraints. Optional. Must be >= 0 if specified. Offset int64 `json:"offset,omitempty"` // Order: The order to apply to the query results (if empty, order is // unspecified). Order []*PropertyOrder `json:"order,omitempty"` // Projection: The projection to return. Defaults to returning all // properties. Projection []*Projection `json:"projection,omitempty"` // StartCursor: A starting point for the query results. Query cursors // are // returned in query result batches and // [can only be used to continue the same // query](https://cloud.google.com/datastore/docs/concepts/queries#cursor // s_limits_and_offsets). StartCursor string `json:"startCursor,omitempty"` // ForceSendFields is a list of field names (e.g. "DistinctOn") 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. "DistinctOn") 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 *Query) MarshalJSON() ([]byte, error) { type NoMethod Query raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // QueryResultBatch: A batch of results produced by a query. type QueryResultBatch struct { // EndCursor: A cursor that points to the position after the last result // in the batch. EndCursor string `json:"endCursor,omitempty"` // EntityResultType: The result type for every entity in // `entity_results`. // // Possible values: // "RESULT_TYPE_UNSPECIFIED" - Unspecified. This value is never used. // "FULL" - The key and properties. // "PROJECTION" - A projected subset of properties. The entity may // have no key. // "KEY_ONLY" - Only the key. EntityResultType string `json:"entityResultType,omitempty"` // EntityResults: The results for this batch. EntityResults []*EntityResult `json:"entityResults,omitempty"` // MoreResults: The state of the query after the current batch. // // Possible values: // "MORE_RESULTS_TYPE_UNSPECIFIED" - Unspecified. This value is never // used. // "NOT_FINISHED" - There may be additional batches to fetch from this // query. // "MORE_RESULTS_AFTER_LIMIT" - The query is finished, but there may // be more results after the limit. // "MORE_RESULTS_AFTER_CURSOR" - The query is finished, but there may // be more results after the end // cursor. // "NO_MORE_RESULTS" - The query is finished, and there are no more // results. MoreResults string `json:"moreResults,omitempty"` // SkippedCursor: A cursor that points to the position after the last // skipped result. // Will be set when `skipped_results` != 0. SkippedCursor string `json:"skippedCursor,omitempty"` // SkippedResults: The number of results skipped, typically because of // an offset. SkippedResults int64 `json:"skippedResults,omitempty"` // SnapshotVersion: The version number of the snapshot this batch was // returned from. // This applies to the range of results from the query's `start_cursor` // (or // the beginning of the query if no cursor was given) to this // batch's // `end_cursor` (not the query's `end_cursor`). // // In a single transaction, subsequent query result batches for the same // query // can have a greater snapshot version number. Each batch's snapshot // version // is valid for all preceding batches. // The value will be zero for eventually consistent queries. SnapshotVersion int64 `json:"snapshotVersion,omitempty,string"` // ForceSendFields is a list of field names (e.g. "EndCursor") 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. "EndCursor") 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 *QueryResultBatch) MarshalJSON() ([]byte, error) { type NoMethod QueryResultBatch raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // ReadOnly: Options specific to read-only transactions. type ReadOnly struct { } // ReadOptions: The options shared by read requests. type ReadOptions struct { // ReadConsistency: The non-transactional read consistency to // use. // Cannot be set to `STRONG` for global queries. // // Possible values: // "READ_CONSISTENCY_UNSPECIFIED" - Unspecified. This value must not // be used. // "STRONG" - Strong consistency. // "EVENTUAL" - Eventual consistency. ReadConsistency string `json:"readConsistency,omitempty"` // Transaction: The identifier of the transaction in which to read. // A // transaction identifier is returned by a call // to // Datastore.BeginTransaction. Transaction string `json:"transaction,omitempty"` // ForceSendFields is a list of field names (e.g. "ReadConsistency") 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. "ReadConsistency") 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 *ReadOptions) MarshalJSON() ([]byte, error) { type NoMethod ReadOptions raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // ReadWrite: Options specific to read / write transactions. type ReadWrite struct { // PreviousTransaction: The transaction identifier of the transaction // being retried. PreviousTransaction string `json:"previousTransaction,omitempty"` // ForceSendFields is a list of field names (e.g. "PreviousTransaction") // 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. "PreviousTransaction") 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 *ReadWrite) MarshalJSON() ([]byte, error) { type NoMethod ReadWrite raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // ReserveIdsRequest: The request for Datastore.ReserveIds. type ReserveIdsRequest struct { // DatabaseId: If not empty, the ID of the database against which to // make the request. DatabaseId string `json:"databaseId,omitempty"` // Keys: A list of keys with complete key paths whose numeric IDs should // not be // auto-allocated. Keys []*Key `json:"keys,omitempty"` // ForceSendFields is a list of field names (e.g. "DatabaseId") 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. "DatabaseId") 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 *ReserveIdsRequest) MarshalJSON() ([]byte, error) { type NoMethod ReserveIdsRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // ReserveIdsResponse: The response for Datastore.ReserveIds. type ReserveIdsResponse struct { // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` } // RollbackRequest: The request for Datastore.Rollback. type RollbackRequest struct { // Transaction: The transaction identifier, returned by a call // to // Datastore.BeginTransaction. Transaction string `json:"transaction,omitempty"` // ForceSendFields is a list of field names (e.g. "Transaction") 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. "Transaction") 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 *RollbackRequest) MarshalJSON() ([]byte, error) { type NoMethod RollbackRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // RollbackResponse: The response for Datastore.Rollback. // (an empty message). type RollbackResponse struct { // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` } // RunQueryRequest: The request for Datastore.RunQuery. type RunQueryRequest struct { // GqlQuery: The GQL query to run. GqlQuery *GqlQuery `json:"gqlQuery,omitempty"` // PartitionId: Entities are partitioned into subsets, identified by a // partition ID. // Queries are scoped to a single partition. // This partition ID is normalized with the standard default // context // partition ID. PartitionId *PartitionId `json:"partitionId,omitempty"` // Query: The query to run. Query *Query `json:"query,omitempty"` // ReadOptions: The options for this query. ReadOptions *ReadOptions `json:"readOptions,omitempty"` // ForceSendFields is a list of field names (e.g. "GqlQuery") 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. "GqlQuery") 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 *RunQueryRequest) MarshalJSON() ([]byte, error) { type NoMethod RunQueryRequest raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // RunQueryResponse: The response for Datastore.RunQuery. type RunQueryResponse struct { // Batch: A batch of query results (always present). Batch *QueryResultBatch `json:"batch,omitempty"` // Query: The parsed form of the `GqlQuery` from the request, if it was // set. Query *Query `json:"query,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Batch") 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. "Batch") 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 *RunQueryResponse) MarshalJSON() ([]byte, error) { type NoMethod RunQueryResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // TransactionOptions: Options for beginning a new // transaction. // // Transactions can be created explicitly with calls // to // Datastore.BeginTransaction or implicitly by // setting // ReadOptions.new_transaction in read requests. type TransactionOptions struct { // ReadOnly: The transaction should only allow reads. ReadOnly *ReadOnly `json:"readOnly,omitempty"` // ReadWrite: The transaction should allow both reads and writes. ReadWrite *ReadWrite `json:"readWrite,omitempty"` // ForceSendFields is a list of field names (e.g. "ReadOnly") 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. "ReadOnly") 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 *TransactionOptions) MarshalJSON() ([]byte, error) { type NoMethod TransactionOptions raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // Value: A message that can hold any of the supported value types and // associated // metadata. type Value struct { // ArrayValue: An array value. // Cannot contain another array value. // A `Value` instance that sets field `array_value` must not set // fields // `meaning` or `exclude_from_indexes`. ArrayValue *ArrayValue `json:"arrayValue,omitempty"` // BlobValue: A blob value. // May have at most 1,000,000 bytes. // When `exclude_from_indexes` is false, may have at most 1500 bytes. // In JSON requests, must be base64-encoded. BlobValue *string `json:"blobValue,omitempty"` // BooleanValue: A boolean value. BooleanValue *bool `json:"booleanValue,omitempty"` // DoubleValue: A double value. DoubleValue *float64 `json:"doubleValue,omitempty"` // EntityValue: An entity value. // // - May have no key. // - May have a key with an incomplete key path. // - May have a reserved/read-only key. EntityValue *Entity `json:"entityValue,omitempty"` // ExcludeFromIndexes: If the value should be excluded from all indexes // including those defined // explicitly. ExcludeFromIndexes bool `json:"excludeFromIndexes,omitempty"` // GeoPointValue: A geo point value representing a point on the surface // of Earth. GeoPointValue *LatLng `json:"geoPointValue,omitempty"` // IntegerValue: An integer value. IntegerValue *int64 `json:"integerValue,omitempty,string"` // KeyValue: A key value. KeyValue *Key `json:"keyValue,omitempty"` // Meaning: The `meaning` field should only be populated for backwards // compatibility. Meaning int64 `json:"meaning,omitempty"` // NullValue: A null value. // // Possible values: // "NULL_VALUE" - Null value. NullValue string `json:"nullValue,omitempty"` // StringValue: A UTF-8 encoded string value. // When `exclude_from_indexes` is false (it is indexed) , may have at // most 1500 bytes. // Otherwise, may be set to at least 1,000,000 bytes. StringValue *string `json:"stringValue,omitempty"` // TimestampValue: A timestamp value. // When stored in the Datastore, precise only to microseconds; // any additional precision is rounded down. TimestampValue *string `json:"timestampValue,omitempty"` // ForceSendFields is a list of field names (e.g. "ArrayValue") 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. "ArrayValue") 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 *Value) MarshalJSON() ([]byte, error) { type NoMethod Value raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } func (s *Value) UnmarshalJSON(data []byte) error { type NoMethod Value var s1 struct { DoubleValue *gensupport.JSONFloat64 `json:"doubleValue"` *NoMethod } s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } if s1.DoubleValue != nil { s.DoubleValue = (*float64)(s1.DoubleValue) } return nil } // method id "datastore.projects.allocateIds": type ProjectsAllocateIdsCall struct { s *Service projectId string allocateidsrequest *AllocateIdsRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // AllocateIds: Allocates IDs for the given keys, which is useful for // referencing an entity // before it is inserted. func (r *ProjectsService) AllocateIds(projectId string, allocateidsrequest *AllocateIdsRequest) *ProjectsAllocateIdsCall { c := &ProjectsAllocateIdsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId c.allocateidsrequest = allocateidsrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. func (c *ProjectsAllocateIdsCall) Fields(s ...googleapi.Field) *ProjectsAllocateIdsCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. func (c *ProjectsAllocateIdsCall) Context(ctx context.Context) *ProjectsAllocateIdsCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. func (c *ProjectsAllocateIdsCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsAllocateIdsCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.allocateidsrequest) if err != nil { return nil, err } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/projects/{projectId}:allocateIds") urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "projectId": c.projectId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "datastore.projects.allocateIds" call. // Exactly one of *AllocateIdsResponse or error will be non-nil. Any // non-2xx status code is an error. Response headers are in either // *AllocateIdsResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. func (c *ProjectsAllocateIdsCall) Do(opts ...googleapi.CallOption) (*AllocateIdsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, &googleapi.Error{ Code: res.StatusCode, Header: res.Header, } } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, err } ret := &AllocateIdsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil // { // "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted.", // "flatPath": "v1beta3/projects/{projectId}:allocateIds", // "httpMethod": "POST", // "id": "datastore.projects.allocateIds", // "parameterOrder": [ // "projectId" // ], // "parameters": { // "projectId": { // "description": "The ID of the project against which to make the request.", // "location": "path", // "required": true, // "type": "string" // } // }, // "path": "v1beta3/projects/{projectId}:allocateIds", // "request": { // "$ref": "AllocateIdsRequest" // }, // "response": { // "$ref": "AllocateIdsResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/datastore" // ] // } } // method id "datastore.projects.beginTransaction": type ProjectsBeginTransactionCall struct { s *Service projectId string begintransactionrequest *BeginTransactionRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // BeginTransaction: Begins a new transaction. func (r *ProjectsService) BeginTransaction(projectId string, begintransactionrequest *BeginTransactionRequest) *ProjectsBeginTransactionCall { c := &ProjectsBeginTransactionCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId c.begintransactionrequest = begintransactionrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. func (c *ProjectsBeginTransactionCall) Fields(s ...googleapi.Field) *ProjectsBeginTransactionCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. func (c *ProjectsBeginTransactionCall) Context(ctx context.Context) *ProjectsBeginTransactionCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. func (c *ProjectsBeginTransactionCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsBeginTransactionCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.begintransactionrequest) if err != nil { return nil, err } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/projects/{projectId}:beginTransaction") urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "projectId": c.projectId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "datastore.projects.beginTransaction" call. // Exactly one of *BeginTransactionResponse or error will be non-nil. // Any non-2xx status code is an error. Response headers are in either // *BeginTransactionResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. func (c *ProjectsBeginTransactionCall) Do(opts ...googleapi.CallOption) (*BeginTransactionResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, &googleapi.Error{ Code: res.StatusCode, Header: res.Header, } } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, err } ret := &BeginTransactionResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil // { // "description": "Begins a new transaction.", // "flatPath": "v1beta3/projects/{projectId}:beginTransaction", // "httpMethod": "POST", // "id": "datastore.projects.beginTransaction", // "parameterOrder": [ // "projectId" // ], // "parameters": { // "projectId": { // "description": "The ID of the project against which to make the request.", // "location": "path", // "required": true, // "type": "string" // } // }, // "path": "v1beta3/projects/{projectId}:beginTransaction", // "request": { // "$ref": "BeginTransactionRequest" // }, // "response": { // "$ref": "BeginTransactionResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/datastore" // ] // } } // method id "datastore.projects.commit": type ProjectsCommitCall struct { s *Service projectId string commitrequest *CommitRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Commit: Commits a transaction, optionally creating, deleting or // modifying some // entities. func (r *ProjectsService) Commit(projectId string, commitrequest *CommitRequest) *ProjectsCommitCall { c := &ProjectsCommitCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId c.commitrequest = commitrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. func (c *ProjectsCommitCall) Fields(s ...googleapi.Field) *ProjectsCommitCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. func (c *ProjectsCommitCall) Context(ctx context.Context) *ProjectsCommitCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. func (c *ProjectsCommitCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsCommitCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.commitrequest) if err != nil { return nil, err } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/projects/{projectId}:commit") urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "projectId": c.projectId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "datastore.projects.commit" call. // Exactly one of *CommitResponse or error will be non-nil. Any non-2xx // status code is an error. Response headers are in either // *CommitResponse.ServerResponse.Header or (if a response was returned // at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. func (c *ProjectsCommitCall) Do(opts ...googleapi.CallOption) (*CommitResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, &googleapi.Error{ Code: res.StatusCode, Header: res.Header, } } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, err } ret := &CommitResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil // { // "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities.", // "flatPath": "v1beta3/projects/{projectId}:commit", // "httpMethod": "POST", // "id": "datastore.projects.commit", // "parameterOrder": [ // "projectId" // ], // "parameters": { // "projectId": { // "description": "The ID of the project against which to make the request.", // "location": "path", // "required": true, // "type": "string" // } // }, // "path": "v1beta3/projects/{projectId}:commit", // "request": { // "$ref": "CommitRequest" // }, // "response": { // "$ref": "CommitResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/datastore" // ] // } } // method id "datastore.projects.lookup": type ProjectsLookupCall struct { s *Service projectId string lookuprequest *LookupRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Lookup: Looks up entities by key. func (r *ProjectsService) Lookup(projectId string, lookuprequest *LookupRequest) *ProjectsLookupCall { c := &ProjectsLookupCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId c.lookuprequest = lookuprequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. func (c *ProjectsLookupCall) Fields(s ...googleapi.Field) *ProjectsLookupCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. func (c *ProjectsLookupCall) Context(ctx context.Context) *ProjectsLookupCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. func (c *ProjectsLookupCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLookupCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.lookuprequest) if err != nil { return nil, err } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/projects/{projectId}:lookup") urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "projectId": c.projectId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "datastore.projects.lookup" call. // Exactly one of *LookupResponse or error will be non-nil. Any non-2xx // status code is an error. Response headers are in either // *LookupResponse.ServerResponse.Header or (if a response was returned // at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. func (c *ProjectsLookupCall) Do(opts ...googleapi.CallOption) (*LookupResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, &googleapi.Error{ Code: res.StatusCode, Header: res.Header, } } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, err } ret := &LookupResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil // { // "description": "Looks up entities by key.", // "flatPath": "v1beta3/projects/{projectId}:lookup", // "httpMethod": "POST", // "id": "datastore.projects.lookup", // "parameterOrder": [ // "projectId" // ], // "parameters": { // "projectId": { // "description": "The ID of the project against which to make the request.", // "location": "path", // "required": true, // "type": "string" // } // }, // "path": "v1beta3/projects/{projectId}:lookup", // "request": { // "$ref": "LookupRequest" // }, // "response": { // "$ref": "LookupResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/datastore" // ] // } } // method id "datastore.projects.reserveIds": type ProjectsReserveIdsCall struct { s *Service projectId string reserveidsrequest *ReserveIdsRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // ReserveIds: Prevents the supplied keys' IDs from being auto-allocated // by Cloud // Datastore. func (r *ProjectsService) ReserveIds(projectId string, reserveidsrequest *ReserveIdsRequest) *ProjectsReserveIdsCall { c := &ProjectsReserveIdsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId c.reserveidsrequest = reserveidsrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. func (c *ProjectsReserveIdsCall) Fields(s ...googleapi.Field) *ProjectsReserveIdsCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. func (c *ProjectsReserveIdsCall) Context(ctx context.Context) *ProjectsReserveIdsCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. func (c *ProjectsReserveIdsCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsReserveIdsCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.reserveidsrequest) if err != nil { return nil, err } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/projects/{projectId}:reserveIds") urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "projectId": c.projectId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "datastore.projects.reserveIds" call. // Exactly one of *ReserveIdsResponse or error will be non-nil. Any // non-2xx status code is an error. Response headers are in either // *ReserveIdsResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. func (c *ProjectsReserveIdsCall) Do(opts ...googleapi.CallOption) (*ReserveIdsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, &googleapi.Error{ Code: res.StatusCode, Header: res.Header, } } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, err } ret := &ReserveIdsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil // { // "description": "Prevents the supplied keys' IDs from being auto-allocated by Cloud\nDatastore.", // "flatPath": "v1beta3/projects/{projectId}:reserveIds", // "httpMethod": "POST", // "id": "datastore.projects.reserveIds", // "parameterOrder": [ // "projectId" // ], // "parameters": { // "projectId": { // "description": "The ID of the project against which to make the request.", // "location": "path", // "required": true, // "type": "string" // } // }, // "path": "v1beta3/projects/{projectId}:reserveIds", // "request": { // "$ref": "ReserveIdsRequest" // }, // "response": { // "$ref": "ReserveIdsResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/datastore" // ] // } } // method id "datastore.projects.rollback": type ProjectsRollbackCall struct { s *Service projectId string rollbackrequest *RollbackRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Rollback: Rolls back a transaction. func (r *ProjectsService) Rollback(projectId string, rollbackrequest *RollbackRequest) *ProjectsRollbackCall { c := &ProjectsRollbackCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId c.rollbackrequest = rollbackrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. func (c *ProjectsRollbackCall) Fields(s ...googleapi.Field) *ProjectsRollbackCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. func (c *ProjectsRollbackCall) Context(ctx context.Context) *ProjectsRollbackCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. func (c *ProjectsRollbackCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsRollbackCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.rollbackrequest) if err != nil { return nil, err } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/projects/{projectId}:rollback") urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "projectId": c.projectId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "datastore.projects.rollback" call. // Exactly one of *RollbackResponse or error will be non-nil. Any // non-2xx status code is an error. Response headers are in either // *RollbackResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. func (c *ProjectsRollbackCall) Do(opts ...googleapi.CallOption) (*RollbackResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, &googleapi.Error{ Code: res.StatusCode, Header: res.Header, } } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, err } ret := &RollbackResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil // { // "description": "Rolls back a transaction.", // "flatPath": "v1beta3/projects/{projectId}:rollback", // "httpMethod": "POST", // "id": "datastore.projects.rollback", // "parameterOrder": [ // "projectId" // ], // "parameters": { // "projectId": { // "description": "The ID of the project against which to make the request.", // "location": "path", // "required": true, // "type": "string" // } // }, // "path": "v1beta3/projects/{projectId}:rollback", // "request": { // "$ref": "RollbackRequest" // }, // "response": { // "$ref": "RollbackResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/datastore" // ] // } } // method id "datastore.projects.runQuery": type ProjectsRunQueryCall struct { s *Service projectId string runqueryrequest *RunQueryRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // RunQuery: Queries for entities. func (r *ProjectsService) RunQuery(projectId string, runqueryrequest *RunQueryRequest) *ProjectsRunQueryCall { c := &ProjectsRunQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.projectId = projectId c.runqueryrequest = runqueryrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. func (c *ProjectsRunQueryCall) Fields(s ...googleapi.Field) *ProjectsRunQueryCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. Any // pending HTTP request will be aborted if the provided context is // canceled. func (c *ProjectsRunQueryCall) Context(ctx context.Context) *ProjectsRunQueryCall { c.ctx_ = ctx return c } // Header returns an http.Header that can be modified by the caller to // add HTTP headers to the request. func (c *ProjectsRunQueryCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsRunQueryCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.runqueryrequest) if err != nil { return nil, err } reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta3/projects/{projectId}:runQuery") urls += "?" + c.urlParams_.Encode() req, _ := http.NewRequest("POST", urls, body) req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "projectId": c.projectId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "datastore.projects.runQuery" call. // Exactly one of *RunQueryResponse or error will be non-nil. Any // non-2xx status code is an error. Response headers are in either // *RunQueryResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was // because http.StatusNotModified was returned. func (c *ProjectsRunQueryCall) Do(opts ...googleapi.CallOption) (*RunQueryResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, &googleapi.Error{ Code: res.StatusCode, Header: res.Header, } } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, err } ret := &RunQueryResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil // { // "description": "Queries for entities.", // "flatPath": "v1beta3/projects/{projectId}:runQuery", // "httpMethod": "POST", // "id": "datastore.projects.runQuery", // "parameterOrder": [ // "projectId" // ], // "parameters": { // "projectId": { // "description": "The ID of the project against which to make the request.", // "location": "path", // "required": true, // "type": "string" // } // }, // "path": "v1beta3/projects/{projectId}:runQuery", // "request": { // "$ref": "RunQueryRequest" // }, // "response": { // "$ref": "RunQueryResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform", // "https://www.googleapis.com/auth/datastore" // ] // } }