Child pages
  • UAPI Functions - Email::add_forwarder

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Description

Excerpt
This function creates an email forwarder.

Multiexcerpt include
SpaceWithExcerptcom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@12665
MultiExcerptNameAPIDisabledReceiveSendMailRoles
PageWithExcerptLIB:_ServerRoleDisabledAPI

Panel
bgColor#F2F2F2
borderStylenone

Examples


Panel
bgColor#FFFFFF
borderStylenone


Expand
titlecPanel or Webmail Session URL


Code Block
languagetext
https://hostname.example.com:2083/cpsess##########/execute/Email/add_forwarder?domain=example.com&email=user%40example.com&fwdopt=fwd&fwdemail=fwdtome%40example.com

Include Page
LIB:_CallUAPIFromBrowserLink
LIB:_CallUAPIFromBrowserLink


Expand
titleLiveAPI PHP Class


Code Block
languagephp
linenumberstrue
$cpanel = new CPANEL(); // Connect to cPanel - only do this once.
 
// Forward user@example.com's mail to fwdtome@example.com
$add_forwarder = $cpanel->uapi(
    'Email', 'add_forwarder',
    array(
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'fwd',
        'fwdemail'   => 'fwdtome@example.com',
         )
);
 
// Pipe user@example.com's mail to script.pl
$add_forwarder = $cpanel->uapi(
    'Email', 'add_forwarder',
    array(
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'pipe',
        'pipefwd'    => 'script.pl',
         )
);

// Forward user@example.com's mail to a system account.
$add_forwarder = $cpanel->uapi(
    'Email', 'add_forwarder',
    array(
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'system',
        'fwdsystem'  => 'user',
         )
);

// Delete user@example.com's mail.
$add_forwarder = $cpanel->uapi(
    'Email', 'add_forwarder',
    array(
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'blackhole',
         )
);
 
// Bounce user@example.com's mail.
$add_forwarder = $cpanel->uapi(
    'Email', 'add_forwarder',
    array(
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'fail',
        'failmsgs'   => 'Nobody home.',
         )
);

Include Page
LIB:_LiveAPIPHPLink
LIB:_LiveAPIPHPLink


Expand
titleLiveAPI Perl Module


Code Block
languageperl
linenumberstrue
my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.
 
# Forward user@example.com's mail to fwdtome@example.com
my $add_forwarder = $cpliveapi->uapi(
    'Email', 'add_forwarder',
    {
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'fwd',
        'fwdemail'   => 'fwdtome@example.com',
    }
);
 
# Pipe user@example.com's mail to script.pl
my $add_forwarder = $cpliveapi->uapi(
    'Email', 'add_forwarder',
    {
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'pipe',
        'pipefwd'    => 'script.pl',
    }
);

# Forward user@example.com's mail to a system account.
my $add_forwarder = $cpliveapi->uapi(
    'Email', 'add_forwarder',
    {
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'system',
        'fwdsystem'  => 'user',
    }
);

# Delete user@example.com's mail.
my $add_forwarder = $cpliveapi->uapi(
    'Email', 'add_forwarder',
    {
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'blackhole',
    }
);

# Bounce user@example.com's mail.
my $add_forwarder = $cpliveapi->uapi(
    'Email', 'add_forwarder',
    {
        'domain'     => 'example.com',
        'email'      => 'user@example.com',
        'fwdopt'     => 'fail',
        'failmsgs'   => 'Nobody home.',
    }
);

Include Page
LIB:_LiveAPIPerlLink
LIB:_LiveAPIPerlLink


Expand
titlecPanel Template Toolkit


