You are doing this because base::ValueMap doesn't have a serialization traits right? One trick that is used in other parts of the code is just append the ValueMap to a ListValue before sending and taking it out on the other side.