OpenAPI Specification
View the complete OpenAPI specification for this REST API.
Overview
The Key-Value Store REST API enables you to manage and access your lists and sets programmatically from any environment — your backend services, CI/CD pipelines, scripts, or anywhere you make HTTP requests.
Use the REST API to:
- Pre-populate lists with wallet addresses, token contracts, or other data before your Stream starts processing
- Update your Key-Value Store data on demand from outside of a Streams filter
- Build management tools and dashboards around your Key-Value Store data
For managing Key-Value Store data from within a Streams filter (e.g., during real-time block processing), use the qnLib.* methods documented in the Streams Filters documentation.
Authentication
To access the Key-Value Store REST API, create an API key and include it as an x-api-key header with every request.
API Base URL: https://api.quicknode.com/
Example request:
curl -X GET \
"https://api.quicknode.com/kv/rest/v1/lists" \
-H "accept: application/json" \
-H "x-api-key: YOUR_API_KEY"
Available Endpoints
Lists
Lists store collections of string items under a single key. Use them for membership checks against streaming data (e.g., checking if a wallet address is in your watchlist).
| Method | Endpoint | Description |
|---|---|---|
| POST | /kv/rest/v1/lists | Create a new list |
| GET | /kv/rest/v1/lists | Retrieve all list keys |
| GET | /kv/rest/v1/lists/{key} | Retrieve items from a specific list |
| PATCH | /kv/rest/v1/lists/{key} | Add/remove items from a list |
| POST | /kv/rest/v1/lists/{key}/items | Add a single item to a list |
| GET | /kv/rest/v1/lists/{key}/contains/{item} | Check if a list contains an item |
| DELETE | /kv/rest/v1/lists/{key}/items/{item} | Remove an item from a list |
| DELETE | /kv/rest/v1/lists/{key} | Delete a list |
Sets
Sets store individual key-value pairs. Use them for tracking data points that change over time (e.g., last processed block, running totals).
| Method | Endpoint | Description |
|---|---|---|
| POST | /kv/rest/v1/sets | Create a new key-value set |
| GET | /kv/rest/v1/sets | Retrieve all set keys |
| GET | /kv/rest/v1/sets/{key} | Retrieve a set value by key |
| POST | /kv/rest/v1/sets/bulk | Bulk create/delete sets |
| DELETE | /kv/rest/v1/sets/{key} | Delete a set |
Key-Value Store items are case-sensitive. This is particularly important when working with blockchain addresses, as they must be entered exactly as they appear onchain.