WWW::Shorten - Interface to URL shortening sites.


  #!/usr/bin/env perl
  use strict;
  use warnings;

  use WWW::Shorten 'TinyURL'; # Recommended
  # use WWW::Shorten 'Linkz'; # or one of the others
  # use WWW::Shorten 'Shorl';

  # Individual modules have have their own syntactic variations.
  # See the documentation for the particular module you intend to use for details

  my $url = '';
  my $short_url = makeashorterlink($url);
  my $long_url  = makealongerlink($short_url);

  # - OR -
  # If you don't like the long function names:

  use WWW::Shorten 'TinyURL', ':short';
  my $short_url = short_link($url);
  my $long_url = long_link( $short_url );


A Perl interface to various services that shorten URLs. These sites maintain databases of long URLs, each of which has a unique identifier.


The following shorten services have been deprecated as the endpoints no longer exist or function:

When version 3.100 is released, these deprecated services will not be part of the distribution.


A very simple program called shorten is supplied in the distribution's bin folder. This program takes a URL and gives you a shortened version of it.


Please submit any issues you might have. We appreciate all help, suggestions, noted problems, and especially patches.

Note that support for extra shortening services should be released as separate modules, like WWW::Shorten::Googl or WWW::Shorten::Bitly.

Support for this module is supplied primarily via the using the GitHub Issues but we also happily respond to issues submitted to the CPAN RT system via the web or email:

* * * ( shorter URL: ) *


Iain Truskett


  • Alex Page -- for the original LWP hacking on which Dave based his code.

  • Ask Bjoern Hansen -- providing WWW::Shorten::Metamark

  • Chase Whitener

  • Dave Cross -- Authored WWW::MakeAShorterLink on which this was based

  • Eric Hammond -- writing WWW::Shorten::NotLong

  • Jon and William (wjr) -- smlnk services

  • Kazuhiro Osawa

  • Kevin Gilbertson (Gilby) -- TinyURL API information

  • Martin Thurn -- bug fixes

  • Matt Felsen (mattf) -- shorter function names

  • Neil Bowers

  • PJ Goodwin -- code for WWW::Shorten::OneShortLink

  • Shashank Tripathi -- for providing WWW::Shorten::SnipURL

  • Simon Batistoni -- giving the `makealongerlink` idea to Dave.

  • Everyone else we might have missed.

In 2004 Dave Cross took over the maintenance of this distribution following the death of Iain Truskett.

In 2016, Chase Whitener took over the maintenance of this distribution.


Copyright (c) 2002 by Iain Truskett.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.


CGI::Shorten, WWW::Shorten::Simple