Index documents with out type

Hi,
We have legacy code that utilizes NEST to index documents that are not backed by POCO. It builds JSON and calls lowlevel bulk index api to index the documents.

The reason for this is that we do not know the properties that the user would index these properties are configurable.

Customer 1 - would configure PropA,PropB
Customer 2 - would PropA,PropC

While indexing the objects we would evaluate the configured properties and create JSON for index creation and use the lowlevel api to create the index.

{
  "settings": {
    "analysis": {
      "analyzer": {
        "CustomTokenizer": {
          "filter": [
            "lowercase"
          ],
          "tokenizer": "keyword",
          "type": "custom"
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "Name": {
        "type": "text",
        "analyzer": "CustomTokenizer",
        "fields": {
          "keyword": {
            "type": "keyword",
            "ignore_above": 256
          }
        }
      },
      "Description": {
        "type": "text",
        "analyzer": "CustomTokenizer",
        "fields": {
          "keyword": {
            "type": "keyword",
            "ignore_above": 256
          }
        }
      },
      "CreationUser": {
        "type": "text",
        "analyzer": "CustomTokenizer",
        "fields": {
          "keyword": {
            "type": "keyword",
            "ignore_above": 256
          }
        }
      },
      "CreationDate": {
        "type": "text",
        "analyzer": "CustomTokenizer",
        "fields": {
          "keyword": {
            "type": "keyword",
            "ignore_above": 256
          }
        }
      }	
	}
  }
}

Once the index is created we would build the JSON for the objects and use Lowlevel bulk api to insert those.

{
  "index": {
    "_index": "1_Index1",
    "_id": "018FA5F00C8E4E77B388B9060E10ECDE"
  }
}

{
  "Name": "ZXC",
  "Description": "",
  "CreationUser": "User1",
  "CreationDate": "2024/05/23-14:52:03:587",
}

All this is working fine till date.

since NEST is being depricated and latest client offering is Elasticsearch.NET, we are planning to upgrade.

I noticed that we can make use of Transport.RequestAsync method to index JSON.

Is there a better way to handle our scenario using the new SDK offering?