use JSON::XS; use Data::Dumper; my $json = JSON::XS->new->utf8; my $input = '{"method":"echo","params":[{"Deployment":{"id":"57276a74-8790-48aa-b7d6-42480a6e0303","status":268435970,"comment":"marathon| Creating new application for website 1088 in marathon","website_id":1088,"district":"devel"}}]}'; print Dumper { input => $input, output => $json->decode($input), re_encoded => $json->encode($json->decode($input)) }; $VAR1 = { 'input' => '{"method":"echo","params":[{"Deployment":{"id":"57276a74-8790-48aa-b7d6-42480a6e0303","status":268435970,"comment":"marathon| Creating new application for website 1088 in marathon","website_id":1088,"district":"devel"}}]}', 're_encoded' => '{"params":[{"Deployment":{"status":268435970,"district":"devel","comment":"marathon| Creating new application for website 1088 in marathon","id":"57276a74-8790-48aa-b7d6-42480a6e0303","website_id":1088}}],"method":"echo"}', 'output' => { 'params' => [ { 'Deployment' => { 'id' => '57276a74-8790-48aa-b7d6-42480a6e0303', 'website_id' => 1088, 'comment' => 'marathon| Creating new application for website 1088 in marathon', 'district' => 'devel', 'status' => 268435970 } } ], 'method' => 'echo' } };