Class Datastore

Idiomatic class for interacting with Cloud Datastore. Uses the lower-level DatastoreClient class under the hood.

In addition to the constructor options shown here, the Datastore class constructor accepts the same options accepted by DatastoreClient .

The Datastore Emulator

Make sure you have the gcloud SDK installed , then run:

$ gcloud beta emulators datastore start --no-legacy

You will see the following printed:

\[datastore\] API endpoint: http://localhost:8005 \[datastore\] If you are using a library that supports the DATASTORE\_EMULATOR\_HOST environment variable, run: \[datastore\] \[datastore\] export DATASTORE\_EMULATOR\_HOST=localhost:8005 \[datastore\] \[datastore\] Dev App Server is now running.

Set that environment variable and your localhost Datastore will automatically be used. You can also pass this address in manually with apiEndpoint .

Additionally, DATASTORE_PROJECT_ID is recognized. If you have this set, you don't need to provide a projectId .

See Cloud Datastore Concepts Overview

Inheritance

DatastoreRequest > Datastore

Package

@google-cloud/datastore

Constructors

(constructor)(options)

  constructor 
 ( 
 options 
 ?: 
  
 DatastoreOptions 
 ); 
 

Constructs a new instance of the Datastore class

Parameter
Name Description
options DatastoreOptions

Properties

auth

  auth 
 : 
  
 GoogleAuth 
 ; 
 
Property Value
Type Description
GoogleAuth

baseUrl_

  baseUrl_ 
 ?: 
  
 string 
 ; 
 
Property Value
Type Description
string

clients_

  clients_ 
 : 
  
 Map<string 
 , 
  
 ClientStub 
> ; 
 
Property Value
Type Description
Map <string, ClientStub >

customEndpoint_

  customEndpoint_ 
 ?: 
  
 boolean 
 ; 
 
Property Value
Type Description
boolean

DatastoreRequest

  DatastoreRequest 
 : 
  
 typeof 
  
 DatastoreRequest 
 ; 
 

DatastoreRequest class.

Datastore.DatastoreRequest DatastoreRequest {constructor}

Property Value
Type Description
typeof DatastoreRequest

defaultBaseUrl_

  defaultBaseUrl_ 
 : 
  
 string 
 ; 
 
Property Value
Type Description
string

KEY

  KEY 
 : 
  
 typeof 
  
 entity 
 . 
 KEY_SYMBOL 
 ; 
 
Property Value
Type Description
typeof entity.KEY_SYMBOL

KEY

  static 
  
 KEY 
 : 
  
 typeof 
  
 entity 
 . 
 KEY_SYMBOL 
 ; 
 

Access the Key from an Entity object.

Datastore#KEY {symbol}

Property Value
Type Description
typeof entity.KEY_SYMBOL

MORE_RESULTS_AFTER_CURSOR

  MORE_RESULTS_AFTER_CURSOR 
 : 
  
 string 
 ; 
 
Property Value
Type Description
string

MORE_RESULTS_AFTER_CURSOR

  static 
  
 MORE_RESULTS_AFTER_CURSOR 
 : 
  
 string 
 ; 
 

This is one of three values which may be returned from , , and as info.moreResults .

There *may* be more results after the specified end cursor.

{string}

Property Value
Type Description
string

MORE_RESULTS_AFTER_LIMIT

  MORE_RESULTS_AFTER_LIMIT 
 : 
  
 string 
 ; 
 
Property Value
Type Description
string

MORE_RESULTS_AFTER_LIMIT

  static 
  
 MORE_RESULTS_AFTER_LIMIT 
 : 
  
 string 
 ; 
 

This is one of three values which may be returned from , , and as info.moreResults .

There *may* be more results after the specified limit.

{string}

Property Value
Type Description
string

namespace

  namespace 
 ?: 
  
 string 
 ; 
 
Property Value
Type Description
string

NO_MORE_RESULTS

  NO_MORE_RESULTS 
 : 
  
 string 
 ; 
 
Property Value
Type Description
string

NO_MORE_RESULTS

  static 
  
 NO_MORE_RESULTS 
 : 
  
 string 
 ; 
 

This is one of three values which may be returned from , , and as info.moreResults .

There are no more results left to query for.

{string}

Property Value
Type Description
string

options

  options 
 : 
  
 DatastoreOptions 
 ; 
 
Property Value
Type Description
DatastoreOptions

port_

  port_ 
 ?: 
  
 number 
 ; 
 
Property Value
Type Description
number

Query

  Query 
 : 
  
 typeof 
  
 Query 
 ; 
 

Query class.

