NAME
WWW::ARDB - Perl client for the ARC Raiders Database API (ardb.app)
VERSION
version 0.001
SYNOPSIS
use WWW::ARDB;
my $api = WWW::ARDB->new;
# Get all items
my $items = $api->items;
for my $item (@$items) {
printf "%s (%s) - %s\n", $item->name, $item->rarity // 'n/a', $item->type;
}
# Get specific item with full details
my $item = $api->item('acoustic_guitar');
print $item->description;
# Get all quests
my $quests = $api->quests;
# Get specific quest
my $quest = $api->quest('picking_up_the_pieces');
print $quest->title;
# Get all ARC enemies
my $enemies = $api->arc_enemies;
# Get specific enemy with drop table
my $enemy = $api->arc_enemy('wasp');
print $enemy->name;
DESCRIPTION
WWW::ARDB provides a Perl interface to the ARC Raiders Database API at https://ardb.app.
The API provides information about items, quests, and ARC enemies from the ARC Raiders game.
Note: Per the API documentation, you should store response data using your own storage solution and refresh it periodically. This module provides caching to help with that.
NAME
WWW::ARDB - Perl client for the ARC Raiders Database API (ardb.app)
ATTRIBUTES
ua
The LWP::UserAgent instance used for HTTP requests.
use_cache
Boolean, default true. Whether to cache API responses.
cache_dir
Optional custom directory for cache files.
debug
Boolean, default false. Enable debug output. Can also be set via $ENV{WWW_ARDB_DEBUG}.
METHODS
items
my $items = $api->items;
Returns an ArrayRef of WWW::ARDB::Result::Item objects.
item($id)
my $item = $api->item('acoustic_guitar');
Returns a single WWW::ARDB::Result::Item with complete data.
quests
my $quests = $api->quests;
Returns an ArrayRef of WWW::ARDB::Result::Quest objects.
quest($id)
my $quest = $api->quest('picking_up_the_pieces');
Returns a single WWW::ARDB::Result::Quest with complete data.
arc_enemies
my $enemies = $api->arc_enemies;
Returns an ArrayRef of WWW::ARDB::Result::ArcEnemy objects.
arc_enemy($id)
my $enemy = $api->arc_enemy('wasp');
Returns a single WWW::ARDB::Result::ArcEnemy with complete data including drop table.
find_item_by_name($name)
my $item = $api->find_item_by_name('Acoustic Guitar');
Case-insensitive search for an item by name.
find_quest_by_title($title)
my $quest = $api->find_quest_by_title('Picking Up The Pieces');
Case-insensitive search for a quest by title.
find_arc_enemy_by_name($name)
my $enemy = $api->find_arc_enemy_by_name('Wasp');
Case-insensitive search for an ARC enemy by name.
clear_cache($endpoint)
$api->clear_cache('items');
$api->clear_cache; # clear all
Clear cached responses.
RAW METHODS
Each endpoint also has a *_raw variant that returns the raw API response as a Perl data structure:
my $data = $api->items_raw;
my $data = $api->item_raw('acoustic_guitar');
my $data = $api->quests_raw;
my $data = $api->quest_raw('picking_up_the_pieces');
my $data = $api->arc_enemies_raw;
my $data = $api->arc_enemy_raw('wasp');
ATTRIBUTION
Applications using data from ardb.app must include attribution as per the API documentation. Please include a disclaimer crediting ardb.app with a link back to the source.
SEE ALSO
https://ardb.app, https://ardb.app/developers/api
SUPPORT
Source Code
The code is open to the world, and available for you to hack on. Please feel free to browse it and play with it, or whatever. If you want to contribute patches, please send me a diff or prod me to pull from your repository :)
https://github.com/Getty/p5-www-ardb
git clone https://github.com/Getty/p5-www-ardb.git
AUTHOR
Torsten Raudssus <torsten@raudssus.de>
COPYRIGHT AND LICENSE
This software is copyright (c) 2026 by Torsten Raudssus.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.