Code Block
languagexml
<!-- Forward user@example.com's mail to fwdtome@example.com -->
<!-- Get a hash of all the data, then display the forwarded email. -->
[% data = execute( 'Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'fwd', 'fwdemail' => 'fwdtome@example.com', } ); %]
[% FOREACH q = data.forward %]
     <p>
         [% q %]
     </p>
[% END %]
 
<!-- Get only the forwarded address. -->
[% execute('Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'fwd', 'fwdemail' => 'fwdtome@example.com', }).data.forward %]
 
<!-- Pipe user@example.com's mail to script.pl -->
<!-- Get a hash of all the data, then display the forwarded email. -->
[% data = execute( 'Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'pipe', 'pipefwd' => 'script.pl', } ); %]
[% FOREACH q = data.forward %]
     <p>
         [% q %]
     </p>
[% END %]
 
<!-- Get only the forwarded address. -->
[% execute('Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'pipe', 'pipefwd' => 'script.pl', }).data.forward %]

<!-- Forward user@example.com's mail to a system account. -->
<!-- Get a hash of all the data, then display the forwarded email. -->
[% data = execute( 'Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'system', 'fwdsystem' => 'user', } ); %]
[% FOREACH q = data.forward %]
     <p>
         [% q %]
     </p>
[% END %]
 
<!-- Get only the forwarded address. -->
[% execute('Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'system', 'fwdsystem' => 'user', }).data.forward %]

<!-- Delete user@example.com's mail. -->
<!-- Get a hash of all the data, then display the forwarded email. -->
[% data = execute( 'Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'blackhole' } ); %]
[% FOREACH q = data.forward %]
     <p>
         [% q %]
     </p>
[% END %]
 
<!-- Get only the forwarded address. -->
[% execute('Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'blackhole' }).data.forward %]

<!-- Bounce user@example.com's mail. -->
<!-- Get a hash of all the data, then display the forwarded email. -->
[% data = execute( 'Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'fail', 'failmsgs' => 'Nobody home.' } ); %]
[% FOREACH q = data.forward %]
     <p>
         [% q %]
     </p>
[% END %]
 
<!-- Get only the forwarded address. -->
[% execute('Email', 'add_forwarder', { 'domain' => 'example.com', 'email' => 'user@example.com', 'fwdopt' => 'fail', 'failmsgs' => 'Nobody home.' }).data.forward %]

Include Page
LIB:_TTLink
LIB:_TTLink


Expand
titleCommand Line


Code Block
languagebash
uapi --user=username Email add_forwarder domain=example.com email=user%40example.com fwdopt=fwd fwdemail=fwdtome%40example.com

Include Page
LIB:_UAPICLINote
LIB:_UAPICLINote


Expand
titleOutput (JSON)


Code Block
languagetext
linenumberstrue
{
  "messages": null,
  "errors": null,
  "status": 1,
  "data": [
    {
      "email": "user@example.com",
      "domain": "example.com",
      "forward": "fwdtome@example.com"
    }
  ],
  "metadata": {
    "transformed": 1
  }
}


Include Page
LIB:_cPanelAPIShellNote
LIB:_cPanelAPIShellNote


Parameters

ParameterTypeDescriptionPossible valuesExample
domainstring

Required

The domain.

A valid domain on the account.

example.com
emailstring

Required

The email address to forward.

An email address on the account.

forwardme@example.com
fwdoptstring

Required

The method to use to handle the email address's mail.

  • fwd — Forward messages to the address in the fwdemail parameter.
  • fail — Bounce messages back to the sender. This parameter also uses the failure message defined in the failmsgs parameter.
  • blackhole — Send messages to the /dev/null/ directory. This method does not generate a failure notice.
  • pipe — Pipe mail to the application defined by the pipefwd parameter.
  • system — Forward messages to the fwdsystem system account.
fwd
fwdemailstring

The email address to which the system forwards messages.

Note
titleNote:
  • You must use this parameter if you used the fwd method for the fwdopt parameter.
  • You can pass multiple addresses to this parameter as a comma-separated list. 


A valid email address.

fwdtome@example.com
fwdsystemstring

The system user to whom the system forwards messages.

Note
titleNote:

You must use this parameter if you used the system method for the fwdopt parameter. 


An account on the system. For example, a reseller or cPanel account's name.user
failmsgsstring

The failure message for the message's sender.

Note
titleNote:

Use this parameter if you used the fail method for the fwdopt parameter. 

This parameter defaults to No such person at this address.

A valid string.Nobody home.
pipefwdstring

The application to which the system pipes messages.

Note
titleNote:

You must use this parameter if you used the pipe method for the fwdopt parameter. 


The location of a program or script, relative to the account's home directory.mailscript.pl

Returns

ReturnTypeDescriptionPossible valuesExample
domainstring

The domain.

A valid domain on the account.

example.com
emailstringThe email address.An email address on the account.user@example.com
forwardstringThe method that the system will use to handle the address's mail.
  • An email address — The system forwards mail to this address.
  • :fail: — The system bounces mail back to the sender and sends a failure message.
  • :blackhole: — The system deletes mail without a failure message.
  • The path to an application — The system pipes mail to this application.
  • A username — The system forwards mail to this system account.
fwdtome@example.com