KVDB Entries
Working with KVDB Entries.
About Entries
The structure of an entry and a brief description of its elements is outlined in the following table:
| Field | Type | Encrypted | Description |
|---|---|---|---|
data | binary | yes | content of the entry |
info | ServerKvdbEntryInfo | no | additional information assigned by the server e.g. author, creationDate, key and kvdbID |
privateMeta | binary | yes | additional information about the entry |
publicMeta | binary | no | additional public information about the entry, also accessible through PrivMX Bridge API |
Define Structure
KVDB's architecture does not require you to use a specific data structure inside the entry. So before working with KVDBs, define what what kind of entries you want to send.
We recommend future-proofing your entries right from the start, i.e. choosing an easily modifiable format.
It is also a good idea to include its type and version in the structure of the entries.
Here is an example entries structure that you can use in your project.
Remember that it is only an example and you should consider your app's requirements and limitations.
Sample code on this page is based on the initial assumptions and Working with KVDBs.
Creating/Updating Entry
Both Creating and Updating Entries is done with the setEntry(in:for:atVersion:withPublicMeta:withPrivateMeta:containing:) method.
Creating a new Entry is done by passing 0 (which is the default value, that can be omitted) for the version argument.
Listing Keys in KVDB
To get a list of Entry Keys inside a KVDB, use listEntriesKeys(from:basedOn:) method.
Fetching Entries
To retrieve a single Entry from a particular KVDB, use getEntry(from:for:).
Checking if an Entry exists
To check if an entry exists use the hasEntry(kvdbId:key:):
Deleting Entries
To delete a single Entry from a particular KVDB, use deleteEntry(from:for:).
We use cookies on our website. We use them to ensure proper functioning of the site and, if you agree, for purposes such as analytics, marketing, and targeting ads.
PrivMX Endpoint Swift v2.6