Use JSON.ARRAPPEND to append one or more values to the end of the arrays a path selects.
Values are JSON text and each one is appended as a single element, so appending an array adds a nested array rather than merging its items. The reply is the new length of each array the path matched, with null for matches that are not arrays.
Syntax#
Arguments#
| Argument | Required | Repeatable | Description |
|---|---|---|---|
key | Yes | No | JSON document key. |
path | Yes | No | Path selecting arrays. |
value | Yes | Yes | Valid JSON value to append. |
Important points#
- Raw TCP examples pass JSON values as valid JSON text. Typed Upstash SDK helpers serialize native objects and values for you.
- Paths beginning with
$use JSONPath and can match multiple values, so many JSON commands return an array of per-match results.
Response#
The reply reports the result of the operation. Error replies have the same shape in RESP2 and RESP3 and are surfaced as exceptions by the SDKs below.
| Protocol | Reply |
|---|---|
| RESP2 | Array of integer lengths or null values, one per matched path |
| RESP3 | Array of integer lengths or null values, one per matched path |
Client libraries often decode bulk strings, maps, sets, and numeric strings into language-native values. The table describes the Redis wire reply.
Examples#
TCP examples use the TLS REDIS_URL from the Upstash console. REST examples use UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN.