ArrayValue

An array of ValueNodes. Elements are not guaranteed to be of the same type, so for example one of the values may have constantValue set, while another may have valueReference set.

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

object (ValueNode)

The elements of the array.

ValueNode

Represents a single value or object.

JSON representation
{

  // Union field kind can be only one of the following:
  "constantValue": value,
  "integerValue": string,
  "bytesValue": string,
  "arrayValue": {
    object (ArrayValue)
  },
  "dictionaryValue": {
    object (DictionaryValue)
  },
  "functionDefinitionValue": {
    object (FunctionDefinition)
  },
  "functionInvocationValue": {
    object (FunctionInvocation)
  },
  "argumentReference": string,
  "valueReference": string
  // End of list of possible types for union field kind.
}
Fields
Union field kind. One of these must be set; it is an error to have none set. kind can be only one of the following:
constantValue

value (Value format)

A constant value. This is allowed to be of arbitrary complexity (i.e., may contain Structs and ListValues).

integerValue

string (int64 format)

An integer value.

bytesValue

string (bytes format)

An opaque series of bytes.

A base64-encoded string.

arrayValue

object (ArrayValue)

An array of values.

dictionaryValue

object (DictionaryValue)

A dictionary of values.

functionDefinitionValue

object (FunctionDefinition)

A function object.

functionInvocationValue

object (FunctionInvocation)

A function invocation.

argumentReference

string

A reference to an argument of some enclosing FunctionDefinition. Only valid inside the subgraph rooted at the "body" field of a FunctionDefinition.

valueReference

string

A reference to a named ValueNode, defined in the enclosing Expression's "values" field.

DictionaryValue

An unordered string-keyed dictionary of ValueNodes. Keys are unique and may contain an empty string. Values are not guaranteed to be of the same type, so for example one of the values may have constantValue set, while another may have valueReference set.

JSON representation
{
  "values": {
    string: {
      object (ValueNode)
    },
    ...
  }
}
Fields
values

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

The elements of the dictionary.

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

FunctionDefinition

A custom function definition.

JSON representation
{
  "argumentNames": [
    string
  ],
  "body": string
}
Fields
argumentNames[]

string

The names of the arguments accepted by this function. These can be referred to by the "argumentReference" field of ValueNodes within the body.

body

string

The function body itself, as a reference to one of the ValueNodes in the enclosing Expression.

FunctionInvocation

An invocation of a function.

JSON representation
{
  "arguments": {
    string: {
      object (ValueNode)
    },
    ...
  },

  // Union field function can be only one of the following:
  "functionName": string,
  "functionReference": string
  // End of list of possible types for union field function.
}
Fields
arguments

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

Arguments to this invocation. Order is insignificant.

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

Union field function. Both pre-defined and user-defined functions may be invoked. function can be only one of the following:
functionName

string

A named function from the Earth Engine API.

functionReference

string

A reference to a function-valued value. This is usually a direct reference to a FunctionDefinition value, but need not be: it could be a reference to a FunctionInvocation whose result is a function, or to a function-valued argument value.