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

Apps Komut Dosyası API'si (ve 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, gerektiğinde giriş parametreleri sağlayarak belirli bir Apps Komut Dosyası işlevini çağırabilir ve döndürülen bir yanıt alabilir.

Bu sayfadaki örnekler, bazı yaygın yürütme işlemlerinin API ile nasıl yapılabileceğini göstermektedir. Özel yetkilendirme şartları dahil olmak üzere daha fazla bilgi için İş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ılmıştır. Komut dosyası kimliğini bulmak için aşağıdaki adımları uygulayın:

  1. Apps Komut Dosyası projesinde, sol üstteki 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ğırarak Drive folderId ve bağımsız değişken olarak MAX_SIZE tamsayısını iletir. İşlev, geliştirme modunda yürütülür. Diğer bir deyişle, yürütülebilir olarak dağıtılan sürümden bağımsız olarak, işlevin en son kaydedilen sürümü yürütülür.

İstek protokolü aşağıda gösterilmektedir. Yürütme işlevleri kılavuzu, Google API istemci kitaplıkları kullanılarak farklı dillerde bir çalıştırma isteğinin nasıl uygulanacağını gösterir.

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

Bu isteğin yanıtı, çağrılan Apps Komut Dosyası işlevi tamamlandıktan sonra yürütme işleminin sonuçlarını veya bir hata yanıtı içerir. Bu örnekte, işlev bir dosya adları dizisini başarıyla döndürür:

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

İşlev, Apps Komut Dosyası'nı yürütürken bir hatayla karşılaştıysa 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
        }]
      }]
    }
  }
}