Sep 20, 2024
Pushes records to be transformed through the Pipeline, directly to an index
Pushes records through the Pipeline, directly to an index. You can make the call synchronous by providing the watch
parameter, for asynchronous calls, you can use the observability endpoints and/or debugger dashboard to see the status of your task.
If you want to leverage the pre-indexing data transformation, this is the recommended way of ingesting your records.
This method is similar to push
, but requires a taskID
instead of a indexName
, which is useful when many destinations
target the same indexName
.
Usage
Required ACL:
addObject, deleteIndex, editSettings
Copy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using Algolia.Search.Clients;
using Algolia.Search.Http;
using Algolia.Search.Models.Ingestion;
var client = new IngestionClient(
new IngestionConfig("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY", "ALGOLIA_APPLICATION_REGION")
);
var response = await client.PushTaskAsync(
"6c02aeb1-775e-418e-870b-1faccd4b2c0f",
new PushTaskPayload
{
Action = Enum.Parse<Action>("AddObject"),
Records = new List<PushTaskRecords>
{
new PushTaskRecords
{
ObjectID = "o",
AdditionalProperties = new Dictionary<string, object>
{
{ "key", "bar" },
{ "foo", "1" },
},
},
new PushTaskRecords
{
ObjectID = "k",
AdditionalProperties = new Dictionary<string, object>
{
{ "key", "baz" },
{ "foo", "2" },
},
},
},
}
);
Did you find this page helpful?