Value

A message that can hold any of the supported value types.

JSON representation
{

  // Union field value_type can be only one of the following:
  "nullValue": null,
  "booleanValue": boolean,
  "integerValue": string,
  "doubleValue": number,
  "timestampValue": string,
  "stringValue": string,
  "bytesValue": string,
  "referenceValue": string,
  "geoPointValue": {
    object(LatLng)
  },
  "arrayValue": {
    object(ArrayValue)
  },
  "mapValue": {
    object(MapValue)
  }
  // End of list of possible types for union field value_type.
}
Fields
Union field value_type. Must have a value set. value_type can be only one of the following:
nullValue

null

A null value.

booleanValue

boolean

A boolean value.

integerValue

string (int64 format)

An integer value.

doubleValue

number

A double value.

timestampValue

string (Timestamp format)

A timestamp value.

Precise only to microseconds. When stored, any additional precision is rounded down.

A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".

stringValue

string

A string value.

The string, represented as UTF-8, must not exceed 1 MiB - 89 bytes. Only the first 1,500 bytes of the UTF-8 representation are considered by queries.

bytesValue

string (bytes format)

A bytes value.

Must not exceed 1 MiB - 89 bytes. Only the first 1,500 bytes are considered by queries.

A base64-encoded string.

referenceValue

string

A reference to a document. For example: projects/{projectId}/databases/{databaseId}/documents/{document_path}.

geoPointValue

object(LatLng)

A geo point value representing a point on the surface of Earth.

arrayValue

object(ArrayValue)

An array value.

Cannot directly contain another array value, though can contain an map which contains another array.

mapValue

object(MapValue)

A map value.

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 standard. Values must be within normalized ranges.

JSON representation
{
  "latitude": number,
  "longitude": number
}
Fields
latitude

number

The latitude in degrees. It must be in the range [-90.0, +90.0].

longitude

number

The longitude in degrees. It must be in the range [-180.0, +180.0].

ArrayValue

An array value.

JSON representation
{
  "values": [
    {
      object(Value)
    }
  ]
}
Fields
values[]

object(Value)

Values in the array.

MapValue

A map value.

JSON representation
{
  "fields": {
    string: {
      object(Value)
    },
    ...
  }
}
Fields
fields

map (key: string, value: object(Value))

The map's fields.

The map keys represent field names. Field names matching the regular expression __.*__ are reserved. Reserved field names are forbidden except in certain documented contexts. The map keys, represented as UTF-8, must not exceed 1,500 bytes and cannot be empty.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Was this page helpful? Let us know how we did:

Send feedback about...

Cloud Firestore