from itertools import chain
dict1 = {"data": [{"text": "text1", "id": "id1"}, {"text": "text2", "id": "id2"}]}
dict2 = {"data": [{"text": "text3", "id": "id3"}, {"text": "text4", "id": "id4"}]}
expected_result = {"data": [{"text": "text1", "id": "id1"}, {"text": "text2", "id": "id2"}, {"text": "text3", "id": "id3"}, {"text": "text4", "id": "id4"}]}
your_dicts = [dict1, dict2] # This may be any iterable with dicts
result = {"data": list(chain.from_iterable(d['data'] for d in your_dicts))}
print(expected_result == result)
ZnJvbSBpdGVydG9vbHMgaW1wb3J0IGNoYWluCgoKZGljdDEgPSB7ImRhdGEiOiBbeyJ0ZXh0IjogInRleHQxIiwgImlkIjogImlkMSJ9LCB7InRleHQiOiAidGV4dDIiLCAiaWQiOiAiaWQyIn1dfQpkaWN0MiA9IHsiZGF0YSI6IFt7InRleHQiOiAidGV4dDMiLCAiaWQiOiAiaWQzIn0sIHsidGV4dCI6ICJ0ZXh0NCIsICJpZCI6ICJpZDQifV19CmV4cGVjdGVkX3Jlc3VsdCA9IHsiZGF0YSI6IFt7InRleHQiOiAidGV4dDEiLCAiaWQiOiAiaWQxIn0sIHsidGV4dCI6ICJ0ZXh0MiIsICJpZCI6ICJpZDIifSwgeyJ0ZXh0IjogInRleHQzIiwgImlkIjogImlkMyJ9LCB7InRleHQiOiAidGV4dDQiLCAiaWQiOiAiaWQ0In1dfQoKeW91cl9kaWN0cyA9IFtkaWN0MSwgZGljdDJdICAjIFRoaXMgbWF5IGJlIGFueSBpdGVyYWJsZSB3aXRoIGRpY3RzCnJlc3VsdCA9IHsiZGF0YSI6IGxpc3QoY2hhaW4uZnJvbV9pdGVyYWJsZShkWydkYXRhJ10gZm9yIGQgaW4geW91cl9kaWN0cykpfQoKcHJpbnQoZXhwZWN0ZWRfcmVzdWx0ID09IHJlc3VsdCkK