RT::Extension::ViaLink::UpdateTicket - update tickets without
    credentials using a link

    This extension allow you to generate a link with arguments that can be
    used to update a ticket without credentials. For example:

    This link set status of ticket #1 to resolved using user #12's identity
    (usually 'root'). Any person can use this link, but link can do only
    what's encoded in its content. Any changes in this link will prohibited
    and ignored.

    To generate a link use "Generate" method described below.

    This extension works with RT 3.8.1 or newer, to install it use the
    following commands:

        perl Makefile.PL
        make install

    In the update @Plugins option:

        Set( @Plugins, qw(RT::Extension::ViaLink::UpdateTicket ...other extensions...) );

    To generate a link use the following code or similar:

        my $link = RT::Extension::ViaLink::UpdateTicket->Generate(
            $session{'CurrentUser'}, id => $TicketObj->id, Status => 'resolved',

    First argument is RT::User object everything else are names arguments.
    id of a ticket you want to update is mandatory, everything else is
    optional. Arguments and names are the same as in /Ticket/Display.html
    and handled by Process* methods in RT::Interface::Web. Simple operations
    are simple, you can cahnge Status, Queue, Owner, dates and other fields,
    but you can change CFs, links and watchers as well.

    User object you provide should be loaded and exist in the DB, all
    actions stored in the link will be done using odentity of this user.

    Ruslan Zakirov <>

    Under the same terms as perl itself.