Envía correos electrónicos con la API de Mail

En esta guía, se describe cómo usar la API de Mail para enviar correos electrónicos.

Antes de comenzar

Registra los correos electrónicos de tus remitentes como remitentes autorizados. Para obtener más información, consulta quién puede enviar correos electrónicos.

Envía correos electrónicos

En PHP 7/8, la función de correo electrónico de App Engine ya no se sobrecarga de forma predeterminada, y se debe habilitar de forma explícita. Este nuevo comportamiento te permite adaptar la función de correo electrónico para que se adapte mejor a tus necesidades. Este cambio también te permite tener visibilidad sobre qué implementación se está usando actualmente para todas las llamadas a funciones de correo electrónico.

Si prefieres usar la función mail() nativa de PHP para enviar correos electrónicos con la API de Mail de App Engine, puedes habilitarla en tu archivo php.ini de la siguiente manera:

extension = mailparse.so
sendmail_path = "php ./vendor/google/appengine-php-sdk/src/Runtime/SendMail.php -t -i"

Otra alternativa es hacer llamadas directas a la API de correo electrónico de la siguiente manera:


// Notice that $image_content_id is the optional Content-ID header value of the
// attachment. Must be enclosed by angle brackets (<>)
$image_content_id = '<image-content-id>';

// Pull in the raw file data of the image file to attach it to the message.
$image_data = file_get_contents('image.jpg');

try {
    $message = new Message();
    $message->setSender('from@example.com');
    $message->addTo('to@example.com');
    $message->setSubject('Example email');
    $message->setTextBody('Hello, world!');
    $message->addAttachment('image.jpg', $image_data, $image_content_id);
    $message->send();
    echo 'Mail Sent';
} catch (InvalidArgumentException $e) {
    echo 'There was an error';


Obtén más información sobre las consideraciones de migración para la API de Mail en la guía Accede a servicios agrupados en paquetes heredados en PHP.