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 işleve giriş parametreleri sağlayabilir ve döndürülen yanıtı alabilir.

Bu sayfadaki örneklerde, API ile bazı yaygın yürütme işlemlerinin nasıl yapılabileceği gösterilmektedir. Daha fazla bilgi için özel yetkilendirme koşullarını, İşlev yürütme kılavuzuna bakın.

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

  1. Apps Script projesinde, sol üstte Proje Ayarları'nı tıklayın.
  2. "Komut dosyası kimliği"nin yanında 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ğırarak bu işlevi iletir. Drive folderId ve tam sayısı MAX_SIZE. İlgili içeriği oluşturmak için kullanılan işlevi, geliştirme modunda yürütülür. Yani, işlevin "kaydet" sürümü, hangi sürümün yüklü olduğundan bağımsız olarak yürütülür dağıtılabilir.

İstek protokolü aşağıda gösterilmiştir. İlgili içeriği oluşturmak için kullanılan İşlevleri yürütme kılavuzu Google Analytics 4'ü kullanarak bir çalıştırma isteğinin farklı dillerde nasıl API istemci kitaplıkları.

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. İçinde aşağıdaki örnekte, işlev bir dosya adları dizisini başarıyla 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 şöyle 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
        }]
      }]
    }
  }
}