Batch indexing operations on one index

Adds, updates, or deletes records in one index with a single API request.

Batching index updates reduces latency and increases data integrity.

  • Actions are applied in the order they’re specified.
  • Actions are equivalent to the individual API requests of the same name.

This operation is subject to indexing rate limits.

Usage

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import algoliasearch.api.SearchClient
import algoliasearch.extension.SearchClientExtensions

val client = SearchClient(appId = "ALGOLIA_APPLICATION_ID", apiKey = "ALGOLIA_API_KEY")

val response = client.batch(
  indexName = "ALGOLIA_INDEX_NAME",
  batchWriteParams = BatchWriteParams(
    requests = Seq(
      BatchRequest(
        action = Action.withName("addObject"),
        body = JObject(List(JField("key", JString("bar")), JField("foo", JString("1"))))
      ),
      BatchRequest(
        action = Action.withName("addObject"),
        body = JObject(List(JField("key", JString("baz")), JField("foo", JString("2"))))
      )
    )
  )
)
Did you find this page helpful?
Scala API clients v2