2014-02-10 33 views
0

我想使用goggle admin sdk api在gmail帳戶中創建一個標籤。gmail設置api中的域錯誤無效

我發送一個HTTP POST請求

https://apps-apis.google.com/a/feeds/emailsettings/2.0/ {域}/{名} /標籤/

,但我得到這樣的響應: -

Invalid domain. 

Error 403 

以下是此任務的代碼: -

$domain = explode('@',$user->email); 
$headers = array(
    "X-HTTP-Method-Override: POST", 
    "Authorization: {$obj->token_type} "." {$obj->access_token}", 
    "Content-type: application/atom+xml", 
); 

    $options = array(CURLOPT_URL => "https://apps-apis.google.com/a/feeds/emailsettings/2.0/$domain[1]/$domain[0]/label", 
       CURLOPT_HEADER => 1, 
       CURLOPT_RETURNTRANSFER => 1, 
       // CURLOPT_USERAGENT => '', 
       CURLOPT_FOLLOWLOCATION => 1, 
       // CURLOPT_VERBOSE => 1, 
       // CURLOPT_POST => true 
       ); 

    $ch = curl_init(); 
    curl_setopt_array($ch, $options); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
    $result = curl_exec($ch); 
    echo "<pre>";print_r($result);echo"</pre>"; 

回答

0

如果您確實試圖從您的域的管理員帳戶訪問您的gmail.com帳戶中的標籤,它將無法使用。電子郵件設置API僅適用於Premier和Edu Google Apps域管理員。

+0

我的帳戶是企業帳戶。 我想問這個應該是admin帳號還是不是? – Arjun

+0

謝謝, 我能夠在同一個域中的用戶帳戶中創建標籤。 但它不適用於其他域名,如gmail.com。 有沒有什麼辦法在gmail.com或其他域中創建標籤? zendesk.com配置Gmail帳戶,並可以爲任何域創建標籤。我想實現相同的功能。請幫幫我。 – Arjun

+0

所以我不能說zendesk是如何工作的,因爲我沒有任何見解......但這取決於你想如何進行身份驗證。電子郵件設置API允許管理員更改管理員域中用戶的標籤。但是,如果您以用戶身份進行身份驗證/模擬,那麼您可以授予對應用程序的訪問權限,以通過API更改標籤。您可以通過其他Google Apps域的服務帳戶完成此操作。另一種方式是實現3LO並詢問用戶的許可。 – Emily