NAME

Net::Async::WebSearch::Provider::Marginalia - Marginalia Search API provider

VERSION

version 0.003

SYNOPSIS

my $marginalia = Net::Async::WebSearch::Provider::Marginalia->new;

# or with your own key
my $marginalia = Net::Async::WebSearch::Provider::Marginalia->new(
  api_key => $ENV{MARGINALIA_API_KEY},
);

DESCRIPTION

Provider for https://marginalia-search.com, an independent small-web search index that favours text-heavy, non-commercial pages. Sends a GET to the public JSON API and parses the results array from the response.

API KEY

Marginalia exposes a shared public key ("public") that works without signup, so this provider needs no configuration — it defaults api_key to "public" and fits alongside the other keyless free providers. A private key (requested from the operator) raises the rate limit; pass it as api_key and it is sent unchanged.

api_key

Optional. Sent as the API-Key header. Defaults to the public shared key "public".

endpoint

Override the endpoint URL. Default https://api2.marginalia-search.com/search.

Honours limit (count) and safesearch (mapped to the nsfw filter). Marginalia has no language/region controls, so language/region are silently ignored.

SEE ALSO

https://marginalia-search.com/

SUPPORT

Issues

Please report bugs and feature requests on GitHub at https://github.com/Getty/p5-net-async-websearch/issues.

CONTRIBUTING

Contributions are welcome! Please fork the repository and submit a pull request.

AUTHOR

Torsten Raudssus <torsten@raudssus.de> https://raudss.us/

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.