---
# @generated by sylphx-gen 0.1.0 from contracts@e145cc7cf1bc9605f2b27439e5e17ed76a1a2fd7e7021906a013f7565e4a0cd5. Do not edit.
title: "KV"
description: "The KV collection — served at `https://api.data.sylphx.com`."
type: reference
product: kv
summary: "The `kv` collection of Sylphx Data."
updated: 2026-09-28
order: 900
---

The `kv` collection of Sylphx Data — served at `https://api.data.sylphx.com`.

**Service** Sylphx Data · **served at `https://api.data.sylphx.com`**


## Methods

Every method of the collection, in the registry's order, with the scope it
needs. The full request, response and examples are one link away.

| Method | Call | What it does |
| --- | --- | --- |
| `PUT` | [`put`](/docs/api/kv#put) | Writes a value. Without `ttl_seconds` the namespace default applies; zero means no expiry. |
| `GET` | [`get`](/docs/api/kv#get) | Reads a value. |
| `GET` | [`list`](/docs/api/kv#list) | Lists a namespace's values in key order. |
| `DELETE` | [`delete`](/docs/api/kv#delete) | Deletes a value. |
| `POST` | [`increment`](/docs/api/kv#increment) | Adds `delta` (default 1) to an integer value, creating it at zero. |
| `POST` | [`get_many`](/docs/api/kv#get-many) | Reads up to 1000 keys at once (MGET). Answers one entry per key, in order; an absent or expired key keeps its key and has no `value`. |
| `POST` | [`hash_set`](/docs/api/kv#hash-set) | Sets fields of a hash (HSET), creating it. |
| `POST` | [`hash_get`](/docs/api/kv#hash-get) | Reads one field of a hash (HGET); an absent field has no `value`. |
| `POST` | [`hash_get_all`](/docs/api/kv#hash-get-all) | Reads every field of a hash (HGETALL). |
| `POST` | [`hash_get_many`](/docs/api/kv#hash-get-many) | Reads several fields of a hash (HMGET), one per field, in order; an absent field has no `value`. |
| `POST` | [`list_push`](/docs/api/kv#list-push) | Pushes values onto the head of a list (LPUSH), creating it. |
| `POST` | [`list_range`](/docs/api/kv#list-range) | Reads a range of a list (LRANGE); negative indexes count from the end. |
| `POST` | [`list_pop`](/docs/api/kv#list-pop) | Pops values from the head of a list (LPOP); an emptied list is removed. |
| `POST` | [`list_length`](/docs/api/kv#list-length) | Reads the length of a list (LLEN); an absent key has length zero. |
| `POST` | [`zset_add`](/docs/api/kv#zset-add) | Adds members to a sorted set or updates their scores (ZADD), creating it. |
| `POST` | [`zset_range`](/docs/api/kv#zset-range) | Reads a range of a sorted set by rank, lowest score first (ZRANGE); negative indexes count from the end. |
| `POST` | [`zset_score`](/docs/api/kv#zset-score) | Reads a member's score (ZSCORE); an absent member has no `score`. |
| `POST` | [`zset_length`](/docs/api/kv#zset-length) | Reads the size of a sorted set (ZCARD); an absent key has size zero. |
| `POST` | [`scan`](/docs/api/kv#scan) | Walks a namespace's keys that match a glob (SCAN). Call again with the returned `cursor` until it is empty. |
| `POST` | [`expire`](/docs/api/kv#expire) | Sets a key's time to live (EXPIRE) without rewriting its value; zero makes it persistent. |

## put

Writes a value. Without `ttl_seconds` the namespace default applies; zero means no expiry.

`PUT https://api.data.sylphx.com/v1/kv/namespace-id/key` · scope `data:write` · effect `write` · [Request, response and examples](/docs/api/kv/put)

## get

Reads a value.

`GET https://api.data.sylphx.com/v1/kv/namespace-id/key` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/get)

## list

Lists a namespace's values in key order.

`GET https://api.data.sylphx.com/v1/kv/namespace-id` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/list)

## delete

Deletes a value.

`DELETE https://api.data.sylphx.com/v1/kv/namespace-id/key` · scope `data:write` · effect `destructive` · [Request, response and examples](/docs/api/kv/delete)

## increment

Adds `delta` (default 1) to an integer value, creating it at zero.

`POST https://api.data.sylphx.com/v1/kv-increments` · scope `data:write` · effect `write` · [Request, response and examples](/docs/api/kv/increment)

## get_many

Reads up to 1000 keys at once (MGET). Answers one entry per key, in order; an absent or expired key keeps its key and has no `value`.

`POST https://api.data.sylphx.com/v1/kv-mget` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/get_many)

## hash_set

Sets fields of a hash (HSET), creating it.

`POST https://api.data.sylphx.com/v1/kv-hashes` · scope `data:write` · effect `write` · [Request, response and examples](/docs/api/kv/hash_set)

## hash_get

Reads one field of a hash (HGET); an absent field has no `value`.

`POST https://api.data.sylphx.com/v1/kv-hash-gets` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/hash_get)

## hash_get_all

Reads every field of a hash (HGETALL).

`POST https://api.data.sylphx.com/v1/kv-hash-getall` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/hash_get_all)

## hash_get_many

Reads several fields of a hash (HMGET), one per field, in order; an absent field has no `value`.

`POST https://api.data.sylphx.com/v1/kv-hash-mget` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/hash_get_many)

## list_push

Pushes values onto the head of a list (LPUSH), creating it.

`POST https://api.data.sylphx.com/v1/kv-list-pushes` · scope `data:write` · effect `write` · [Request, response and examples](/docs/api/kv/list_push)

## list_range

Reads a range of a list (LRANGE); negative indexes count from the end.

`POST https://api.data.sylphx.com/v1/kv-list-ranges` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/list_range)

## list_pop

Pops values from the head of a list (LPOP); an emptied list is removed.

`POST https://api.data.sylphx.com/v1/kv-list-pops` · scope `data:write` · effect `write` · [Request, response and examples](/docs/api/kv/list_pop)

## list_length

Reads the length of a list (LLEN); an absent key has length zero.

`POST https://api.data.sylphx.com/v1/kv-list-lens` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/list_length)

## zset_add

Adds members to a sorted set or updates their scores (ZADD), creating it.

`POST https://api.data.sylphx.com/v1/kv-zsets` · scope `data:write` · effect `write` · [Request, response and examples](/docs/api/kv/zset_add)

## zset_range

Reads a range of a sorted set by rank, lowest score first (ZRANGE); negative indexes count from the end.

`POST https://api.data.sylphx.com/v1/kv-zset-ranges` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/zset_range)

## zset_score

Reads a member's score (ZSCORE); an absent member has no `score`.

`POST https://api.data.sylphx.com/v1/kv-zset-scores` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/zset_score)

## zset_length

Reads the size of a sorted set (ZCARD); an absent key has size zero.

`POST https://api.data.sylphx.com/v1/kv-zset-lens` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/zset_length)

## scan

Walks a namespace's keys that match a glob (SCAN). Call again with the returned `cursor` until it is empty.

`POST https://api.data.sylphx.com/v1/kv-scans` · scope `data:read` · effect `read` · [Request, response and examples](/docs/api/kv/scan)

## expire

Sets a key's time to live (EXPIRE) without rewriting its value; zero makes it persistent.

`POST https://api.data.sylphx.com/v1/kv-expiries` · scope `data:write` · effect `write` · [Request, response and examples](/docs/api/kv/expire)
