@@ -344,6 +344,18 @@ openIndex = openOrCloseIndexes OpenIndex
344closeIndex :: MonadBH m => IndexName -> m Reply
344closeIndex :: MonadBH m => IndexName -> m Reply
345closeIndex = openOrCloseIndexes CloseIndex
345closeIndex = openOrCloseIndexes CloseIndex
348+-- | 'updateIndexAliases' updates the server's index alias
349+-- table. Operations are atomic. Explained in further detail at
350+-- <https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-aliases.html>
352+-- >>> let aliasName = IndexName "twitter-alias"
353+-- >>> let iAlias = IndexAlias testIndex (IndexAliasName aliasName)
354+-- >>> let aliasCreate = IndexAliasCreate Nothing Nothing
355+-- >>> respIsTwoHunna <$> runBH' (updateIndexAliases (AddAlias iAlias aliasCreate :| []))
357+-- >> respIsTwoHunna <$> runBH' (indexExists aliasName)
347updateIndexAliases :: MonadBH m => NE.NonEmpty IndexAliasAction -> m Reply
359updateIndexAliases :: MonadBH m => NE.NonEmpty IndexAliasAction -> m Reply
348updateIndexAliases actions = bindM2 post url (return body)
360updateIndexAliases actions = bindM2 post url (return body)
349 where url = joinPath ["_aliases"]
361 where url = joinPath ["_aliases"]