Skip to main content

$$jsonpointer

Apply mutations or queries over an object using JSON Pointer (defined by RFC-6901)

Usage​

{ 
"$$jsonpointer": /* Object to query */,
"op": /* GET / SET / REMOVE */,
"pointer": /* string */,
"value": /* any */
}
"$$jsonpointer(<op>,<pointer>,[value]):{input}"

Returns​

Query result

Arguments​

ArgumentTypeValuesRequired / Default ValueDescription
PrimaryobjectYesObject to query
openumGET/ SET/REMOVEYesOperation
pointerstringYesJSON Pointer to apply operation on (as defined by RFC-6901)
valueanynullValue to use (when operation is SET)

Examples​

Input

Definition

Output

{
"b": [
"c",
"d",
{
"e": "Hello"
}
]
}
"$$jsonpointer(GET,/b/2/e):$"
"Hello"
{
"pointer": "/pointer"
}
"$$jsonpointer(get,$.pointer):$"
"/pointer"
{
"b": [
"c",
"d",
{
"e": "Hello"
}
]
}
"$$jsonpointer(SET,/b,'$.b[2]'):$"
{
"b": {
"e": "Hello"
}
}
{
"b": [
"c",
"d",
{
"e": "Hello"
}
]
}
"$$jsonpointer(REMOVE,/b/2):$"
{
"b": [
"c",
"d"
]
}