I have complex structure of data coming in as bellow:
{
    
    "id": 1,
    "other_details": [{
            
            "address_details": {
                
                "city": "pune",
                "country": "India",
                "state": "Maharashtra"
            }
            ,
            "profession_details": [{
                    
                    "pfid": 1,
                    "post": "Trainee",
                    "start": "2010",
                    "end": "2011"
                }
                , {
                    
                    "pfid": 2,
                    "post": "Software Engineer",
                    "start": "2011",
                    "end": "2014"
                }
                
            ],
            "education": "BE"
        }
        
    ],
    "created": "2010",
    ....(some other fields)
}
```
Here..
I have an use case to update the elements of an array.
Below are the 3 different update events for the same id["id":1]
1) json 1
{
    
    "id": "1",
    "other_details": [{
            
            "address_details": {
                
                "city": "Pune",
                "country": "India",
                "state": "Maharashtra"
            }
            
        }
        
    ],
    "created": "2012"
}
2) json 2
{
    
    "id": "1",
    "other_details": [{
            
            "profession_details": [{
                    
                    "pfid": 1,
                    "post": "Trainee",
                    "start": "2010"
                }
                
            ],
            "education": "BE"
        }
        
    ]
}
3) json 3
{
    
    "id": "1",
    "other_details": [{
            
            "profession_details": [{
                    
                    "pfid": 2,
                    "post": "Software Engineer",
                    "start": "2011",
                    "end": "2014"
                }
                , {
                    
                    "pfid": 1,
                    "end": "2011"
                }
                
            ]
        }
        
    ]
}
The output which we are expecting is as below -
{
    
    "id": "1",
    "other_details": [{
            
            "address_details": {
                
                "city": "Pune",
                "country": "India",
                "state": "Maharashtra"
            }
            ,
            "profession_details": [{
                    
                    "pfid": 1,
                    "post": "Trainee",
                    "start": "2010",
                    "end": "2011"
                }
                , {
                    
                    "pfid": 2,
                    "post": "Software Engineer",
                    "start": "2011",
                    "end": "2014"
                }
                
            ],
            "education": "BE"
        }
        
    ],
    "created": "2012"
}
Basically whenever there is an update in the array elements(professional_details - in this example), that has to be updated in the source document.
Kindly help me out !
            If i understand your question correcttly you want to update array inside the existing document.
There are 2 option:
- you can send entire new json/document (with updated array) to index and it will replace exsiting document.
 - you can use script with upsert to updating document. Please check official document for upsert with script.
 
Below are some other link which will help you to resolved this:
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.