data should be a dict, not a list