It has been a while since JSON became the popular format for web service, the beloved cpantester also provide report summary per-distribution like this (taking App-perlbrew for example):

http://www.cpantesters.org/distro/A/App-perlbrew.json

This produced a minified JSON, which is not optimized for reading, the recently released App-jt, it's easy to prettify any JSON:

curl http://www.cpantesters.org/distro/A/App-perlbrew.json | jt

The prettified content looked like this:

[
    {
        "ostext" : "IRIX",
        "status" : "FAIL",
        "osvers" : "6.5",
        "state" : "fail",
        "osname" : "irix",
        "guid" : "851aa3be-af72-11df-aa76-d8fe8adbd73a",
        "id" : "8327044",
        "platform" : "IP35-irix-64int",
        "version" : "0.10",
        "dist" : "App-perlbrew",
        "csspatch" : "unp",
        "distribution" : "App-perlbrew",
        "perl" : "5.8.8",
        "distversion" : "App-perlbrew-0.10",
        "cssperl" : "rel",
        "fulldate" : "201008241127"
    },
    {
        ...
    }
]

Generally I care more about FAIL reports and their details more, filtering can be easily done with --grep option:

... | jt --grep '$_{status} eq "FAIL"

Or to be more specific, only care about specific version

... | jt --grep '$_{status} eq "FAIL" && $_{version} eq "0.59"'

Sometimes tsv/csv is better for doing ad-hoc processing with all those friendly unix commands

... | jt --fields guid,perl,platform,ostext,osvers --tsv

The result is a page of tab-seperated rows

guid    perl    platform    ostext  osvers
1e3119c0-8d97-11e2-97cb-820323e4fb11    5.14.4  x86_64-linux-thread-multi   GNU/Linux   2.6.28-19-generic
e26959dc-8c12-11e2-afb5-3c9c96fda259    5.14.3  darwin-2level   "Mac OS X"  12.2.1
e8d1bd00-8c03-11e2-a637-037c84b8c917    5.17.10 x86_64-linux-thread-multi-ld    GNU/Linux   3.2.0-4-amd64
f781ab1c-8bf4-11e2-8fe2-9c3397fda259    5.12.5  darwin-2level   "Mac OS X"  12.2.1
4187cfa6-8a66-11e2-bad2-eca396fda259    5.14.4  darwin-2level   "Mac OS X"  12.2.1
1a995e90-89a4-11e2-a7ac-bc45f1f528ea    5.12.4  amd64-freebsd   FreeBSD 9.1-release
430501cd-7076-1014-a8b0-11a3b77d427c    5.14.2  MSWin32-x86-multi-thread    "Windows (Win32)"   4.0
d2a8fa68-87f6-11e2-a4ba-7c4497fda259    5.16.2  darwin-2level   "Mac OS X"  12.2.1
13dc3174-88df-11e2-a7ac-bc45f1f528ea    5.12.3  amd64-freebsd-thread-multi  FreeBSD 9.1-release

And can be easily piped to cut -f1 or sort -k2 etc. With parallel, the URLs to each individual report can be easily constructed or just curl-ed:

... | jt --fields guid,perl,platform,ostext,osvers --tsv | cut -f1 | parallel 'echo http://www.cpantesters.org/cpan/report/{}'

jt also supports JSONPath to pick any fields from it's input. It is still rather young but already deal with many major hassles for my daily routine work. Feel free to fork the App-jt project on github and send me a pull request for the features you want!