class Key

Build a Datastore Key object.

Examples

Example 1

//-
// Create an incomplete key with a kind value of `Company`.
//-
const {Datastore} = require('@google-cloud/datastore');
const datastore = new Datastore();
const key = datastore.key('Company');

Example 2

//-
// Create a complete key with a kind value of `Company` and id`123`.
//-
const {Datastore} = require('@google-cloud/datastore');
const datastore = new Datastore();
const key = datastore.key(['Company', 123]);

Example 3

//-
// If the ID integer is outside the bounds of a JavaScript Number
// object, create an Int.
//-
const {Datastore} = require('@google-cloud/datastore');
const datastore = new Datastore();
const key = datastore.key([
  'Company',
  datastore.int('100000000000001234')
]);

Example 4

const {Datastore} = require('@google-cloud/datastore');
const datastore = new Datastore();
// Create a complete key with a kind value of `Company` and name `Google`.
// Note: `id` is used for numeric identifiers and `name` is used otherwise.
const key = datastore.key(['Company', 'Google']);

Example 5

//-
// Create a complete key from a provided namespace and path.
//-
const {Datastore} = require('@google-cloud/datastore');
const datastore = new Datastore();
const key = datastore.key({
  namespace: 'My-NS',
  path: ['Company', 123]
});

Serialize the key for later re-use.

const {Datastore} = require('@google-cloud/datastore');
const datastore = new Datastore();
const key = datastore.key({
  namespace: 'My-NS',
  path: ['Company', 123]
});
// Later...
const key = datastore.key(key.serialized);

Constructors

new
Key(options: KeyOptions)

Properties

optional
id: string
kind: string
optional
name: string
optional
namespace: string
optional
parent: Key
path: Array<string | number>
readonly
serialized: { namespace: string | undefined; path: (string | Int)[]; }

Access the serialized property for a library-compatible way to re-use a key.