+
+ Verb |
+ Operation |
+ Key |
+ Value |
+ Flags |
+ Index |
+ Session |
+
+
+ set |
+ Sets the `Key` to the given `Value`. |
+ X |
+ X |
+ O |
+ |
+ |
+
+
+ cas |
+ Sets the `Key` to the given `Value` with check-and-set semantics. The `Key` will only be set if its current modify index matches the supplied `Index`. |
+ X |
+ X |
+ O |
+ X |
+ |
+
+
+ lock |
+ Locks the `Key` with the given `Session`. The `Key` will only obtain the lock if the `Session` is valid, and no other session has it locked. |
+ X |
+ X |
+ O |
+ |
+ X |
+
+
+ unlock |
+ Unlocks the `Key` with the given `Session`. The `Key` will only release the lock if the `Session` is valid and currently has it locked.. |
+ X |
+ X |
+ O |
+ |
+ X |
+
+
+ get |
+ Gets the `Key` during the transaction. This fails the transaction if the `Key` doesn't exist. |
+ X |
+ |
+ |
+ |
+ |
+
+
+ check-index |
+ Fails the transaction if `Key` does not have a modify index equal to `Index`. |
+ X |
+ |
+ |
+ X |
+ |
+
+
+ check-session |
+ Fails the transaction if `Key` is not currently locked by `Session`. |
+ X |
+ |
+ |
+ |
+ X |
+
+
+ delete |
+ Deletes the `Key`. |
+ X |
+ |
+ |
+ |
+ |
+
+
+ delete-tree |
+ Deletes all keys with a prefix of`Key`. |
+ X |
+ |
+ |
+ |
+ |
+
+
+ delete-cas |
+ Deletes the `Key` with check-and-set semantics. The `Key` will only be deleted if its current modify index matches the supplied `Index`. |
+ X |
+ |
+ |
+ X |
+ |
+
+
+
+If the transaction can be processed, a status code of 200 will be returned if it
+was successfully applied, or a status code of 409 will be returned if it was rolled
+back. If either of these status codes are returned, the response will look like this:
+
+```javascript
+{
+ "Results": [
+ {
+ "KV": {
+ "LockIndex":