{ "head": {}, "def": [ { "text": "time", "pos": "noun", "ts": "taɪm", "tr": [ { "text": "tempo", "pos": "noun", "gen": "m", "syn": [ { "text": "volta", "pos": "noun", "gen": "f" }, { "text": "momento", "pos": "noun", "gen": "m" }, { "text": "Time", "pos": "noun", "gen": "m" } ], "mean": [ { "text": "day" }, { "text": "moment" } ] } ] } ] } #### my $req = HTTP::Request->new(GET => $uri); my $res = $ua->request($req); if ($res->is_success) { my $json_text= $res->content; my $decoded_json = decode_json( $json_text ); my $result = $decoded_json->{'def'}{'tr'}{'text'};#Here I was supposing to get the first "text" value = tempo }