rpc Put (PutRequest) returns (PutResponse) { } message PutRequest { bytes key = 1; bytes value = 2; // Lease identifier or 0 for no lease int64 lease = 3; // Optionally return previous key value pair bool prev_kv = 4; // Optionally update using existing value bool ignore_value = 5; // Optionally update using existing lease bool ignore_lease = 6; } message PutResponse { ResponseHeader header = 1; KeyValue prev_kv = 2; }