         (.setRequestItems
          (utils/name-map
           (fn [reqs]
-            (reduce (fn [v [verb _ item]] (conj v (write-request verb item)))
+            (reduce (fn [v [action _ item]] (conj v (write-request action item)))
                     [] (partition 3 (flatten reqs))))
           (group-by (fn [[_ table _]] table) requests)))))))
 

       (.setAttributeUpdates nil) ; TODO
       (.setExpected         (expected-values expected))
       (.setReturnValues     (utils/enum return))))))

;;;; TODO Continue code walk-through below



;;;; API - tables

(defn list-tables "Returns a list of tables."
  [creds] (->> (db-client creds) (.listTables) (.getTableNames) (mapv keyword)))

(defn describe-table
  "Returns a map describing a table, or nil if the table doesn't exist."
  [creds table]
  (try (as-map (.describeTable (db-client creds)
                (doto (DescribeTableRequest.) (.setTableName (name table)))))
       (catch ResourceNotFoundException _ nil)))

(defn create-table
  "Creates a table with the given map of options:
    :name       - (required) table name.
