State Management
Use DaprClient.state to access configured Dapr state store components from JavaScript or TypeScript. The client supports single-key reads and deletes, bulk saves, bulk reads and deletes, optimistic concurrency with ETags, multi-key transactions, and state queries over HTTP or gRPC.
These guides target @dapr/dapr 3.19.0 or later. State management is part of this package; there is no separate state management package or client registration.
| Guide | What you will learn |
|---|---|
| How to: Manage state | Configure a store, save and read values, use ETags, perform bulk operations, and execute transactions. |
| State client usage | Configure the client, understand response shapes, metadata, serialization, error handling, and protocol differences. |
| How to: Query state | Filter, sort, and paginate state using the alpha query API. |
Not every state store supports ETags, transactions, TTL, or queries. Check the supported state stores and your component’s reference before depending on these features. Bulk save and bulk delete are not substitutes for an atomic transaction.
This section covers application state, not the actor state manager. The JavaScript SDK does not provide the .NET SDK’s source-generated, store-scoped state interfaces; pass the component name to each client.state operation.
Related links
- State management overview
- State management API reference
- JavaScript state client interface
- HTTP implementation and gRPC implementation