Datastore.Query Query {constructor}

Property Value
Type Description
typeof Query

Transaction

  Transaction 
 : 
  
 typeof 
  
 Transaction 
 ; 
 

Transaction class.

Datastore.Transaction Transaction {constructor}

Property Value
Type Description
typeof Transaction

Methods

createQuery(kind)

  createQuery 
 ( 
 kind 
 ?: 
  
 string 
 ) 
 : 
  
 Query 
 ; 
 
Parameter
Name Description
kind string
Returns
Type Description
Query

createQuery(kind)

  createQuery 
 ( 
 kind 
 ?: 
  
 string 
 []) 
 : 
  
 Query 
 ; 
 
Parameter
Name Description
kind string[]
Returns
Type Description
Query

createQuery(namespace, kind)

  createQuery 
 ( 
 namespace 
 : 
  
 string 
 , 
  
 kind 
 : 
  
 string 
 ) 
 : 
  
 Query 
 ; 
 
Parameters
Name Description
namespace string
kind string
Returns
Type Description
Query

createQuery(namespace, kind)

  createQuery 
 ( 
 namespace 
 : 
  
 string 
 , 
  
 kind 
 : 
  
 string 
 []) 
 : 
  
 Query 
 ; 
 
Parameters
Name Description
namespace string
kind string[]
Returns
Type Description
Query

determineBaseUrl_(customApiEndpoint)

  determineBaseUrl_ 
 ( 
 customApiEndpoint 
 ?: 
  
 string 
 ) 
 : 
  
 void 
 ; 
 

Determine the appropriate endpoint to use for API requests. If not explicitly defined, check for the "DATASTORE_EMULATOR_HOST" environment variable, used to connect to a local Datastore server.

Parameter
Name Description
customApiEndpoint string

Custom API endpoint.

Returns
Type Description
void

double(value)

  double 
 ( 
 value 
 : 
  
 number 
 ) 
 : 
  
 entity 
 . 
 Double 
 ; 
 
Parameter
Name Description
value number
Returns
Type Description
entity.Double

double(value)

  static 
  
 double 
 ( 
 value 
 : 
  
 number 
 ) 
 : 
  
 entity 
 . 
 Double 
 ; 
 

Helper function to get a Datastore Double object.

Parameter
Name Description
value number

The double value.

Returns
Type Description
entity.Double

{object}

export(config)

  export 
 ( 
 config 
 : 
  
 ExportEntitiesConfig 
 ) 
 : 
  
 Promise<LongRunningResponse> 
 ; 
 
Parameter
Name Description
config ExportEntitiesConfig
Returns
Type Description
Promise < LongRunningResponse >

