Skip to main content
Required ACL: addObject, deleteIndex, editSettings 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 pushTask, but requires an indexName instead of a taskID. If zero or many tasks are found, an error will be returned.

Usage

// Initialize the client
var client = new IngestionClient(
  new IngestionConfig("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY", "ALGOLIA_APPLICATION_REGION")
);

// Call the API
var response = await client.PushAsync(
  "<YOUR_INDEX_NAME>",
  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" },
        },
      },
    },
  }
);
// >LOG

See the full API reference

For more details about input parameters and response fields.
I