Apps Komut Dosyası İşlevlerini Yürütme

Apps Komut Dosyası API'si (eski adıyla Apps Komut Dosyası Yürütme API'si), erişiminiz olan bir komut dosyası projesinde bir işlevi uzaktan yürütmenize olanak tanır. Uygulamanız, belirli bir Apps Komut Dosyası işlevini çağırabilir, gerekirse giriş parametreleri sağlayabilir ve döndürülen yanıtı alabilir.

Bu sayfada, API ile bazı yaygın yürütme işlemlerinin nasıl yapılabileceği gösterilmektedir. Özel yetkilendirme koşulları da dahil olmak üzere daha fazla bilgi için İşlev yürütme kılavuzunu inceleyin.

Bu örneklerde, komut dosyası proje kimliğini nerede sağlayacağınızı belirtmek için scriptId yer tutucuları kullanılır. Komut dosyası kimliğini bulmak için aşağıdaki adımları uygulayın:

  1. Apps Script projesinde, sol üstte Proje Ayarları'nı tıklayın.
  2. "Komut dosyası kimliği"nin yanındaki Kopyala'yı tıklayın.

İşlev yürütün

Aşağıdaki scripts.run isteği, listFolderContent adlı bir Apps Komut Dosyası işlevini çağırır ve işleve Drive folderId ile bir tam sayı MAX_SIZE bağımsız değişkeni gönderir. İşlev, geliştirme modunda yürütülür. Yani, yürütülebilir olarak hangi sürümün dağıtıldığına bakılmaksızın işlevin en son kaydedilen sürümü yürütülür.

İstek protokolü aşağıda gösterilmiştir. İşlevleri yürütme kılavuzunda, Google API istemci kitaplıkları kullanılarak çalıştırma isteğinin farklı dillerde nasıl uygulanacağı gösterilmektedir.

POST https://script.googleapis.com/v1/scripts/scriptId:run
{
  "function": "listFolderContent",
  "parameters": [
    folderId,
    MAX_SIZE
  ],
  "devMode": true
}

Çağrılan Apps Komut Dosyası işlevi tamamlandıktan sonra bu isteğe verilen yanıt, yürütmenin sonuçlarını veya bir hata yanıtını içerir. Bu örnekte işlev, bir dosya adı dizisi döndürür:

{
  "response": {
    "result": [
      "fileTitle1",
      "fileTitle2",
      "fileTitle3"
    ]
  },
}

İşlev, Apps Komut Dosyası yürütülürken bir hatayla karşılaşırsa yanıt aşağıdaki gibi görünebilir:

{
  "response": {
    "error": {
      "code": 3,
      "message": "ScriptError",
      "details": [{
        "@type": "type.googleapis.com/google.apps.script.v1.ExecutionError",
        "errorMessage": "The script enountered an exeception it could not resolve.",
        "errorType": "ScriptError",
        "scriptStackTraceElements": [{
          "function": "listFolderContent",
          "lineNumber": 14
        }]
      }]
    }
  }
}