PLN", "RUB", "SEK", "SGD", "THB", "TRY", "TWD", "ZAR"]],
},
);
sub _get_json {
require HTTP::Tiny;
require JSON::MaybeXS;
my ($url) = @_;
my $res = HTTP::Tiny->new->get($url);
;
eval { $data = JSON::MaybeXS::decode_json($res->{content}) };
return [500, "Can't decode JSON: $@"] if $@;
[$res->{status}, $res->{reason}, $data];
}
sub _get_json_cmc {
my $url =
shift;
my $res = _get_json($url);
{
last unless $res->[0] == 200;
if (ref($res) eq 'HASH' && $res->{error}) {
$res = [500, "Got error response from CMC API: $res->