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ı projesindeki 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 sayfadaki örnekler, bazı yaygın yürütme işlemlerinin API ile nasıl gerçekleştirilebileceğini gösterir. Özel yetkilendirme koşulları da dahil olmak üzere daha fazla bilgi için İşlev yürütme kılavuzuna bakın.

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

  1. Apps Komut Dosyası 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 Drive folderId ile bir tam sayıyı MAX_SIZE bağımsız değişken olarak iletir. İşlev, geliştirme modunda yürütülür. Bu nedenle, yürütülebilir dosya 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österilmektedir. İşlevleri yürütme kılavuzunda, Google API istemci kitaplıklarını kullanarak farklı dillerde çalıştırma isteğinin 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ütme sonuçlarını veya bir hata yanıtını içerir. Bu örnekte işlev, dosya adlarından oluşan bir diziyi başarıyla döndürür:

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

İşlev, Apps Komut Dosyası yürütme sırasında bir hatayla karşılaşırsa yanıt şu şekilde 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
        }]
      }]
    }
  }
}