export(config, callback)

  export 
 ( 
 config 
 : 
  
 ExportEntitiesConfig 
 , 
  
 callback 
 : 
  
 LongRunningCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
config ExportEntitiesConfig
callback LongRunningCallback
Returns
Type Description
void

geoPoint(coordinates)

  geoPoint 
 ( 
 coordinates 
 : 
  
 entity 
 . 
 Coordinates 
 ) 
 : 
  
 entity 
 . 
 GeoPoint 
 ; 
 
Parameter
Name Description
coordinates entity.Coordinates
Returns
Type Description
entity.GeoPoint

geoPoint(coordinates)

  static 
  
 geoPoint 
 ( 
 coordinates 
 : 
  
 entity 
 . 
 Coordinates 
 ) 
 : 
  
 entity 
 . 
 GeoPoint 
 ; 
 

Helper function to get a Datastore Geo Point object.

Parameter
Name Description
coordinates entity.Coordinates

Coordinate value.

Returns
Type Description
entity.GeoPoint

{object}

getIndexes(options)

  getIndexes 
 ( 
 options 
 ?: 
  
 GetIndexesOptions 
 ) 
 : 
  
 Promise<GetIndexesResponse> 
 ; 
 
Parameter
Name Description
options GetIndexesOptions
Returns
Type Description
Promise < GetIndexesResponse >

getIndexes(options, callback)

  getIndexes 
 ( 
 options 
 : 
  
 GetIndexesOptions 
 , 
  
 callback 
 : 
  
 GetIndexesCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
options GetIndexesOptions
callback GetIndexesCallback
Returns
Type Description
void

getIndexes(callback)

  getIndexes 
 ( 
 callback 
 : 
  
 GetIndexesCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameter
Name Description
callback GetIndexesCallback
Returns
Type Description
void

getIndexesStream(options)

  getIndexesStream 
 ( 
 options 
 ?: 
  
 GetIndexesOptions 
 ) 
 : 
  
 NodeJS 
 . 
 ReadableStream 
 ; 
 

Get all of the indexes in this project as a readable object stream.

Parameter
Name Description
options GetIndexesOptions

Configuration object. See for a complete list of options.

Returns
Type Description
NodeJS.ReadableStream

{ReadableStream

getProjectId()

  getProjectId 
 () 
 : 
  
 Promise<string> 
 ; 
 
Returns
Type Description
Promise <string>

import(config)

  import 
 ( 
 config 
 : 
  
 ImportEntitiesConfig 
 ) 
 : 
  
 Promise<LongRunningResponse> 
 ; 
 
Parameter
Name Description
config ImportEntitiesConfig
Returns
Type Description
Promise < LongRunningResponse >

import(config, callback)

  import 
 ( 
 config 
 : 
  
 ImportEntitiesConfig 
 , 
  
 callback 
 : 
  
 LongRunningCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
config ImportEntitiesConfig
callback LongRunningCallback
Returns
Type Description
void

index(id)

  index 
 ( 
 id 
 : 
  
 string 
 ) 
 : 
  
 Index 
 ; 
 

Get a reference to an Index.

Parameter
Name Description
id string

The index name or id.

Returns
Type Description
Index

{Index}

insert(entities)

  insert 
 ( 
 entities 
 : 
  
 Entities 
 ) 
 : 
  
 Promise<InsertResponse> 
 ; 
 
Parameter
Name Description
entities Entities
Returns
Type Description
Promise < InsertResponse >

insert(entities, callback)

  insert 
 ( 
 entities 
 : 
  
 Entities 
 , 
  
 callback 
 : 
  
 InsertCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
entities Entities
callback InsertCallback
Returns
Type Description
void

int(value)

  int 
 ( 
 value 
 : 
  
 number 
  
 | 
  
 string 
 ) 
 : 
  
 entity 
 . 
 Int 
 ; 
 
Parameter
Name Description
value number | string
Returns
Type Description
entity.Int

int(value)

  static 
  
 int 
 ( 
 value 
 : 
  
 number 
  
 | 
  
 string 
 ) 
 : 
  
 entity 
 . 
 Int 
 ; 
 

Helper function to get a Datastore Integer object.

This is also useful when using an ID outside the bounds of a JavaScript Number object.

Parameter
Name Description
value number | string

The integer value.

Returns
Type Description
entity.Int

{object}

isDouble(value)

  isDouble 
 ( 
 value 
 ?: 
  
 {}) 
 : 
  
 boolean 
 ; 
 
Parameter
Name Description
value {}
Returns
Type Description
boolean

isDouble(value)

  static 
  
 isDouble 
 ( 
 value 
 ?: 
  
 {}) 
 : 
  
 boolean 
 ; 
 

Helper function to check if something is a Datastore Double object.

Parameter
Name Description
value {}
Returns
Type Description
boolean

{boolean}

isGeoPoint(value)

  isGeoPoint 
 ( 
 value 
 ?: 
  
 {}) 
 : 
  
 boolean 
 ; 
 
Parameter
Name Description
value {}
Returns
Type Description
boolean

isGeoPoint(value)

  static 
  
 isGeoPoint 
 ( 
 value 
 ?: 
  
 {}) 
 : 
  
 boolean 
 ; 
 

Helper function to check if something is a Datastore Geo Point object.

Parameter
Name Description
value {}
Returns
Type Description
boolean

{boolean}

isInt(value)

  isInt 
 ( 
 value 
 ?: 
  
 {}) 
 : 
  
 boolean 
 ; 
 
Parameter
Name Description
value {}
Returns
Type Description
boolean

isInt(value)

  static 
  
 isInt 
 ( 
 value 
 ?: 
  
 {}) 
 : 
  
 boolean 
 ; 
 

Helper function to check if something is a Datastore Integer object.

Parameter
Name Description
value {}
Returns
Type Description
boolean

{boolean}

isKey(value)

  isKey 
 ( 
 value 
 ?: 
  
 {}) 
 : 
  
 boolean 
 ; 
 
Parameter
Name Description
value {}
Returns
Type Description
boolean

isKey(value)

  static 
  
 isKey 
 ( 
 value 
 ?: 
  
 {}) 
 : 
  
 boolean 
 ; 
 

Helper function to check if something is a Datastore Key object.

Parameter
Name Description
value {}
Returns
Type Description
boolean

{boolean}

key(options)

  key 
 ( 
 options 
 : 
  
 entity 
 . 
 KeyOptions 
 ) 
 : 
  
 entity 
 . 
 Key 
 ; 
 
Parameter
Name Description
options KeyOptions
Returns
Type Description
entity.Key

key(path)

  key 
 ( 
 path 
 : 
  
 PathType 
 []) 
 : 
  
 entity 
 . 
 Key 
 ; 
 
Parameter
Name Description
path PathType []
Returns
Type Description
entity.Key

key(path)

  key 
 ( 
 path 
 : 
  
 string 
 ) 
 : 
  
 entity 
 . 
 Key 
 ; 
 
Parameter
Name Description
path string
Returns
Type Description
entity.Key

keyFromLegacyUrlsafe(key)

  keyFromLegacyUrlsafe 
 ( 
 key 
 : 
  
 string 
 ) 
 : 
  
 entity 
 . 
 Key 
 ; 
 

Helper to convert URL safe key string to entity key object

This is intended to work with the "legacy" representation of a datastore "Key" used within Google App Engine (a so-called "Reference").

Parameter
Name Description
key string

Entity key object.

Returns
Type Description
entity.Key

{string} Created urlsafe key.

keyToLegacyUrlSafe(key, locationPrefix)

  keyToLegacyUrlSafe 
 ( 
 key 
 : 
  
 entity 
 . 
 Key 
 , 
  
 locationPrefix 
 ?: 
  
 string 
 ) 
 : 
  
 Promise<string> 
 ; 
 
Parameters
Name Description
key entity.Key
locationPrefix string
Returns
Type Description
Promise <string>

keyToLegacyUrlSafe(key, callback)

  keyToLegacyUrlSafe 
 ( 
 key 
 : 
  
 entity 
 . 
 Key 
 , 
  
 callback 
 : 
  
 KeyToLegacyUrlSafeCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
key entity.Key
callback KeyToLegacyUrlSafeCallback
Returns
Type Description
void

keyToLegacyUrlSafe(key, locationPrefix, callback)

  keyToLegacyUrlSafe 
 ( 
 key 
 : 
  
 entity 
 . 
 Key 
 , 
  
 locationPrefix 
 : 
  
 string 
 , 
  
 callback 
 : 
  
 KeyToLegacyUrlSafeCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
key entity.Key
locationPrefix string
callback KeyToLegacyUrlSafeCallback
Returns
Type Description
void

save(entities, gaxOptions)

  save 
 ( 
 entities 
 : 
  
 Entities 
 , 
  
 gaxOptions 
 ?: 
  
 CallOptions 
 ) 
 : 
  
 Promise<SaveResponse> 
 ; 
 
Parameters
Name Description
entities Entities
gaxOptions CallOptions
Returns
Type Description
Promise < SaveResponse >

save(entities, gaxOptions, callback)

  save 
 ( 
 entities 
 : 
  
 Entities 
 , 
  
 gaxOptions 
 : 
  
 CallOptions 
 , 
  
 callback 
 : 
  
 SaveCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
entities Entities
gaxOptions CallOptions
callback SaveCallback
Returns
Type Description
void

save(entities, callback)

  save 
 ( 
 entities 
 : 
  
 Entities 
 , 
  
 callback 
 : 
  
 SaveCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
entities Entities
callback SaveCallback
Returns
Type Description
void

transaction(options)

  transaction 
 ( 
 options 
 ?: 
  
 TransactionOptions 
 ) 
 : 
  
 Transaction 
 ; 
 

Create a new Transaction object.

Parameter
Name Description
options TransactionOptions

Configuration object.

Returns
Type Description
Transaction

{Transaction}

update(entities)

  update 
 ( 
 entities 
 : 
  
 Entities 
 ) 
 : 
  
 Promise<UpdateResponse> 
 ; 
 
Parameter
Name Description
entities Entities
Returns
Type Description
Promise < UpdateResponse >

update(entities, callback)

  update 
 ( 
 entities 
 : 
  
 Entities 
 , 
  
 callback 
 : 
  
 UpdateCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
entities Entities
callback UpdateCallback
Returns
Type Description
void

upsert(entities)

  upsert 
 ( 
 entities 
 : 
  
 Entities 
 ) 
 : 
  
 Promise<UpsertResponse> 
 ; 
 
Parameter
Name Description
entities Entities
Returns
Type Description
Promise < UpsertResponse >

upsert(entities, callback)

  upsert 
 ( 
 entities 
 : 
  
 Entities 
 , 
  
 callback 
 : 
  
 UpsertCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
entities Entities
callback UpsertCallback
Returns
Type Description
void
Design a Mobile Site
View Site in Mobile | Classic
Share by: