有没有办法通过脚本在 Google Developers Console 中启用高级 google 服务?

Is there a way to enable advanced google services in the Google Developers Console by script?

再来一次!
我创建了一个使用 UrlShortener.Url.insert 功能的嵌入式电子表格脚本。我的客户希望能够制作此电子表格的新实例以与同事共享。我已经实现了这个功能,但是当我开始测试新实例时,我发现我必须在我的 Google 开发者控制台中启用 URL Shortener API。
我想知道我是否可以使用我的脚本绕过此手动工作,或者我只能向客户提供如何操作的说明?

更新: Sandy Good 建议使用 UrlFetch.fetch() 来得到短 link,但是这段代码:

function test_short_link() {
  var options =
     {
       'longUrl': 'http://www.google.com/',
       'muteHttpExceptions': true
     };

   var result = UrlFetchApp.fetch("https://www.googleapis.com/urlshortener/v1/url",
       options);
   Logger.log(result);
}

returns这个:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "required",
    "message": "Required parameter: shortUrl",
    "locationType": "parameter",
    "location": "shortUrl"
   }
  ],
  "code": 400,
  "message": "Required parameter: shortUrl"
 }
}

看起来像这样topic

还有这段代码

function test_short_link() {
  var options =
     {
       'longUrl': 'http://www.google.com/',
       'muteHttpExceptions': true,
       'method':'post'

     };
   var result = UrlFetchApp.fetch("https://www.googleapis.com/urlshortener/v1/url",
       options);
   Logger.log(result);
}

给我们带来:

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "userRateLimitExceededUnreg",
    "message": "User Rate Limit Exceeded. Please sign up",
    "extendedHelp": "https://code.google.com/apis/console"
   }
  ],
  "code": 403,
  "message": "User Rate Limit Exceeded. Please sign up"
 }
}

编辑:不,除了网站本身之外,无法通过任何方法访问 Google 开发控制台。

这是 UrlFetchApp 执行此操作的方法。您需要在 payload 参数中传递选项,而不是在 UrlFetchApp 选项中传递 object。您还需要在 header 中传递当前用户的 OAuth 令牌。当然,您需要修改此代码,因为它对 longUrl 进行硬编码并且不进行错误检查。

function ShortenUrl(){
var url = "https://www.googleapis.com/urlshortener/v1/url"

var payload = {"longUrl":"www.google.com"};

var parameters = { method : 'post',
                    headers : {'Authorization': 'Bearer '+ScriptApp.getOAuthToken()},
                    payload:JSON.stringify(payload),
                    contentType:'application/json',                    
                    muteHttpExceptions:true};

  var response = UrlFetchApp.fetch(url, parameters);
  Logger.log(response);

}

这个完全可以做到。试试这个代码:

function ShortenUrl(){
var url = 'https://www.googleapis.com/urlshortener/v1/url';
var apiKey = 'AIzBlNS-3HZdxKgwj-x30';
url += '?key=' + apiKey;
var payload = {"longUrl":"www.google.com"};

var parameters = { method : 'post',
                payload:JSON.stringify(payload),
                contentType:'application/json',                    
                muteHttpExceptions:true};

var response = UrlFetchApp.fetch(url, parameters);
Logger.log(response);
}