use warnings; use strict; use JSON; my $json; { local $/; $json = ; } my $data = decode_json $json; for my $entry (@$data){ delete $entry->{absoluteLimits}; } $json = encode_json $data; print $json; __DATA__ [{"absoluteLimits":{"conditionalLimits":{"bidirVolume":4096000,"name":"Home"},"resetPeriod":{"volume":"monthly day 15 00:??"}},"sliceVolume":5120,"subscriptionDate":"29-09-2016"},{"absoluteLimits":{"conditionalLimits":{"bidirVolume":102400000,"name":"Home"},"resetPeriod":{"volume":"2400 hours"}},"description":"Promotion_tariffbasic:29-09-2016,08-01-2017T10:21","name":"1004","sliceVolume":5120,"subscriptionDate":"30-09-2016T09:21"}]