У меня было требование отправить нарисованное письмо (Gmail) в запланированное время. Я пробовал под кодом.Gmail API PHP Client Library или api - Как отправить черновик gmail?
$access_token = 'ya29.DxswidlwadllsidVeg5B67CdpLN6QR0d1nCuQmg9GaMT9iq8-zIA8O29yR9rEMM';
//the access token is subject to change every hour
$header = array('Content-Type: message/rfc822', "Authorization: Bearer $access_token");
$to = '125699645855239833'; // this is a draft id.
$line = "\r\n";
$raw='';
$url = 'https://www.googleapis.com/upload/gmail/v1/users/me/drafts?fields=id&key=XsqwwosqldwwdssaOLwotWD6seRloXZM';
$raw .= "id: $to ".$line.$line;
$method_type = 1; // set as post method
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_HEADER, 0);
if($header !== 0){
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
}
if($method_type == 1 or $method_type == 0){
curl_setopt($curl, CURLOPT_POST, $method_type);
}else{
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "DELETE");
}
if($data !== 0){
curl_setopt($curl, CURLOPT_POSTFIELDS, $raw);
}
$response = curl_exec($curl);
$json = json_decode($response, true);
print_r($json);
curl_close($curl);
я получил результат после завитка размещения, как показано ниже
Array ([ID] => г-5083530165761240787), но проект (E-mail) не был установлен.
Это работает для меня. :) –