use Data::Dumper; use JSON; use URI::Escape; use HTTP::Request::Common; use HTTP::Response; use LWP::UserAgent; my $rest_url = "some url"; my $inData = { "name" => "test", "id" => "test", "test" => [1,2,3,4] }; my $json = JSON->new->utf8->allow_nonref; my $jsonData = $json->encode($inData); my $apiCmd = "/projectname/restfulapi?inputdata=$jsonData"; my $iua = LWP::UserAgent->new; #my $response = $iua->request(GET $rest_url.$apiCmd); my $response = $iua->request(POST $rest_url.$apiCmd); if ($response->is_success) { #print Dumper($response->content()); my $perlData = $json->decode($response->content()); print Dumper($perlData); } else{ print " inside falied block\n"; }