Thanks Simon. I am also struggling with no luck. I tried using the latest flume elastic search sink jar  build from 1.5SNAPSHOT ,but still no luck. I will try to see if it is an issue with elastic search api . When I loaded json using hive it loaded JSON properly. But we have to pass a property es.input.json in hive.  Is there a way to pass the same in Flume.

CREATE EXTERNAL TABLE json (data STRING)
STORED BY
'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES
('es.resource' = '...',
             
'es.input.json` = 'yes');